diff --git a/src/main/java/com/amihaiemil/eoyaml/MutableYamlMappingBuilder.java b/src/main/java/com/amihaiemil/eoyaml/MutableYamlMappingBuilder.java index a0e071c2..b4f9d11a 100644 --- a/src/main/java/com/amihaiemil/eoyaml/MutableYamlMappingBuilder.java +++ b/src/main/java/com/amihaiemil/eoyaml/MutableYamlMappingBuilder.java @@ -58,24 +58,6 @@ final class MutableYamlMappingBuilder implements YamlMappingBuilder { this.pairs = pairs; } - @Override - public YamlMappingBuilder add(final String key, final String value) { - return this.add( - new PlainStringScalar(key), - new PlainStringScalar(value) - ); - } - - @Override - public YamlMappingBuilder add(final YamlNode key, final String value) { - return this.add(key, new PlainStringScalar(value)); - } - - @Override - public YamlMappingBuilder add(final String key, final YamlNode value) { - return this.add(new PlainStringScalar(key), value); - } - @Override public YamlMappingBuilder add(final YamlNode key, final YamlNode value) { if(key == null || key.isEmpty()) { diff --git a/src/main/java/com/amihaiemil/eoyaml/RtYamlMappingBuilder.java b/src/main/java/com/amihaiemil/eoyaml/RtYamlMappingBuilder.java index 9b548116..48a45fff 100644 --- a/src/main/java/com/amihaiemil/eoyaml/RtYamlMappingBuilder.java +++ b/src/main/java/com/amihaiemil/eoyaml/RtYamlMappingBuilder.java @@ -60,24 +60,6 @@ final class RtYamlMappingBuilder implements YamlMappingBuilder { this.pairs = pairs; } - @Override - public YamlMappingBuilder add(final String key, final String value) { - return this.add( - new PlainStringScalar(key), - new PlainStringScalar(value) - ); - } - - @Override - public YamlMappingBuilder add(final YamlNode key, final String value) { - return this.add(key, new PlainStringScalar(value)); - } - - @Override - public YamlMappingBuilder add(final String key, final YamlNode value) { - return this.add(new PlainStringScalar(key), value); - } - @Override public YamlMappingBuilder add(final YamlNode key, final YamlNode value) { if(key == null || key.isEmpty()) { diff --git a/src/main/java/com/amihaiemil/eoyaml/YamlMappingBuilder.java b/src/main/java/com/amihaiemil/eoyaml/YamlMappingBuilder.java index 6c166782..88992d1e 100644 --- a/src/main/java/com/amihaiemil/eoyaml/YamlMappingBuilder.java +++ b/src/main/java/com/amihaiemil/eoyaml/YamlMappingBuilder.java @@ -39,29 +39,27 @@ * @since 1.0.0 */ public interface YamlMappingBuilder { - /** - * Add a pair to the mapping. - * @param key String - * @param value String - * @return Builder - */ - YamlMappingBuilder add(final String key, final String value); /** * Add a pair to the mapping. * @param key YamlNode (sequence or mapping) - * @param value String + * @param value YamlNode (sequence or mapping) * @return Builder */ - YamlMappingBuilder add(final YamlNode key, final String value); + YamlMappingBuilder add(final YamlNode key, final YamlNode value); /** * Add a pair to the mapping. - * @param key YamlNode (sequence or mapping) - * @param value YamlNode (sequence or mapping) + * @param key String + * @param value String * @return Builder */ - YamlMappingBuilder add(final YamlNode key, final YamlNode value); + default YamlMappingBuilder add(final String key, final String value) { + return this.add( + new PlainStringScalar(key), + new PlainStringScalar(value) + ); + } /** * Add a pair to the mapping. @@ -69,17 +67,19 @@ public interface YamlMappingBuilder { * @param value YamlNode (sequence or mapping) * @return Builder */ - YamlMappingBuilder add(final String key, final YamlNode value); + default YamlMappingBuilder add(final String key, final YamlNode value) { + return this.add(new PlainStringScalar(key), value); + } /** * Add a pair to the mapping. - * @param key YamlNode (sequence or mapping) + * @param key String * @param value JsonStructure ({@link javax.json.JsonObject} * or {@link javax.json.JsonArray}) * @return Builder */ default YamlMappingBuilder add( - final YamlNode key, final JsonStructure value + final String key, final JsonStructure value ) { final YamlNode node; if(value instanceof JsonObject) { @@ -92,13 +92,23 @@ default YamlMappingBuilder add( /** * Add a pair to the mapping. - * @param key String + * @param key YamlNode (sequence or mapping) + * @param value String + * @return Builder + */ + default YamlMappingBuilder add(final YamlNode key, final String value) { + return this.add(key, new PlainStringScalar(value)); + } + + /** + * Add a pair to the mapping. + * @param key YamlNode (sequence or mapping) * @param value JsonStructure ({@link javax.json.JsonObject} * or {@link javax.json.JsonArray}) * @return Builder */ default YamlMappingBuilder add( - final String key, final JsonStructure value + final YamlNode key, final JsonStructure value ) { final YamlNode node; if(value instanceof JsonObject) {