Example usage for com.google.common.net HttpHeaders LINK

List of usage examples for com.google.common.net HttpHeaders LINK

Introduction

In this page you can find the example usage for com.google.common.net HttpHeaders LINK.

Prototype

String LINK

To view the source code for com.google.common.net HttpHeaders LINK.

Click Source Link

Document

The HTTP Link header field name.

Usage

From source file:com.ksk.springstest.web.hateoas.listener.SingleResourceRetrivedDiscoverabilityListener.java

void addLinkHeaderOnSingleResourceRetrived(final HttpServletResponse response) {

    final String requestedUri = ServletUriComponentsBuilder.fromCurrentRequestUri().build().toUri()
            .toASCIIString();/*from w ww. j  a v a 2  s .  c om*/
    final int positionOfLastSlash = requestedUri.lastIndexOf("/");
    final String uriForResourceCreation = requestedUri.substring(0, positionOfLastSlash);

    final String linkHeaderValue = LinkUtil.createLinkHeader(requestedUri, LinkUtil.REL_COLLECTION);

    response.addHeader(HttpHeaders.LINK, linkHeaderValue);
}

From source file:com.minlia.cloud.framework.common.web.listeners.MultipleResourcesRetrievedDiscoverabilityListener.java

@SuppressWarnings("unchecked")
final void discoverOtherRetrievalOperations(final UriComponentsBuilder uriBuilder,
        final HttpServletResponse response, final Class clazz) {
    final String uriForResourceCreation = uriBuilder
            .path(WebConstants.PATH_SEP + uriMapper.getUriBase(clazz) + "/q=name=something").build().encode()
            .toUriString();/*ww  w.  ja v  a  2 s. co m*/

    final String linkHeaderValue = LinkUtil.createLinkHeader(uriForResourceCreation, LinkUtil.REL_COLLECTION);
    response.addHeader(HttpHeaders.LINK, linkHeaderValue);
}

From source file:com.minlia.cloud.framework.common.web.listeners.SingleResourceRetrievedDiscoverabilityListener.java

/**
 * - note: at this point, the URI is transformed into plural (added `s`) in a hardcoded way - this will change in the future
 *///from ww  w .  j  a  va 2  s .co m
@SuppressWarnings("unchecked")
final void discoverGetAllURI(final UriComponentsBuilder uriBuilder, final HttpServletResponse response,
        final Class clazz) {
    final String uriForResourceCreation = uriBuilder.path(WebConstants.PATH_SEP + uriMapper.getUriBase(clazz))
            .build().encode().toUriString();

    final String linkHeaderValue = LinkUtil.createLinkHeader(uriForResourceCreation, LinkUtil.REL_COLLECTION);
    response.addHeader(HttpHeaders.LINK, linkHeaderValue);
}

From source file:com.ksk.springstest.web.hateoas.listener.PaginatedResultsRetrievedDiscoverabilityLitener.java

private void addLinkHeaderOnPagedResourceReterival(final UriComponentsBuilder uriBuilder,
        final HttpServletResponse response, final int page, final int totalPages, final int pageSize,
        final Class clazz) {
    plural(uriBuilder, clazz);// ww w .  j  a  v  a  2s  .com

    final StringBuilder linkHeader = new StringBuilder();
    if (hasNextPage(page, totalPages)) {
        final String nextPageUri = constructNextPageUri(uriBuilder, page, pageSize);
        linkHeader.append(LinkUtil.createLinkHeader(nextPageUri, LinkUtil.REL_NEXT));
    }

    if (hasPreviousPage(page)) {
        final String previousPageUri = constructPreviousPageUri(uriBuilder, page, pageSize);
        linkHeader.append(LinkUtil.createLinkHeader(previousPageUri, LinkUtil.REL_PREV));
    }

    if (hasFirstPage(page)) {
        final String firstPageUri = constructFirstPageUri(uriBuilder, pageSize);
        linkHeader.append(LinkUtil.createLinkHeader(firstPageUri, LinkUtil.REL_FIRST));
    }

    if (hasLasPage(page, totalPages)) {
        final String lastPageUri = constructLasPageUri(uriBuilder, totalPages, pageSize);
        linkHeader.append(LinkUtil.createLinkHeader(lastPageUri, LinkUtil.REL_LAST));
    }

    if (linkHeader.length() > 0) {
        response.addHeader(HttpHeaders.LINK, linkHeader.toString());
    }

}

From source file:com.minlia.cloud.framework.common.web.listeners.PaginatedResultsRetrievedDiscoverabilityListener.java

final void addLinkHeaderOnPagedResourceRetrieval(final UriComponentsBuilder uriBuilder,
        final HttpServletResponse response, final Class clazz, final int page, final int totalPages,
        final int pageSize) {
    plural(uriBuilder, clazz);//from w w w .j  a v  a2  s . c  o  m

    final StringBuilder linkHeader = new StringBuilder();
    if (hasNextPage(page, totalPages)) {
        final String uriForNextPage = constructNextPageUri(uriBuilder, page, pageSize);
        linkHeader.append(createLinkHeader(uriForNextPage, REL_NEXT));
    }
    if (hasPreviousPage(page)) {
        final String uriForPrevPage = constructPrevPageUri(uriBuilder, page, pageSize);
        appendCommaIfNecessary(linkHeader);
        linkHeader.append(createLinkHeader(uriForPrevPage, REL_PREV));
    }
    if (hasFirstPage(page)) {
        final String uriForFirstPage = constructFirstPageUri(uriBuilder, pageSize);
        appendCommaIfNecessary(linkHeader);
        linkHeader.append(createLinkHeader(uriForFirstPage, REL_FIRST));
    }
    if (hasLastPage(page, totalPages)) {
        final String uriForLastPage = constructLastPageUri(uriBuilder, totalPages, pageSize);
        appendCommaIfNecessary(linkHeader);
        linkHeader.append(createLinkHeader(uriForLastPage, REL_LAST));
    }

    if (linkHeader.length() > 0) {
        response.addHeader(HttpHeaders.LINK, linkHeader.toString());
    }
}