Class SpringResourceIncludeResolver

java.lang.Object
dev.jcputney.mjml.spring.SpringResourceIncludeResolver
All Implemented Interfaces:
dev.jcputney.mjml.IncludeResolver

public class SpringResourceIncludeResolver extends Object implements dev.jcputney.mjml.IncludeResolver
IncludeResolver that uses Spring's ResourceLoader to resolve include paths. Supports classpath and file prefixes by default.
  • Constructor Details

    • SpringResourceIncludeResolver

      public SpringResourceIncludeResolver(org.springframework.core.io.ResourceLoader resourceLoader, String baseLocation)
      Creates a resolver with the given resource loader and base location.
      Parameters:
      resourceLoader - the Spring resource loader
      baseLocation - the base location for relative paths (e.g. "classpath:mjml/")
    • SpringResourceIncludeResolver

      public SpringResourceIncludeResolver(org.springframework.core.io.ResourceLoader resourceLoader, String baseLocation, Set<String> allowedSchemes)
      Creates a resolver with the given resource loader, base location, and allowed schemes.
      Parameters:
      resourceLoader - the Spring resource loader
      baseLocation - the base location for relative paths (e.g. "classpath:mjml/")
      allowedSchemes - allowed resource schemes (e.g. classpath, file)
    • SpringResourceIncludeResolver

      public SpringResourceIncludeResolver(org.springframework.core.io.ResourceLoader resourceLoader)
      Creates a resolver with the given resource loader and default base location.
      Parameters:
      resourceLoader - the Spring resource loader
  • Method Details

    • resolve

      public String resolve(String path, dev.jcputney.mjml.ResolverContext context)
      Resolves include content via Spring resource locations. Relative paths are resolved against baseLocation.
      Specified by:
      resolve in interface dev.jcputney.mjml.IncludeResolver
      Throws:
      dev.jcputney.mjml.MjmlIncludeException - on disallowed scheme, missing resource, or read failure