transformationFunction) {
@Override
public String toSql(IdentifierProcessing processing) {
- return quoted ? processing.quote(getReference(processing)) : getReference(processing);
+ return quoted ? processing.quote(name) : name;
}
@Override
+ @Deprecated(since="3.0.5", forRemoval = false)
public String getReference(IdentifierProcessing processing) {
- return name;
+ return toSql(processing);
}
@Override
diff --git a/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/SqlIdentifier.java b/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/SqlIdentifier.java
index d0cb6f78da..ac011487eb 100644
--- a/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/SqlIdentifier.java
+++ b/spring-data-relational/src/main/java/org/springframework/data/relational/core/sql/SqlIdentifier.java
@@ -26,7 +26,7 @@
* from a {@link String name} with specifying whether the name should be quoted or unquoted.
*
* {@link SqlIdentifier} renders its name using {@link IdentifierProcessing} rules. Use
- * {@link #getReference(IdentifierProcessing)} to refer to an object using the identifier when e.g. obtaining values
+ * {@link #getReference()} to refer to an object using the identifier when e.g. obtaining values
* from a result or providing values for a prepared statement. {@link #toSql(IdentifierProcessing)} renders the
* identifier for SQL statement usage.
*
@@ -39,6 +39,7 @@
*
* @author Jens Schauder
* @author Mark Paluch
+ * @author Kurt Niemi
* @since 2.0
*/
public interface SqlIdentifier extends Streamable {
@@ -77,9 +78,12 @@ public String toString() {
* Return the reference name after applying {@link IdentifierProcessing} rules. The reference name is used for
* programmatic access to the object identified by this {@link SqlIdentifier}.
*
+ * @deprecated Use the toSql(IdentifierProcessing processing) method instead.
+ *
* @param processing identifier processing rules.
* @return
*/
+ @Deprecated(since="3.0.5", forRemoval = false)
String getReference(IdentifierProcessing processing);
/**
@@ -90,7 +94,7 @@ public String toString() {
* @see IdentifierProcessing#NONE
*/
default String getReference() {
- return getReference(IdentifierProcessing.NONE);
+ return toSql(IdentifierProcessing.NONE);
}
/**
diff --git a/spring-data-relational/src/test/java/org/springframework/data/relational/core/mapping/DerivedSqlIdentifierUnitTests.java b/spring-data-relational/src/test/java/org/springframework/data/relational/core/mapping/DerivedSqlIdentifierUnitTests.java
index 7e04d24613..8cc20c9835 100644
--- a/spring-data-relational/src/test/java/org/springframework/data/relational/core/mapping/DerivedSqlIdentifierUnitTests.java
+++ b/spring-data-relational/src/test/java/org/springframework/data/relational/core/mapping/DerivedSqlIdentifierUnitTests.java
@@ -41,7 +41,8 @@ public void quotedSimpleObjectIdentifierWithAdjustableLetterCasing() {
SqlIdentifier identifier = new DerivedSqlIdentifier("someName", true);
assertThat(identifier.toSql(BRACKETS_LOWER_CASE)).isEqualTo("[somename]");
- assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("someName");
+ assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("[somename]");
+ assertThat(identifier.getReference()).isEqualTo("someName");
}
@@ -52,7 +53,8 @@ public void unquotedSimpleObjectIdentifierWithAdjustableLetterCasing() {
String sql = identifier.toSql(BRACKETS_LOWER_CASE);
assertThat(sql).isEqualTo("somename");
- assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("someName");
+ assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("somename");
+ assertThat(identifier.getReference()).isEqualTo("someName");
}
@Test // DATAJDBC-386
diff --git a/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/SqlIdentifierUnitTests.java b/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/SqlIdentifierUnitTests.java
index d072544904..efc6461d88 100644
--- a/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/SqlIdentifierUnitTests.java
+++ b/spring-data-relational/src/test/java/org/springframework/data/relational/core/sql/SqlIdentifierUnitTests.java
@@ -40,7 +40,8 @@ public void quotedSimpleObjectIdentifier() {
SqlIdentifier identifier = quoted("someName");
assertThat(identifier.toSql(BRACKETS_LOWER_CASE)).isEqualTo("[someName]");
- assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("someName");
+ assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("[someName]");
+ assertThat(identifier.getReference()).isEqualTo("someName");
}
@Test // DATAJDBC-386
@@ -51,6 +52,7 @@ public void unquotedSimpleObjectIdentifier() {
assertThat(sql).isEqualTo("someName");
assertThat(identifier.getReference(BRACKETS_LOWER_CASE)).isEqualTo("someName");
+ assertThat(identifier.getReference()).isEqualTo("someName");
}
@Test // DATAJDBC-386