Class DefaultItemConverter

  • All Implemented Interfaces:
    org.craftercms.commons.converters.Converter<SiteItem,​NavItem>

    public class DefaultItemConverter
    extends Object
    implements org.craftercms.commons.converters.Converter<SiteItem,​NavItem>
    Default converter from SiteItem to NavItem. To generate the URL, it uses a URL transformer, and to generate the navigation label it uses the nav label element in the content, the internal name element or the file name, in that order. If the SiteItem has no content, null is returned (items with no content, like folders with no index.xml, should not be navigable).
    Author:
    avasquez
    • Field Detail

      • navLabelXPath

        protected String navLabelXPath
      • internalNameXPath

        protected String internalNameXPath
      • storeUrlToRenderUrlTransformerName

        protected String storeUrlToRenderUrlTransformerName
    • Constructor Detail

      • DefaultItemConverter

        public DefaultItemConverter()
    • Method Detail

      • setNavLabelXPath

        public void setNavLabelXPath​(String navLabelXPath)
      • setInternalNameXPath

        public void setInternalNameXPath​(String internalNameXPath)
      • setStoreUrlToRenderUrlTransformerName

        public void setStoreUrlToRenderUrlTransformerName​(String storeUrlToRenderUrlTransformerName)
      • setUrlTransformationService

        public void setUrlTransformationService​(UrlTransformationService urlTransformationService)
      • getSourceClass

        public Class<?> getSourceClass()
        Specified by:
        getSourceClass in interface org.craftercms.commons.converters.Converter<SiteItem,​NavItem>
      • getTargetClass

        public Class<?> getTargetClass()
        Specified by:
        getTargetClass in interface org.craftercms.commons.converters.Converter<SiteItem,​NavItem>
      • convert

        public NavItem convert​(SiteItem siteItem)
        Specified by:
        convert in interface org.craftercms.commons.converters.Converter<SiteItem,​NavItem>
      • getNavigationLabel

        protected String getNavigationLabel​(SiteItem siteItem)
      • getNavigationUrl

        protected String getNavigationUrl​(SiteItem siteItem)