Class ThemeFileURLPathResolver

java.lang.Object
org.springframework.web.servlet.resource.AbstractResourceResolver
org.springframework.web.servlet.resource.PathResourceResolver
com.broadleafcommerce.theme.web.resource.AbstractThemeFileResourceResolver
com.broadleafcommerce.theme.web.resource.ThemeFileURLPathResolver
All Implemented Interfaces:
org.springframework.core.Ordered, org.springframework.web.servlet.resource.ResourceResolver

@Component("blThemeFileUrlPathResolver") public class ThemeFileURLPathResolver extends AbstractThemeFileResourceResolver implements org.springframework.core.Ordered
A ResourceResolver that is used solely to modify URL names of theme resources that are stored in the database.

It works with ThemeFileResourceResolver which adds the capability to resolve URL names from the file-system as well as the ability to actually resolve the resources (versus just the URLs)

These two components were not combined into a single resolver in order to allow for the introduction of a CachingResourceResolver in between the two steps.

Since:
Broadleaf 4.0
Author:
Brian Polster
  • Field Details

    • LOG

      protected static final org.apache.commons.logging.Log LOG
    • bundlingService

      protected org.broadleafcommerce.common.resource.service.ResourceBundlingService bundlingService
    • blcContextUtil

      protected org.broadleafcommerce.common.web.resource.BroadleafContextUtil blcContextUtil
    • resourceVersioningEnabled

      @Value("${resource.versioning.enabled:true}") protected boolean resourceVersioningEnabled
  • Constructor Details

    • ThemeFileURLPathResolver

      public ThemeFileURLPathResolver()
  • Method Details

    • resolveUrlPathInternal

      protected String resolveUrlPathInternal(String orginalResourcePath, List<? extends org.springframework.core.io.Resource> locations, org.springframework.web.servlet.resource.ResourceResolverChain chain)
      Overrides:
      resolveUrlPathInternal in class org.springframework.web.servlet.resource.PathResourceResolver
    • resolveResourceInternal

      protected org.springframework.core.io.Resource resolveResourceInternal(jakarta.servlet.http.HttpServletRequest request, String requestPath, List<? extends org.springframework.core.io.Resource> locations, org.springframework.web.servlet.resource.ResourceResolverChain chain)
      Overrides:
      resolveResourceInternal in class org.springframework.web.servlet.resource.PathResourceResolver
    • getOrder

      public int getOrder()
      Specified by:
      getOrder in interface org.springframework.core.Ordered
    • setOrder

      public void setOrder(int order)
    • extractVersionFromResolvedResource

      protected int extractVersionFromResolvedResource(String resolvedResourcePath)
      Lifted from "org.springframework.web.servlet.resource.FileNameVersionPathStrategy" as this functionality was protected.
      Parameters:
      resolvedResourcePath -
      Returns: