Search in sources :

Example 1 with Link

use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.

the class LinkExamples method example1.

/**
 * 3-step process: Build URI, build Link and build Response.
 *
 * @return response.
 */
public Response example1() {
    URI uri = UriBuilder.fromUri("http://foo.bar/employee/john").build();
    Link link = Link.fromUri(uri).rel("emp").title("employee").build();
    return Response.ok().links(link).build();
}
Also used : URI(java.net.URI) Link(jakarta.ws.rs.core.Link)

Example 2 with Link

use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.

the class ResourceExample method getIt.

@GET
@Produces({ "application/json" })
public MyModel getIt() {
    Link self = Link.fromMethod(getClass(), "getIt").baseUri(uriInfo.getBaseUri()).rel("self").buildRelativized(uriInfo.getRequestUri());
    MyModel m = new MyModel();
    m.setLink(self);
    m.setAtomLink(self);
    return m;
}
Also used : Link(jakarta.ws.rs.core.Link) Produces(jakarta.ws.rs.Produces) GET(jakarta.ws.rs.GET)

Example 3 with Link

use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.

the class JAXRSClientIT method closeOnClientInvocationWithLinkTest.

/*
   * @testName: closeOnClientInvocationWithLinkTest
   * 
   * @assertion_ids: JAXRS:JAVADOC:409;
   * 
   * @test_Strategy: Close client instance and all it's associated resources.
   * Subsequent calls have no effect and are ignored. Once the client is closed,
   * invoking any other method on the client instance would result in an
   * IllegalStateException being thrown. Calling this method effectively
   * invalidates all WebTarget resource targets produced by the client instance.
   * Invoking any method on such targets once the client is closed would result
   * in an IllegalStateException being thrown.
   */
@Test
public void closeOnClientInvocationWithLinkTest() throws Fault {
    client.close();
    Link link = Link.fromUri("cts").build();
    assertException(IllegalStateException.class, client, "invocation", link);
}
Also used : Link(jakarta.ws.rs.core.Link) Test(org.junit.jupiter.api.Test)

Example 4 with Link

use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.

the class JAXRSClientIT method constructorTest.

/* Run test */
/*
     * @testName: constructorTest
     * 
     * @assertion_ids: JAXRS:JAVADOC:799;
     * 
     * @test_Strategy: see what happens when new Link() is used.
     */
@Test
public void constructorTest() throws Fault {
    Link link = new Link() {

        @Override
        public URI getUri() {
            return null;
        }

        @Override
        public UriBuilder getUriBuilder() {
            return null;
        }

        @Override
        public String getRel() {
            return null;
        }

        @Override
        public List<String> getRels() {
            return null;
        }

        @Override
        public String getTitle() {
            return null;
        }

        @Override
        public String getType() {
            return null;
        }

        @Override
        public Map<String, String> getParams() {
            return null;
        }

        @Override
        public String toString() {
            return "";
        }
    };
    // check no Exception is thrown
    assertTrue(link != null, "new Link() is null");
    logMsg("new Link() call iss successfull", link.toString());
}
Also used : Link(jakarta.ws.rs.core.Link) Test(org.junit.jupiter.api.Test)

Example 5 with Link

use of jakarta.ws.rs.core.Link in project jaxrs-api by eclipse-ee4j.

the class JAXRSClientIT method getParamsFromResourceTest.

/*
     * @testName: getParamsFromResourceTest
     * 
     * @assertion_ids: JAXRS:JAVADOC:792;
     * 
     * @test_Strategy: Returns an immutable map that includes all the link
     * parameters defined on this link. If defined, this map will include entries
     * for "rel", "title" and "type".
     */
@Test
public void getParamsFromResourceTest() throws Fault {
    String title = "Title";
    String value;
    Link link = Link.fromMethod(Resource.class, "producesSvgXml").title(title).build();
    Map<String, String> params = link.getParams();
    System.out.println(params);
    value = params.get("type");
    assertNull(value, "Unexpected media type in link found", value);
    value = params.get("title");
    assertContains(value, title);
    logMsg(params, "found as expected");
}
Also used : Link(jakarta.ws.rs.core.Link) Test(org.junit.jupiter.api.Test)

Aggregations

Link (jakarta.ws.rs.core.Link)84 Test (org.junit.jupiter.api.Test)69 Builder (jakarta.ws.rs.core.Link.Builder)37 UriBuilder (jakarta.ws.rs.core.UriBuilder)27 Response (jakarta.ws.rs.core.Response)23 URI (java.net.URI)19 ClientBuilder (jakarta.ws.rs.client.ClientBuilder)14 URISyntaxException (java.net.URISyntaxException)7 Path (jakarta.ws.rs.Path)4 POST (jakarta.ws.rs.POST)3 Client (jakarta.ws.rs.client.Client)3 ClientRequestContext (jakarta.ws.rs.client.ClientRequestContext)3 ClientResponseContext (jakarta.ws.rs.client.ClientResponseContext)3 UriBuilderException (jakarta.ws.rs.core.UriBuilderException)3 GET (jakarta.ws.rs.GET)2 ResponseBuilder (jakarta.ws.rs.core.Response.ResponseBuilder)2 JAXBContext (jakarta.xml.bind.JAXBContext)2 JAXBException (jakarta.xml.bind.JAXBException)2 Marshaller (jakarta.xml.bind.Marshaller)2 ByteArrayInputStream (java.io.ByteArrayInputStream)2