diff --git a/src/main/java/com/fasterxml/jackson/core/JsonGenerator.java b/src/main/java/com/fasterxml/jackson/core/JsonGenerator.java
index f916586601..2d520a3c5b 100644
--- a/src/main/java/com/fasterxml/jackson/core/JsonGenerator.java
+++ b/src/main/java/com/fasterxml/jackson/core/JsonGenerator.java
@@ -375,7 +375,25 @@ public Object getOutputTarget() {
*
* @since 2.13 (added as replacement for older {@link #getCurrentValue()}
*/
- public abstract Object currentValue();
+ public Object currentValue() {
+ // TODO: implement directly in 2.14 or later, make getCurrentValue() call this
+ return getCurrentValue();
+ }
+
+ /**
+ * Helper method, usually equivalent to:
+ *
+ * getOutputContext().setCurrentValue(v);
+ *
+ *
+ * @param v Current value to assign for the current context of this generator
+ *
+ * @since 2.13 (added as replacement for older {@link #setCurrentValue}
+ */
+ public void assignCurrentValue(Object v) {
+ // TODO: implement directly in 2.14 or later, make setCurrentValue() call this
+ setCurrentValue(v);
+ }
// TODO: deprecate in 2.14 or later
/**
@@ -389,15 +407,12 @@ public Object getCurrentValue() {
return (ctxt == null) ? null : ctxt.getCurrentValue();
}
+ // TODO: deprecate in 2.14 or later
/**
- * Helper method, usually equivalent to:
- *
- * getOutputContext().setCurrentValue(v);
- *
+ * Alias for {@link #assignCurrentValue}, to be deprecated in later
+ * Jackson 2.x versions (and removed from Jackson 3.0).
*
* @param v Current value to assign for the current context of this generator
- *
- * @since 2.5
*/
public void setCurrentValue(Object v) {
JsonStreamContext ctxt = getOutputContext();
diff --git a/src/main/java/com/fasterxml/jackson/core/JsonParser.java b/src/main/java/com/fasterxml/jackson/core/JsonParser.java
index 66bec6ede5..b7315178c5 100644
--- a/src/main/java/com/fasterxml/jackson/core/JsonParser.java
+++ b/src/main/java/com/fasterxml/jackson/core/JsonParser.java
@@ -718,9 +718,25 @@ public JsonLocation currentTokenLocation() {
* @since 2.13 (added as replacement for older {@link #getCurrentValue()}
*/
public Object currentValue() {
+ // TODO: implement directly in 2.14 or later, make getCurrentValue() call this
return getCurrentValue();
}
+ /**
+ * Helper method, usually equivalent to:
+ *
+ * getParsingContext().setCurrentValue(v);
+ *
+ *
+ * @param v Current value to assign for the current input context of this parser
+ *
+ * @since 2.13 (added as replacement for older {@link #setCurrentValue}
+ */
+ public void assignCurrentValue(Object v) {
+ // TODO: implement directly in 2.14 or later, make setCurrentValue() call this
+ setCurrentValue(v);
+ }
+
// TODO: deprecate in 2.14 or later
/**
* Alias for {@link #currentValue()}, to be deprecated in later
@@ -733,15 +749,12 @@ public Object getCurrentValue() {
return (ctxt == null) ? null : ctxt.getCurrentValue();
}
+ // TODO: deprecate in 2.14 or later
/**
- * Helper method, usually equivalent to:
- *
- * getParsingContext().setCurrentValue(v);
- *
+ * Alias for {@link #assignCurrentValue}, to be deprecated in later
+ * Jackson 2.x versions (and removed from Jackson 3.0).
*
* @param v Current value to assign for the current input context of this parser
- *
- * @since 2.5
*/
public void setCurrentValue(Object v) {
JsonStreamContext ctxt = getParsingContext();
diff --git a/src/main/java/com/fasterxml/jackson/core/util/JsonGeneratorDelegate.java b/src/main/java/com/fasterxml/jackson/core/util/JsonGeneratorDelegate.java
index 269a936995..8fb3abb4d0 100644
--- a/src/main/java/com/fasterxml/jackson/core/util/JsonGeneratorDelegate.java
+++ b/src/main/java/com/fasterxml/jackson/core/util/JsonGeneratorDelegate.java
@@ -63,14 +63,14 @@ public JsonGeneratorDelegate(JsonGenerator d, boolean delegateCopyMethods) {
@Override public Object getOutputTarget() { return delegate.getOutputTarget(); }
@Override public int getOutputBuffered() { return delegate.getOutputBuffered(); }
- @Override
- public void setCurrentValue(Object v) {
- delegate.setCurrentValue(v);
- }
+ @Override public void assignCurrentValue(Object v) { delegate.assignCurrentValue(v); }
+ @Override public Object currentValue() { return delegate.currentValue(); }
+ // TODO: deprecate in 2.14 or later
@Override
- public Object currentValue() { return delegate.currentValue(); }
+ public void setCurrentValue(Object v) { delegate.setCurrentValue(v); }
+ // TODO: deprecate in 2.14 or later
@Override
public Object getCurrentValue() { return delegate.getCurrentValue(); }
diff --git a/src/main/java/com/fasterxml/jackson/core/util/JsonParserDelegate.java b/src/main/java/com/fasterxml/jackson/core/util/JsonParserDelegate.java
index 9ffa4be8b6..8ca5074007 100644
--- a/src/main/java/com/fasterxml/jackson/core/util/JsonParserDelegate.java
+++ b/src/main/java/com/fasterxml/jackson/core/util/JsonParserDelegate.java
@@ -104,10 +104,12 @@ public JsonParser overrideFormatFeatures(int values, int mask) {
@Override public JsonToken getLastClearedToken() { return delegate.getLastClearedToken(); }
@Override public void overrideCurrentName(String name) { delegate.overrideCurrentName(name); }
+ @Override // since 2.13
+ public void assignCurrentValue(Object v) { delegate.assignCurrentValue(v); }
+
+ // TODO: deprecate in 2.14 or later
@Override
- public void setCurrentValue(Object v) {
- delegate.setCurrentValue(v);
- }
+ public void setCurrentValue(Object v) { delegate.setCurrentValue(v); }
/*
/**********************************************************************
@@ -120,10 +122,13 @@ public void setCurrentValue(Object v) {
@Override public JsonToken currentToken() { return delegate.currentToken(); }
@Override public int currentTokenId() { return delegate.currentTokenId(); }
@Override public String currentName() throws IOException { return delegate.currentName(); }
- @Override public Object currentValue() { return delegate.currentValue(); }
+ @Override // since 2.13
+ public Object currentValue() { return delegate.currentValue(); }
- @Override public JsonLocation currentLocation() { return delegate.getCurrentLocation(); }
- @Override public JsonLocation currentTokenLocation() { return delegate.getTokenLocation(); }
+ @Override // since 2.13
+ public JsonLocation currentLocation() { return delegate.getCurrentLocation(); }
+ @Override // since 2.13
+ public JsonLocation currentTokenLocation() { return delegate.getTokenLocation(); }
// TODO: deprecate in 2.14 or later
@Override public JsonToken getCurrentToken() { return delegate.getCurrentToken(); }