use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class JAXRSClientIT method getTitleIsNullTest.
/*
* @testName: getTitleIsNullTest
*
* @assertion_ids: JAXRS:JAVADOC:794;
*
* @test_Strategy: Returns the value associated with the link "title" param, or
* null if this param is not specified.
*/
@Test
public void getTitleIsNullTest() throws Fault {
Link link = linkFromResource("get");
String title = link.getTitle();
assertTrue(title == null, "#getTitle is unexpected " + title);
logMsg("#getTitle( returns null as expected");
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class LinkExamples method example2.
/**
* 2-step process: Build Link from String and build Response.
*
* @return response.
*/
public Response example2() {
Link link = Link.fromUri("http://foo.bar/employee/john").rel("manager").rel("friend").title("employee").type("application/xml").build();
System.out.println("Link = " + link);
return Response.ok().links(link).build();
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class ClientTest method test.
public void test() {
Client client = ClientBuilder.newClient();
// Get cluster representation -- entry point
Response rc = client.target("/cluster").request("application/json").get();
// Ensure cluster is online
if (rc.hasLink("onliner")) {
client.invocation(rc.getLink("onliner")).buildPost(null).invoke();
}
// Start all machines in cluster
Cluster c = rc.readEntity(Cluster.class);
for (Machine m : c.getMachines()) {
// Machine name is need for URI template in link
Link l = rc.getLinkBuilder("item").build(m.getName());
// Create invocation from link and call invoke()
Response rm = client.invocation(l).buildGet().invoke();
// Start machine if not started already
if (rm.hasLink("starter")) {
client.invocation(rm.getLink("starter")).buildPost(null).invoke();
}
}
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class ClusterResource method getTransitionalLinks.
private Link[] getTransitionalLinks() {
URI uri = uriInfo.getRequestUri();
URI baseUri = uriInfo.getBaseUri();
Link self = Link.fromMethod(getClass(), "self").baseUri(baseUri).rel("self").buildRelativized(uri);
Link item = Link.fromMethod(MachineResource.class, "self").baseUri(baseUri).rel("item").buildRelativized(uri);
Link onliner = Link.fromMethod(getClass(), "onliner").baseUri(baseUri).rel("onliner").buildRelativized(uri);
Link offliner = Link.fromMethod(getClass(), "offliner").baseUri(baseUri).rel("offliner").buildRelativized(uri);
return cluster.getStatus() == Status.ONLINE ? new Link[] { self, item, offliner } : new Link[] { self, item, onliner };
}
use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.
the class MachineResource method getTransitionalLinks.
private Link[] getTransitionalLinks() {
String name = machine.getName();
URI uri = uriInfo.getRequestUri();
URI baseUri = uriInfo.getBaseUri();
Link self = Link.fromMethod(getClass(), "self").baseUri(baseUri).rel("self").buildRelativized(uri, name);
Link starter = Link.fromMethod(getClass(), "starter").baseUri(baseUri).rel("starter").buildRelativized(uri, name);
Link stopper = Link.fromMethod(getClass(), "stopper").baseUri(baseUri).rel("stopper").buildRelativized(uri, name);
Link suspender = Link.fromMethod(getClass(), "suspender").baseUri(baseUri).rel("suspender").buildRelativized(uri, name);
switch(machine.getStatus()) {
case STOPPED:
return new Link[] { self, starter };
case STARTED:
return new Link[] { self, stopper, suspender };
case SUSPENDED:
return new Link[] { self, starter };
default:
throw new IllegalStateException();
}
}
Aggregations