package com.github.nsnjson.encoding;

import com.fasterxml.jackson.databind.JsonNode;

import java.util.Optional;

public class Encoder {

    private static final Encoding DEFAULT_ENCODING = new DefaultEncoding();

    public static Optional<JsonNode> encode(JsonNode json) {
        return DEFAULT_ENCODING.encode(json);
    }

    public static Optional<JsonNode> encode(JsonNode json, Encoding encoding) {
        return Optional.ofNullable(encoding).orElse(DEFAULT_ENCODING).encode(json);
    }

}
@@ -209,16 +209,154 @@
 ing();%0A%0A
+    /**%0A     * Encodes JSON to NSNJSON presentation.%0A     * @param data any JSON data%0A     * @return NSNJSON presentation of JSON%0A     */%0A
     publ
@@ -400,20 +400,20 @@
 sonNode 
-json
+data
 ) %7B%0A    
@@ -447,29 +447,186 @@
 .encode(
-json);%0A    %7D%0A
+data);%0A    %7D%0A%0A    /**%0A     * Encodes JSON to NSNJSON presentation by custom encoding.%0A     * @param data any JSON data%0A     * @return NSNJSON presentation of JSON%0A     */
 %0A    pub
@@ -671,20 +671,20 @@
 sonNode 
-json
+data
 , Encodi
@@ -775,20 +775,20 @@
 .encode(
-json
+data
 );%0A    %7D

Add documentation to { Encoder }