Class HalCachingLinkResolver

    • Constructor Detail

      • HalCachingLinkResolver

        public HalCachingLinkResolver()
    • Method Detail

      • sortResolvedResources

        protected void sortResolvedResources​(List<HalResource<?>> resolvedResources)
        Sort the resolved resources to ensure consistent order of resolved resources.
      • getCache

        protected Cache getCache()
        Returns:
        the cache for this resolver
      • resolveCachedLinks

        protected List<HalResource<?>> resolveCachedLinks​(String[] linkedIds,
                                                          Cache cache,
                                                          List<String> notCachedLinkedIds)
        Returns a list with all resources which are cached.
        Parameters:
        linkedIds - the ids to resolve
        cache - the cache to use
        notCachedLinkedIds - a list with ids which are not found in the cache
        Returns:
        the cached resources
      • putIntoCache

        protected void putIntoCache​(List<HalResource<?>> notCachedResources)
        Put a resource into the cache.
      • getHalResourceClass

        protected abstract Class<?> getHalResourceClass()
        Returns:
        the class of the entity which is resolved
      • getResourceComparator

        protected Comparator<HalResource<?>> getResourceComparator()
        Returns:
        a comparator for this HAL resource if not overridden sorting is skipped
      • resolveNotCachedLinks

        protected abstract List<HalResource<?>> resolveNotCachedLinks​(String[] linkedIds,
                                                                      ProcessEngine processEngine)
        Returns:
        the resolved resources which are currently not cached
      • getResourceId

        protected abstract String getResourceId​(HalResource<?> resource)
        Returns:
        the id which identifies a resource in the cache