You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cxf.apache.org by se...@apache.org on 2015/11/18 17:06:29 UTC
cxf git commit: [CXF-6682] Initializing UB later
Repository: cxf
Updated Branches:
refs/heads/master 886f14caf -> ce969249d
[CXF-6682] Initializing UB later
Project: http://git-wip-us.apache.org/repos/asf/cxf/repo
Commit: http://git-wip-us.apache.org/repos/asf/cxf/commit/ce969249
Tree: http://git-wip-us.apache.org/repos/asf/cxf/tree/ce969249
Diff: http://git-wip-us.apache.org/repos/asf/cxf/diff/ce969249
Branch: refs/heads/master
Commit: ce969249da7101a53d5c48fc6e12bde455d4a6dd
Parents: 886f14c
Author: Sergey Beryozkin <sb...@gmail.com>
Authored: Wed Nov 18 16:06:10 2015 +0000
Committer: Sergey Beryozkin <sb...@gmail.com>
Committed: Wed Nov 18 16:06:10 2015 +0000
----------------------------------------------------------------------
.../java/org/apache/cxf/jaxrs/impl/LinkBuilderImpl.java | 11 +++++++++--
.../org/apache/cxf/jaxrs/impl/LinkBuilderImplTest.java | 6 ++++++
2 files changed, 15 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cxf/blob/ce969249/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/LinkBuilderImpl.java
----------------------------------------------------------------------
diff --git a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/LinkBuilderImpl.java b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/LinkBuilderImpl.java
index 2ceff49..389cc1c 100644
--- a/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/LinkBuilderImpl.java
+++ b/rt/frontend/jaxrs/src/main/java/org/apache/cxf/jaxrs/impl/LinkBuilderImpl.java
@@ -37,7 +37,7 @@ import org.apache.cxf.jaxrs.utils.HttpUtils;
public class LinkBuilderImpl implements Builder {
private static final String DOUBLE_QUOTE = "\"";
- private UriBuilder ub = new UriBuilderImpl();
+ private UriBuilder ub;
private URI baseUri;
private Map<String, String> params = new HashMap<String, String>(6);
@@ -55,9 +55,16 @@ public class LinkBuilderImpl implements Builder {
}
private URI getResolvedUri(Object... values) {
+ if (ub == null) {
+ ub = new UriBuilderImpl();
+ if (baseUri != null) {
+ ub.uri(baseUri);
+ }
+
+ }
URI uri = ub.build(values);
- if (!uri.isAbsolute() && baseUri != null) {
+ if (!uri.isAbsolute() && baseUri != null && baseUri.isAbsolute()) {
UriBuilder linkUriBuilder = UriBuilder.fromUri(baseUri);
return HttpUtils.resolve(linkUriBuilder, uri);
} else {
http://git-wip-us.apache.org/repos/asf/cxf/blob/ce969249/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/impl/LinkBuilderImplTest.java
----------------------------------------------------------------------
diff --git a/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/impl/LinkBuilderImplTest.java b/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/impl/LinkBuilderImplTest.java
index 70920cc..3662eb5 100644
--- a/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/impl/LinkBuilderImplTest.java
+++ b/rt/frontend/jaxrs/src/test/java/org/apache/cxf/jaxrs/impl/LinkBuilderImplTest.java
@@ -59,6 +59,12 @@ public class LinkBuilderImplTest extends Assert {
}
@Test
+ public void testSelfLink() throws Exception {
+ Link link = new LinkBuilderImpl().baseUri("http://localhost:8080/resource/1").rel("self").build();
+ assertEquals("<http://localhost:8080/resource/1>;rel=\"self\"", link.toString());
+ }
+
+ @Test
public void testBuildManyRels() throws Exception {
Link.Builder linkBuilder = new LinkBuilderImpl();
Link prevLink = linkBuilder.uri("http://example.com/page1").rel("1").rel("2").build();