Example usage for org.springframework.data.rest.core.mapping ResourceType ITEM

List of usage examples for org.springframework.data.rest.core.mapping ResourceType ITEM

Introduction

In this page you can find the example usage for org.springframework.data.rest.core.mapping ResourceType ITEM.

Prototype

ResourceType ITEM

To view the source code for org.springframework.data.rest.core.mapping ResourceType ITEM.

Click Source Link

Usage

From source file:springfox.documentation.spring.data.rest.EntitySearchRequestTemplate.java

Collection<? extends RequestHandler> operations() {
    List<RequestHandler> requestHandlers = newArrayList();
    boolean collectionHandlerAdded = false;
    for (ResourceMetadata resource : mappings) {
        for (MethodResourceMapping searchResource : resource.getSearchResourceMappings()) {
            EntitySearchRequestHandler handler = new EntitySearchRequestHandler(resolver, requestMapping,
                    new HandlerMethod(searchResource.getMethod().getClass(), searchResource.getMethod()),
                    searchResource, resource);
            if (handler.resourceType() == ResourceType.ITEM || !collectionHandlerAdded) {
                requestHandlers.add(handler);
                if (!collectionHandlerAdded) {
                    collectionHandlerAdded = (handler.resourceType() == ResourceType.COLLECTION);
                }//from w ww . j  a va  2s . co m
            }
        }
    }
    return requestHandlers;
}

From source file:springfox.documentation.spring.data.rest.EntitySearchRequestHandler.java

@Override
public String getName() {
    if (resourceType == ResourceType.ITEM) {
        return searchResource.getPath().toString();
    }//  w ww.  j a  v a2s . com
    return handlerMethod.getMethod().getName();
}

From source file:org.springframework.data.rest.webmvc.alps.RootResourceInformationToAlpsDescriptorConverter.java

public Alps convert(RootResourceInformation resourceInformation) {

    Class<?> type = resourceInformation.getDomainType();
    List<Descriptor> descriptors = new ArrayList<Descriptor>();

    Descriptor representationDescriptor = buildRepresentationDescriptor(type);

    descriptors.add(representationDescriptor);

    SupportedHttpMethods supportedHttpMethods = resourceInformation.getSupportedMethods();

    for (HttpMethod method : supportedHttpMethods.getMethodsFor(ResourceType.COLLECTION)) {

        if (!UNDOCUMENTED_METHODS.contains(method)) {
            descriptors.add(buildCollectionResourceDescriptor(type, resourceInformation,
                    representationDescriptor, method));
        }//from ww w  . ja  v  a  2  s . co m
    }

    for (HttpMethod method : supportedHttpMethods.getMethodsFor(ResourceType.ITEM)) {

        if (!UNDOCUMENTED_METHODS.contains(method)) {
            descriptors.add(buildItemResourceDescriptor(resourceInformation, representationDescriptor, method));
        }
    }

    descriptors.addAll(buildSearchResourceDescriptors(resourceInformation.getPersistentEntity()));

    return Alps.alps().descriptors(descriptors).build();
}

From source file:springfox.documentation.spring.data.rest.EntitySearchRequestHandler.java

@Override
public List<ResolvedMethodParameter> getParameters() {
    HandlerMethodResolver handlerMethodResolver = new HandlerMethodResolver(resolver);
    if (resourceType() == ResourceType.ITEM) {
        List<ResolvedMethodParameter> actualQueryParams = handlerMethodResolver.methodParameters(
                new HandlerMethod(searchResource.getMethod().getDeclaringClass(), searchResource.getMethod()));
        List<ResolvedMethodParameter> genericParams = FluentIterable
                .from(handlerMethodResolver
                        .methodParameters(new HandlerMethod(searchResource, searchResource.getMethod())))
                .filter(maybeFilterSortParam(searchResource.isSortableResource()))
                .filter(maybeFilterPagingParam(searchResource.isPagingResource())).toList();
        return FluentIterable.from(concat(genericParams, actualQueryParams)).toList();
    } else {//from  w  w  w .  ja  v a  2 s  . com
        return FluentIterable.from(handlerMethodResolver.methodParameters(handlerMethod))
                .transform(toIgnorable()).toList();
    }
}

From source file:springfox.documentation.spring.data.rest.EntitySearchRequestHandler.java

@Override
public ResolvedType getReturnType() {
    if (resourceType() == ResourceType.ITEM) {
        MemberResolver memberResolver = new MemberResolver(resolver);
        ResolvedTypeWithMembers members = memberResolver
                .resolve(resolver.resolve(searchResource.getMethod().getDeclaringClass()), null, null);
        for (ResolvedMethod resolvedMethod : members.getMemberMethods()) {
            if (resolvedMethod.getRawMember().equals(searchResource.getMethod())) {
                return resolvedMethod.getReturnType();
            }/*from   w w w  .  j  a  v  a2s  .  c  o  m*/
        }
        return resolver.resolve(Void.TYPE);
    } else {
        return resolver.resolve(handlerMethod.getReturnType().getParameterType());
    }
}

From source file:springfox.documentation.spring.data.rest.EntityRequestHandler.java

private ResourceType resourceType() {
    if (requestMapping.getPatternsCondition().getPatterns().contains("/{search}")) {
        return ResourceType.ITEM;
    } else {/*from w  ww . j  av a 2  s.co  m*/
        return ResourceType.COLLECTION;
    }
}

From source file:springfox.documentation.spring.data.rest.EntitySearchRequestHandler.java

ResourceType resourceType() {
    Set<String> patterns = requestMapping.getPatternsCondition().getPatterns();
    if (any(patterns, endsWith("/{search}"))) {
        return ResourceType.ITEM;
    } else {// w  w w  . ja v  a  2  s  . c  o  m
        return ResourceType.COLLECTION;
    }
}