com.microfocus.awm.meta.interfaces

## Interface IStructureComponent

- All Known Implementing Classes:
    JsonStructureAttribute, JsonStructureElement, TableColumn

      public interface IStructureComponent

  Component of a structure which usually has either a static value or is mapped to a property.
  Author:
    RalfP

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `<T> T` | `getAttribute(java.lang.String pName, java.lang.Class<T> pAttributeClass)` Gets relevant attribute for specific IStructureType component
    `java.util.List<IStructureComponent>` | `getChildren()` Gets the component's children.
    `java.lang.String` | `getName()` The name of the component.
    `Property` | `getProperty()` Gets the property this component has been mapped to.
    `java.lang.String` | `getStaticValue()` A static value component value.
    `boolean` | `isMandatory()` Indicates whether the component is mandatory in the structure.

- - ### Method Detail

    - #### getName

          java.lang.String getName()

      The name of the component.
      Returns:
        the component name or `null`

    - #### getStaticValue

          java.lang.String getStaticValue()

      A static value component value.
      Returns:
        the static value or `null`

    - #### getProperty

          Property getProperty()

      Gets the property this component has been mapped to.
      Returns:
        the mapped property or `null`, if the component is not mapped to a property

    - #### getChildren

          java.util.List<IStructureComponent> getChildren()

      Gets the component's children.
      Returns:
        children of the element. Can be `null` if the structure component doesn't support children.

    - #### getAttribute

          <T> T getAttribute(java.lang.String pName,
                             java.lang.Class<T> pAttributeClass)

      Gets relevant attribute for specific IStructureType component
      Parameters:
        `pName` - the name of the attribute
        `pAttributeClass` - the type of the attribute value
      Returns:
        the attribute value if there is defined attribute with the specified name which is relevant to this component, otherwise `null`

    - #### isMandatory

          boolean isMandatory()

      Indicates whether the component is mandatory in the structure. Mandatory attributes will cause an exception if no value is available at runtime.
      Returns:
        `true` if this component is mandatory in the structure, otherwise `false`

Copyright © 2015 Micro Focus GmbH. All rights reserved.