@Override public boolean hasSingleElement(Resources<?> value) { return value.getContent().size() == 1; }
@Override public boolean hasSingleElement(Resources<?> value) { return value.getContent().size() == 1; }
@Override public boolean isEmpty(Resources<?> value) { return value.getContent().size() == 0; }
@Override public boolean hasSingleElement(Resources<?> resources) { return resources.getContent().size() == 1; }
@Override public String toString() { return String.format("Resources { content: %s, %s }", getContent(), super.toString()); }
/** * Convert {@link Resources} into a list of {@link UberData}, with each item nested in a sub-UberData. * * @param resources * @return */ static List<UberData> extractLinksAndContent(Resources<?> resources) { List<UberData> data = extractLinks(resources); data.addAll(resources.getContent().stream() .map(UberData::doExtractLinksAndContent) .map(uberData -> new UberData().withData(uberData)) .collect(Collectors.toList())); return data; }
@Override public PagedResources<?> deserialize(JsonParser p, DeserializationContext ctxt) throws IOException { JavaType rootType = JacksonHelper.findRootType(this.contentType); UberDocument doc = p.getCodec().readValue(p, UberDocument.class); Resources<?> resources = extractResources(doc, rootType, this.contentType); PageMetadata pageMetadata = extractPagingMetadata(doc); return new PagedResources<>(resources.getContent(), pageMetadata, resources.getLinks()); }
Collection<?> content = resources.getContent();
@ResponseBody @SuppressWarnings({ "unchecked" }) @RequestMapping(value = BASE_MAPPING, method = RequestMethod.GET, produces = { "application/x-spring-data-compact+json", "text/uri-list" }) public Resources<?> getCollectionResourceCompact(@QuerydslPredicate RootResourceInformation resourceinformation, DefaultedPageable pageable, Sort sort, PersistentEntityResourceAssembler assembler) throws ResourceNotFoundException, HttpRequestMethodNotSupportedException { Resources<?> resources = getCollectionResource(resourceinformation, pageable, sort, assembler); List<Link> links = new ArrayList<Link>(resources.getLinks()); for (Resource<?> resource : ((Resources<Resource<?>>) resources).getContent()) { PersistentEntityResource persistentEntityResource = (PersistentEntityResource) resource; links.add(resourceLink(resourceinformation, persistentEntityResource)); } if (resources instanceof PagedResources) { return new PagedResources<Object>(Collections.emptyList(), ((PagedResources<?>) resources).getMetadata(), links); } else { return new Resources<Object>(Collections.emptyList(), links); } }
Collection<?> content = resources.getContent();
if (resource instanceof Resources && ((Resources<?>) resource).getContent() != null) { for (Object obj : ((Resources<?>) resource).getContent()) { if (null != obj && obj instanceof Resource) { Resource<?> res = (Resource<?>) obj;
/** * Invokes all {@link ResourceProcessor} instances registered for the type of the given value and reference type. * * @param value must not be {@literal null}. * @param referenceType must not be {@literal null}. * @return */ @SuppressWarnings("unchecked") public <T extends ResourceSupport> T invokeProcessorsFor(T value, ResolvableType referenceType) { Assert.notNull(value, "Value must not be null!"); Assert.notNull(referenceType, "Reference type must not be null!"); // For Resources implementations, process elements first if (ResourceProcessorHandlerMethodReturnValueHandler.RESOURCES_TYPE.isAssignableFrom(referenceType)) { Resources<?> resources = (Resources<?>) value; ResolvableType elementTargetType = ResolvableType.forClass(Resources.class, referenceType.getRawClass()) .getGeneric(0); List<Object> result = new ArrayList<>(resources.getContent().size()); for (Object element : resources) { ResolvableType elementType = ResolvableType.forClass(element.getClass()); if (!getRawType(elementTargetType).equals(elementType.getRawClass())) { elementTargetType = elementType; } result.add(invokeProcessorsFor(element, elementTargetType)); } ReflectionUtils.setField(ResourceProcessorHandlerMethodReturnValueHandler.CONTENT_FIELD, resources, result); } return (T) invokeProcessorsFor((Object) value, referenceType); }
/** * Invokes all {@link ResourceProcessor} instances registered for the type of the given value and reference type. * * @param value must not be {@literal null}. * @param referenceType must not be {@literal null}. * @return */ @SuppressWarnings("unchecked") public <T extends ResourceSupport> T invokeProcessorsFor(T value, ResolvableType referenceType) { Assert.notNull(value, "Value must not be null!"); Assert.notNull(referenceType, "Reference type must not be null!"); // For Resources implementations, process elements first if (ResourceProcessorHandlerMethodReturnValueHandler.RESOURCES_TYPE.isAssignableFrom(referenceType)) { Resources<?> resources = (Resources<?>) value; ResolvableType elementTargetType = ResolvableType.forClass(Resources.class, referenceType.getRawClass()) .getGeneric(0); List<Object> result = new ArrayList<Object>(resources.getContent().size()); for (Object element : resources) { ResolvableType elementType = ResolvableType.forClass(element.getClass()); if (!getRawType(elementTargetType).equals(elementType.getRawClass())) { elementTargetType = elementType; } result.add(invokeProcessorsFor(element, elementTargetType)); } ReflectionUtils.setField(ResourceProcessorHandlerMethodReturnValueHandler.CONTENT_FIELD, resources, result); } return (T) invokeProcessorsFor((Object) value, referenceType); }
private static List<CollectionJsonItem<?>> resourcesToCollectionJsonItems(Resources<?> resources) { return resources.getContent().stream() .map(content -> { if (ClassUtils.isAssignableValue(Resource.class, content)) { Resource resource = (Resource) content; return new CollectionJsonItem<>() .withHref(resource.getRequiredLink(IanaLinkRelation.SELF.value()).getHref()) .withLinks(withoutSelfLink(resource.getLinks())) .withRawData(resource.getContent()); } else { return new CollectionJsonItem<>().withRawData(content); } }) .collect(Collectors.toList()); }
public Collection<Deployer> platformList() { return this.skipperClient.listDeployers().getContent(); } }
@HystrixCommand(fallbackMethod = "fallback") @RequestMapping(method = RequestMethod.GET, value = "/names") public Collection<String> names() { return this.reservationReader .read() .getContent() .stream() .map(Reservation::getReservationName) .collect(Collectors.toList()); }
public void undeployStream(String streamName) { Resources<PackageMetadata> packageMetadataResources = this.skipperClient.search(streamName, false); if (!packageMetadataResources.getContent().isEmpty()) { try { this.skipperClient.delete(streamName, true); } catch (ReleaseNotFoundException e) { logger.info(String.format("Release not found for %s. Deleting the package %s", streamName, streamName)); this.skipperClient.packageDelete(streamName); } } }
public void undeployStream(String streamName) { Resources<PackageMetadata> packageMetadataResources = this.skipperClient.search(streamName, false); if (!packageMetadataResources.getContent().isEmpty()) { try { this.skipperClient.delete(streamName, true); } catch (ReleaseNotFoundException e) { logger.info(String.format("Release not found for %s. Deleting the package %s", streamName, streamName)); this.skipperClient.packageDelete(streamName); } } }
public Iterable<Ingredient> getAllIngredientsWithTraverson() { ParameterizedTypeReference<Resources<Ingredient>> ingredientType = new ParameterizedTypeReference<Resources<Ingredient>>() {}; Resources<Ingredient> ingredientRes = traverson .follow("ingredients") .toObject(ingredientType); return ingredientRes.getContent(); }
@ShellMethod(key = "platform list", value = "List platforms") public Table list() { Resources<Deployer> repositoryResources = this.skipperClient.listDeployers(); LinkedHashMap<String, Object> headers = new LinkedHashMap<>(); headers.put("name", "Name"); headers.put("type", "Type"); headers.put("description", "Description"); TableModel model = new BeanListTableModel<>(repositoryResources.getContent(), headers); TableBuilder tableBuilder = new TableBuilder(model); return TableUtils.applyStyle(tableBuilder).build(); }