Repository: olingo-odata2
Updated Branches:
  refs/heads/OLINGO-637 9947dbff2 -> 7a28a9ba3


[OLINGO-637] Added 'createPathSegment' to UriParser


Project: http://git-wip-us.apache.org/repos/asf/olingo-odata2/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata2/commit/7a28a9ba
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata2/tree/7a28a9ba
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata2/diff/7a28a9ba

Branch: refs/heads/OLINGO-637
Commit: 7a28a9ba354eb0e5f28f5dae894f48b29920cad0
Parents: 9947dbf
Author: Michael Bolz <[email protected]>
Authored: Thu Apr 23 12:56:58 2015 +0200
Committer: Michael Bolz <[email protected]>
Committed: Thu Apr 23 12:58:54 2015 +0200

----------------------------------------------------------------------
 .../org/apache/olingo/odata2/api/uri/UriParser.java     | 10 ++++++----
 .../apache/olingo/odata2/core/ODataPathSegmentImpl.java | 12 ++++++++++--
 2 files changed, 16 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/7a28a9ba/odata2-lib/odata-api/src/main/java/org/apache/olingo/odata2/api/uri/UriParser.java
----------------------------------------------------------------------
diff --git 
a/odata2-lib/odata-api/src/main/java/org/apache/olingo/odata2/api/uri/UriParser.java
 
b/odata2-lib/odata-api/src/main/java/org/apache/olingo/odata2/api/uri/UriParser.java
index 5447bc4..11426d0 100644
--- 
a/odata2-lib/odata-api/src/main/java/org/apache/olingo/odata2/api/uri/UriParser.java
+++ 
b/odata2-lib/odata-api/src/main/java/org/apache/olingo/odata2/api/uri/UriParser.java
@@ -208,8 +208,9 @@ public abstract class UriParser {
   /**
    * Creates an path segment object.
    * @param path path of created path segment
-   * @param matrixParameters Map of Lists of matrix parameters for this path 
segemt
-   * @return create path segment
+   * @param matrixParameters Map of Lists of matrix parameters for this path 
segment (can be null if no matrix
+   *                         parameters should be set for this path segment)
+   * @return created path segment
    */
   protected abstract PathSegment buildPathSegment(String path, Map<String, 
List<String>> matrixParameters);
 
@@ -217,8 +218,9 @@ public abstract class UriParser {
   /**
    * Creates an path segment object.
    * @param path path of created path segment
-   * @param matrixParameters Map of Lists of matrix parameters for this path 
segemt
-   * @return create path segment
+   * @param matrixParameters Map of Lists of matrix parameters for this path 
segment (can be null if no matrix
+   *                         parameters should be set for this path segment)
+   * @return created path segment
    */
   public static PathSegment createPathSegment(String path, Map<String, 
List<String>> matrixParameters) {
     return RuntimeDelegate.getUriParser(null).buildPathSegment(path, 
matrixParameters);

http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/7a28a9ba/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ODataPathSegmentImpl.java
----------------------------------------------------------------------
diff --git 
a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ODataPathSegmentImpl.java
 
b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ODataPathSegmentImpl.java
index 94de51d..b56b4b3 100644
--- 
a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ODataPathSegmentImpl.java
+++ 
b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/ODataPathSegmentImpl.java
@@ -18,6 +18,7 @@
  
******************************************************************************/
 package org.apache.olingo.odata2.core;
 
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
@@ -33,14 +34,21 @@ public class ODataPathSegmentImpl implements PathSegment {
   private String path;
   private Map<String, List<String>> matrixParameter;
 
+  /**
+   * Constructor for an path segment object.
+   * @param path path of created path segment
+   * @param matrixParameters Map of Lists of matrix parameters for this path 
segment (can be null if no matrix
+   *                         parameters should be set for this path segment)
+   */
   public ODataPathSegmentImpl(final String path, final Map<String, 
List<String>> matrixParameters) {
     this.path = path;
 
     Map<String, List<String>> unmodifiableMap = new HashMap<String, 
List<String>>();
     if (matrixParameters != null) {
       for (String key : matrixParameters.keySet()) {
-        List<String> values = 
Collections.unmodifiableList(matrixParameters.get(key));
-        unmodifiableMap.put(key, values);
+        List<String> values = matrixParameters.get(key);
+        List<String> tempList = values == null ? null: 
Collections.unmodifiableList(new ArrayList<String>(values));
+        unmodifiableMap.put(key, tempList);
       }
     }
 

Reply via email to