Repository: olingo-odata4 Updated Branches: refs/heads/master 210cf9b37 -> 200cc7556
[OLINGO-356] Fix for tiny bug in ContextURL Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/200cc755 Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/200cc755 Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/200cc755 Branch: refs/heads/master Commit: 200cc75568a7e098ea2077efff5e3fd9bc31fd54 Parents: 210cf9b Author: Michael Bolz <[email protected]> Authored: Fri Jul 11 11:14:13 2014 +0200 Committer: Michael Bolz <[email protected]> Committed: Fri Jul 11 11:14:13 2014 +0200 ---------------------------------------------------------------------- .../org/apache/olingo/commons/api/data/ContextURL.java | 6 +++--- .../apache/olingo/commons/api/data/ContextURLTest.java | 12 ++++++++++++ 2 files changed, 15 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/200cc755/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/ContextURL.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/ContextURL.java b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/ContextURL.java index 5bb9ab7..8926ceb 100644 --- a/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/ContextURL.java +++ b/lib/commons-api/src/main/java/org/apache/olingo/commons/api/data/ContextURL.java @@ -72,8 +72,8 @@ public class ContextURL { instance.deltaLink = contextURLasString.endsWith("/$link"); contextURLasString = contextURLasString.replace("/$link", StringUtils.EMPTY); - instance.deltaDeletedLink = contextURLasString.endsWith("$deletedLink"); - contextURLasString = contextURLasString.replace("$deletedLink", StringUtils.EMPTY); + instance.deltaDeletedLink = contextURLasString.endsWith("/$deletedLink"); + contextURLasString = contextURLasString.replace("/$deletedLink", StringUtils.EMPTY); instance.serviceRoot = URI.create(StringUtils.substringBefore(contextURLasString, Constants.METADATA)); @@ -109,7 +109,7 @@ public class ContextURL { if (!firstToken.equals(rest)) { final String[] pathElems = StringUtils.substringAfter(rest, "/").split("/"); - if (pathElems.length > 0) { + if (pathElems.length > 0 && pathElems[0].length() > 0) { if (pathElems[0].indexOf('.') == -1) { instance.navOrPropertyPath = pathElems[0]; } else { http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/200cc755/lib/commons-api/src/test/java/org/apache/olingo/commons/api/data/ContextURLTest.java ---------------------------------------------------------------------- diff --git a/lib/commons-api/src/test/java/org/apache/olingo/commons/api/data/ContextURLTest.java b/lib/commons-api/src/test/java/org/apache/olingo/commons/api/data/ContextURLTest.java index c2362be..84046b2 100644 --- a/lib/commons-api/src/test/java/org/apache/olingo/commons/api/data/ContextURLTest.java +++ b/lib/commons-api/src/test/java/org/apache/olingo/commons/api/data/ContextURLTest.java @@ -205,14 +205,26 @@ public class ContextURLTest { public void delta() { ContextURL contextURL = ContextURL.getInstance(URI.create("http://host/service/$metadata#Customers/$delta")); assertTrue(contextURL.isDelta()); + assertNull(contextURL.getSelectList()); + assertNull(contextURL.getNavOrPropertyPath()); + assertFalse(contextURL.isEntity()); contextURL = ContextURL.getInstance(URI.create("http://host/service/$metadata#Customers/$deletedLink")); assertTrue(contextURL.isDeltaDeletedLink()); + assertNull(contextURL.getSelectList()); + assertNull(contextURL.getNavOrPropertyPath()); + assertFalse(contextURL.isEntity()); contextURL = ContextURL.getInstance(URI.create("http://host/service/$metadata#Customers/$link")); assertTrue(contextURL.isDeltaLink()); + assertNull(contextURL.getSelectList()); + assertNull(contextURL.getNavOrPropertyPath()); + assertFalse(contextURL.isEntity()); contextURL = ContextURL.getInstance(URI.create("http://host/service/$metadata#Customers/$deletedEntity")); assertTrue(contextURL.isDeltaDeletedEntity()); + assertNull(contextURL.getSelectList()); + assertNull(contextURL.getNavOrPropertyPath()); + assertFalse(contextURL.isEntity()); } }
