Class BaseFactory

  • All Implemented Interfaces:
    PageParserSelector
    Direct Known Subclasses:
    DefaultFactory

    public abstract class BaseFactory
    extends Factory
    Base Factory implementation. Provides utility methods for implementation.
    Version:
    $Revision: 1.9 $
    Author:
    Joe Walnes
    • Field Detail

      • config

        protected Config config
        ServletConfig or FilterConfig.
      • decoratorMapper

        protected DecoratorMapper decoratorMapper
        Instance of DecoratorMapper. Because it is thread-safe, it can be shared by multiple clients. This is only the last DecoratorMapper in the chain, and all parents will be automatically delegated to it.
      • pageParsers

        protected Map pageParsers
        Map that associates content-types with PageParser instances.
      • excludeUrls

        protected PathMapper excludeUrls
        A map of paths that are excluded from decoration
    • Method Detail

      • getPageParser

        public PageParser getPageParser​(String contentType)
        Create a PageParser suitable for the given content-type.

        For example, if the supplied parameter is text/html a parser shall be returned that can parse HTML accordingly. Returns null if no parser can be found for the supplied content type.

        Specified by:
        getPageParser in interface PageParserSelector
        Specified by:
        getPageParser in class Factory
        Parameters:
        contentType - The MIME content-type of the data to be parsed
        Returns:
        Appropriate PageParser for reading data, or null if no suitable parser was found.
      • isPathExcluded

        public boolean isPathExcluded​(String path)
        Returns true if the supplied path matches one of the exclude URLs specified in sitemesh.xml, otherwise returns false.
        Specified by:
        isPathExcluded in class Factory
        Parameters:
        path -
        Returns:
        whether the path is excluded
      • clearDecoratorMappers

        protected void clearDecoratorMappers()
        Clear all current DecoratorMappers.
      • pushDecoratorMapper

        protected void pushDecoratorMapper​(String className,
                                           Properties properties)
        Push new DecoratorMapper onto end of chain.
      • clearParserMappings

        protected void clearParserMappings()
        Clear all PageParser mappings.
      • mapParser

        protected void mapParser​(String contentType,
                                 String className)
        Map new PageParser to given content-type. contentType = null signifies default PageParser for unknown content-types.
      • addExcludeUrl

        protected void addExcludeUrl​(String path)
      • clearExcludeUrls

        protected void clearExcludeUrls()
        Clears all exclude URLs.