You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2016/01/25 21:31:27 UTC
[47/51] [abbrv] olingo-odata4 git commit: OLINGO-854: The conversion
of string to URI and from URI to string need to be correcty encoded and
decoded, this fix addresses that
OLINGO-854: The conversion of string to URI and from URI to string need to be correcty encoded and decoded, this fix addresses that
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/b5eae4f6
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/b5eae4f6
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/b5eae4f6
Branch: refs/heads/OLINGO-832_StreamSerializerPoC
Commit: b5eae4f6c25d7735b39d5e445db9e45f4d99c5d3
Parents: 16d238f
Author: Ramesh Reddy <ra...@jboss.org>
Authored: Thu Jan 21 16:17:18 2016 -0600
Committer: Ramesh Reddy <ra...@jboss.org>
Committed: Thu Jan 21 16:17:18 2016 -0600
----------------------------------------------------------------------
.../olingo/commons/core/edm/primitivetype/EdmString.java | 6 ++++--
.../olingo/commons/core/edm/primitivetype/EdmStringTest.java | 2 ++
2 files changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b5eae4f6/lib/commons-core/src/main/java/org/apache/olingo/commons/core/edm/primitivetype/EdmString.java
----------------------------------------------------------------------
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..a63010b 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
@@ -21,6 +21,8 @@ package org.apache.olingo.commons.core.edm.primitivetype;
import java.util.regex.Pattern;
import org.apache.olingo.commons.api.edm.EdmPrimitiveTypeException;
+import org.apache.olingo.commons.core.Decoder;
+import org.apache.olingo.commons.core.Encoder;
/**
* Implementation of the EDM primitive type String.
@@ -95,11 +97,11 @@ public final class EdmString extends SingletonPrimitiveType {
uriLiteral.append(c);
}
uriLiteral.append(uriSuffix);
- return uriLiteral.toString();
+ return Encoder.encode(uriLiteral.toString());
}
@Override
public String fromUriLiteral(final String literal) throws EdmPrimitiveTypeException {
- return literal == null ? null : super.fromUriLiteral(literal).replace("''", "'");
+ return literal == null ? null : Decoder.decode(super.fromUriLiteral(literal).replace("''", "'"));
}
}
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b5eae4f6/lib/commons-core/src/test/java/org/apache/olingo/commons/core/edm/primitivetype/EdmStringTest.java
----------------------------------------------------------------------
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..1035e6b 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
@@ -33,11 +33,13 @@ public class EdmStringTest extends PrimitiveTypeBaseTest {
assertEquals("'StringValue'", instance.toUriLiteral("StringValue"));
assertEquals("'String''Value'", instance.toUriLiteral("String'Value"));
assertEquals("'String''''''Value'", instance.toUriLiteral("String'''Value"));
+ assertEquals("'ab%20cd%20'", instance.toUriLiteral("ab cd "));
}
@Test
public void fromUriLiteral() throws Exception {
assertEquals("String''Value", instance.fromUriLiteral("'String''''Value'"));
+ assertEquals("ab cd ", instance.fromUriLiteral("'ab%20cd%20'"));
expectErrorInFromUriLiteral(instance, "");
expectErrorInFromUriLiteral(instance, "'");