Class Element

java.lang.Object
com.almis.awe.model.entities.Element
All Implemented Interfaces:
Copyable, XMLNode, Serializable
Direct Known Subclasses:
AbstractAction, Component, Dependency, DependencyElement, GroupHeader, Include, Menu, Message, Screen, Tag, View

public abstract class Element extends Object implements XMLNode, Copyable
Element decorator Used to parse all tags from screen XML files with XStream
Author:
Pablo GARCIA - 24/JUN/2010
See Also:
  • Constructor Details

    • Element

      public Element()
  • Method Details

    • getElementList

      public <T extends Element> List<T> getElementList()
      Returns the children element list
      Type Parameters:
      T - element list
      Returns:
      Children List
    • addElement

      public <T extends Element, G extends Element> G addElement(T element)
      Add an element to the list
      Type Parameters:
      T - element object type
      G - return element type
      Parameters:
      element - element to add
      Returns:
      element
    • generateTemplate

      public org.stringtemplate.v4.ST generateTemplate(org.stringtemplate.v4.STGroup group)
      Generates the output HTML of the element
      Parameters:
      group - String Template Group
      Returns:
      Code
    • generateHelpTemplate

      public org.stringtemplate.v4.ST generateHelpTemplate(org.stringtemplate.v4.STGroup group, String label, boolean developers)
      Generates the output HTML of the element
      Parameters:
      group - String Template Group
      label - Parent label
      developers - Help for developers
      Returns:
      Code
    • generateHelpTemplate

      public org.stringtemplate.v4.ST generateHelpTemplate(org.stringtemplate.v4.STGroup group, String label, String templateName, boolean developers)
      Generates the help template of the element
      Parameters:
      group - String Template Group
      label - Parent label
      templateName - String Template name
      developers - Help for developers
      Returns:
      Code
    • getTemplate

      public String getTemplate()
      Retrieve element template (To be overwritten)
      Returns:
      Element template
    • getHelpTemplate

      public String getHelpTemplate()
      Retrieve help template
      Returns:
      Help template
    • getElementsByType

      @SafeVarargs public final <T> List<T> getElementsByType(Class<T>... elementClassList)
      Returns the children element list of a desired TYPE
      Type Parameters:
      T - element class type
      Parameters:
      elementClassList - Element class
      Returns:
      Children List
    • getElementsByType

      public <T> List<T> getElementsByType(boolean processDialog, Class<T>... elementClassList)
      Returns the children element list of a desired TYPE
      Type Parameters:
      T - element class type
      Parameters:
      elementClassList - element class
      processDialog - flag to check dialog elements
      Returns:
      Children List
    • getChildrenByType

      @SafeVarargs public final <T> List<T> getChildrenByType(Class<T>... elementClassList)
      Returns the children element list of a desired TYPE
      Type Parameters:
      T - element class type
      Parameters:
      elementClassList - element class
      Returns:
      Children List
    • getElementsById

      public List<Element> getElementsById(String identifier)
      Returns the children element list of a desired id
      Parameters:
      identifier - Element identifier
      Returns:
      Children List
    • getReportStructure

      public List<Element> getReportStructure(List<Element> printElementList, String label, com.fasterxml.jackson.databind.node.ObjectNode parameters, String dataSuffix)
      Get print element list (to be overwritten)
      Parameters:
      printElementList - Print element list
      label - Previous label
      parameters - Parameters
      dataSuffix - data suffix
      Returns:
      Print bean
    • getElementKey

      public String getElementKey()
      Specified by:
      getElementKey in interface XMLNode
      Returns:
      the elementKey