Class LayoutSourceString

  • All Implemented Interfaces:
    LayoutSource

    public class LayoutSourceString
    extends AbstractLayoutSource
    The LayoutSourceFile implements the LayoutSource interface by providing using the "location" to be the actual layout definition. This facilitates storing the layout defintion directly in the Style Catalog.
    Since:
    MicroStrategy Web 8.0.0
    • Constructor Detail

      • LayoutSourceString

        public LayoutSourceString()
    • Method Detail

      • getDescription

        public java.lang.String getDescription()
        Gets the description of this layout source object (to be read by someone wishing to use it). This description should include the syntax for a valid location.
        Returns:
        A textual description of this layout source object.
      • retrieveLayoutDefinition

        public LayoutTag retrieveLayoutDefinition​(java.lang.String sourceLocation,
                                                  LayoutParser layoutParser)
                                           throws WebTransformException
        Retrieves an in-memory representation of the layout at the supplied source location. If a layout has already been loaded, it should be returned as is. If there is not already an existing in-memory representation, the layout definition (as a String) should be parsed using the supplied LayoutParser.
        Parameters:
        sourceLocation - The location that the layout definition can be found.
        layoutParser - A layout parser to use, if necessary.
        Returns:
        The in-memory representation of the layout definition.
        Throws:
        WebTransformException - thrown if the layout can not be parsed.
      • saveLayoutDefinition

        public void saveLayoutDefinition​(java.lang.String targetLocation,
                                         LayoutTag layoutDefn)
                                  throws WebTransformException
        Saves the in-memory layout definition back to its persistent storage at the supplied target location.
        Parameters:
        targetLocation - The location where the layout definition should be saved.
        layoutDefn - The in-memory layout definition to save.
        Throws:
        WebTransformException - This exception is thrown if the layout definition could not be saved back to the target location.
      • getLayoutString

        protected java.lang.String getLayoutString​(java.lang.String location)
        Description copied from class: AbstractLayoutSource
        Returns the string representation of a layout definition. The layout cache uses this method to load the layout definition string and then delegates to the layout parser to parse it. The parsed layou definition is cached.
        Specified by:
        getLayoutString in class AbstractLayoutSource
        Parameters:
        location - the layout location, defined in the StyleCatalog XML file.
        Returns:
        the string representation of a layout definition.