org.glassfish.jersey.message.internal
Class JerseyLink.Builder

java.lang.Object
  extended by org.glassfish.jersey.message.internal.JerseyLink.Builder
All Implemented Interfaces:
Link.Builder
Enclosing class:
JerseyLink

public static class JerseyLink.Builder
extends Object
implements Link.Builder

Jersey implementation of JAX-RS Link.Builder contract.


Constructor Summary
JerseyLink.Builder()
           
 
Method Summary
 JerseyLink build(Object... values)
          Finish building this link using the supplied values as URI parameters.
 Link buildRelativized(URI uri, Object... values)
          Finish building this link using the supplied values as URI parameters and relativize the result with respect to a supplied URI.
 Link buildResolved(URI uri, Object... values)
          Finish building this link using the supplied values as URI parameters and resolve the result using a base URI.
 JerseyLink.Builder link(Link link)
          Initialize builder using another link.
 JerseyLink.Builder link(String link)
          Initialize builder using another link represented as a string.
 JerseyLink.Builder param(String name, String value)
          Set an arbitrary parameter on this link.
 JerseyLink.Builder rel(String rel)
          Convenience method to set a link relation.
 JerseyLink.Builder title(String title)
          Convenience method to set a title on this link.
 JerseyLink.Builder type(String type)
          Convenience method to set a type on this link.
 JerseyLink.Builder uri(String uri)
          Set underlying string representing URI template for the link being constructed.
 JerseyLink.Builder uri(URI uri)
          Set underlying URI template for the link being constructed.
 JerseyLink.Builder uriBuilder(UriBuilder uriBuilder)
          Set underlying URI builder representing the URI template for the link being constructed.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JerseyLink.Builder

public JerseyLink.Builder()
Method Detail

link

public JerseyLink.Builder link(Link link)
Description copied from interface: Link.Builder
Initialize builder using another link. Sets underlying URI and copies all parameters.

Specified by:
link in interface Link.Builder
Parameters:
link - other link from which to initialize.
Returns:
the updated builder.

link

public JerseyLink.Builder link(String link)
Description copied from interface: Link.Builder
Initialize builder using another link represented as a string. Uses simple parser to convert string representation into a link.
 link ::= '<' uri '>' (';' link-param)*
 link-param ::= name '=' quoted-string
 
See RFC 5988 for more information.

Specified by:
link in interface Link.Builder
Parameters:
link - other link in string representation.
Returns:
the updated builder.

uri

public JerseyLink.Builder uri(URI uri)
Description copied from interface: Link.Builder
Set underlying URI template for the link being constructed.

Specified by:
uri in interface Link.Builder
Parameters:
uri - underlying URI for link
Returns:
the updated builder.

uri

public JerseyLink.Builder uri(String uri)
Description copied from interface: Link.Builder
Set underlying string representing URI template for the link being constructed.

Specified by:
uri in interface Link.Builder
Parameters:
uri - underlying URI for link.
Returns:
the updated builder.

uriBuilder

public JerseyLink.Builder uriBuilder(UriBuilder uriBuilder)
Description copied from interface: Link.Builder
Set underlying URI builder representing the URI template for the link being constructed.

Specified by:
uriBuilder in interface Link.Builder
Parameters:
uriBuilder - underlying URI builder.
Returns:
the updated builder.

rel

public JerseyLink.Builder rel(String rel)
Description copied from interface: Link.Builder
Convenience method to set a link relation. More than one rel value can be specified by using one or more whitespace characters as delimiters according to RFC 5988. The effect of calling this method is cumulative; relations are appended using a single space character as separator.

Specified by:
rel in interface Link.Builder
Parameters:
rel - relation name.
Returns:
the updated builder.

title

public JerseyLink.Builder title(String title)
Description copied from interface: Link.Builder
Convenience method to set a title on this link.

Specified by:
title in interface Link.Builder
Parameters:
title - title parameter of this link.
Returns:
the updated builder.

type

public JerseyLink.Builder type(String type)
Description copied from interface: Link.Builder
Convenience method to set a type on this link.

Specified by:
type in interface Link.Builder
Parameters:
type - type parameter of this link.
Returns:
the updated builder.

param

public JerseyLink.Builder param(String name,
                                String value)
Description copied from interface: Link.Builder
Set an arbitrary parameter on this link. Note that link parameters are those defined in RFC 5988 and should not be confused with URI parameters which can be specified when calling Link.Builder.build(Object...).

Specified by:
param in interface Link.Builder
Parameters:
name - the name of the parameter.
value - the value set for the parameter.
Returns:
the updated builder.

build

public JerseyLink build(Object... values)
Description copied from interface: Link.Builder
Finish building this link using the supplied values as URI parameters.

Specified by:
build in interface Link.Builder
Parameters:
values - parameters used to build underlying URI.
Returns:
newly built link.

buildRelativized

public Link buildRelativized(URI uri,
                             Object... values)
Description copied from interface: Link.Builder

Finish building this link using the supplied values as URI parameters and relativize the result with respect to a supplied URI. Link relativization is described in UriInfo.relativize(java.net.URI). If the two links do not share a prefix, the relativization step is skipped and this method is equivalent to calling Link.Builder.build(java.lang.Object[]).

Specified by:
buildRelativized in interface Link.Builder
Parameters:
uri - URI used for relativization.
values - parameters used to build underlying URI.
Returns:
newly built link.
See Also:
UriInfo.relativize(java.net.URI), UriInfo.getRequestUri()

buildResolved

public Link buildResolved(URI uri,
                          Object... values)
Description copied from interface: Link.Builder

Finish building this link using the supplied values as URI parameters and resolve the result using a base URI. If the underlying URI is already absolute, the resolution step is omitted and this method is equivalent to calling Link.Builder.build(java.lang.Object[]).

Specified by:
buildResolved in interface Link.Builder
Parameters:
uri - base URI used for resolution.
values - parameters used to build underlying URI.
Returns:
newly built link.
See Also:
UriInfo.resolve(java.net.URI), UriInfo.getBaseUri()


Copyright © 2007-2013 Oracle Corporation. All Rights Reserved. Use is subject to license terms.