commit | 4baf2b695ae4d031cb0c50c7c75ff87d2757ff1b | [log] [tgz] |
---|---|---|
author | ramya vasanth <ramya.vasanth@sap.com> | Fri Oct 09 14:13:31 2020 +0530 |
committer | ramya vasanth <ramya.vasanth@sap.com> | Fri Oct 09 14:13:31 2020 +0530 |
tree | 29e50145c410f54603fdaaa2587db7d8c40b6af9 | |
parent | 6f8b90bccdbd18a2914f2351d799b860a498d797 [diff] |
[OLINGO-1191]Fix null issue in Edm.String
diff --git a/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/primitivetype/EdmString.java b/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/primitivetype/EdmString.java index 8e9a42a..29b44b4 100644 --- a/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/primitivetype/EdmString.java +++ b/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/primitivetype/EdmString.java
@@ -99,7 +99,10 @@ } @Override - public String fromUriLiteral(final String literal) throws EdmPrimitiveTypeException { + public String fromUriLiteral(String literal) throws EdmPrimitiveTypeException { + if (literal != null && literal.equalsIgnoreCase("null")) { + literal = "'" + literal + "'"; + } return literal == null ? null : super.fromUriLiteral(literal).replace("''", "'"); } }
diff --git a/lib/commons-core/src/test/java/org/apache/olingo/commons/core/edm/primitivetype/EdmStringTest.java b/lib/commons-core/src/test/java/org/apache/olingo/commons/core/edm/primitivetype/EdmStringTest.java index b5f2a89..68b5820 100644 --- a/lib/commons-core/src/test/java/org/apache/olingo/commons/core/edm/primitivetype/EdmStringTest.java +++ b/lib/commons-core/src/test/java/org/apache/olingo/commons/core/edm/primitivetype/EdmStringTest.java
@@ -38,6 +38,7 @@ @Test public void fromUriLiteral() throws Exception { assertEquals("String''Value", instance.fromUriLiteral("'String''''Value'")); + assertEquals("null", instance.fromUriLiteral("null")); expectErrorInFromUriLiteral(instance, ""); expectErrorInFromUriLiteral(instance, "'");