Package org.apache.tapestry5.internal.parser

## Class ComponentTemplateImpl

- java.lang.Object
- - org.apache.tapestry5.internal.parser.ComponentTemplateImpl

- All Implemented Interfaces:
    `ComponentTemplate`

      public class ComponentTemplateImpl
      extends java.lang.Object
      implements ComponentTemplate

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ComponentTemplateImpl​(Resource resource, java.util.List<TemplateToken> tokens, java.util.Map<java.lang.String,​Location> componentIds, boolean extension, boolean strictMixinParameters, java.util.Map<java.lang.String,​java.util.List<TemplateToken>> overrides)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.Map<java.lang.String,​Location>` | `getComponentIds()` | Identifies `StartComponentToken`s with a non-blank id, mapping the id to its location (within the template).
    `java.util.Set<java.lang.String>` | `getExtensionPointIds()` | Returns the extension point ids, including both <t:extension-point> and <t:replace>.
    `java.util.List<TemplateToken>` | `getExtensionPointTokens​(java.lang.String extensionPointId)` | Returns a list of tokens associated with an extension point, or null if this template neither defines the extension point nor overrides it.
    `Resource` | `getResource()` | Returns the resource that was parsed to form the template.
    `java.util.List<TemplateToken>` | `getTokens()` | Returns a list of tokens that were parsed from the template.
    `boolean` | `isExtension()` | Returns true if this component template is an extension of its parent class' template.
    `boolean` | `isMissing()` | Returns false.
    `boolean` | `usesStrictMixinParameters()` | Indicates whether lax (the old default) or strict (the new default) mixin parameters are used.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ComponentTemplateImpl

          public ComponentTemplateImpl​(Resource resource,
                                       java.util.List<TemplateToken> tokens,
                                       java.util.Map<java.lang.String,​Location> componentIds,
                                       boolean extension,
                                       boolean strictMixinParameters,
                                       java.util.Map<java.lang.String,​java.util.List<TemplateToken>> overrides)

      Parameters:
        `resource` - the resource from which the template was parsed
        `tokens` - the tokens of the template, a copy of this list will be made
        `componentIds` - ids of components defined in the template
        `extension` - if this template is an extension of a parent-class template
        `strictMixinParameters` - if the template was parsed with the 5.4 DTD and is strict about mixin parameters being fully qualified
        `overrides` - id to list of tokens for that override

  - ### Method Detail

    - #### getResource

          public Resource getResource()

      Description copied from interface: `ComponentTemplate`
      Returns the resource that was parsed to form the template.
      Specified by:
        `getResource` in interface `ComponentTemplate`

    - #### getTokens

          public java.util.List<TemplateToken> getTokens()

      Description copied from interface: `ComponentTemplate`
      Returns a list of tokens that were parsed from the template. The caller should not modify this list.
      Specified by:
        `getTokens` in interface `ComponentTemplate`

    - #### getComponentIds

          public java.util.Map<java.lang.String,​Location> getComponentIds()

      Description copied from interface: `ComponentTemplate`
      Identifies `StartComponentToken`s with a non-blank id, mapping the id to its location (within the template). This is used to report unmatched ids (where the component, or its super-classes, do not define an embedded component).
      Specified by:
        `getComponentIds` in interface `ComponentTemplate`
      See Also:
        `(used to define an embedded component)`

    - #### usesStrictMixinParameters

          public boolean usesStrictMixinParameters()

      Description copied from interface: `ComponentTemplate`
      Indicates whether lax (the old default) or strict (the new default) mixin parameters are used. In strict mode, introduced with the 5.4 template DTD, mixin parameters must be qualified with the mixin name. In prior releases, Tapestry would attempt a search for a fit, and this causes ambiguities that can't be addressed.
      Specified by:
        `usesStrictMixinParameters` in interface `ComponentTemplate`
      Returns:
        true if a 5.4 or later DTD

    - #### isMissing

          public boolean isMissing()

      Returns false.
      Specified by:
        `isMissing` in interface `ComponentTemplate`

    - #### getExtensionPointTokens

          public java.util.List<TemplateToken> getExtensionPointTokens​(java.lang.String extensionPointId)

      Description copied from interface: `ComponentTemplate`
      Returns a list of tokens associated with an extension point, or null if this template neither defines the extension point nor overrides it.
      Specified by:
        `getExtensionPointTokens` in interface `ComponentTemplate`
      Returns:
        list of tokens provided in this template, or null

    - #### getExtensionPointIds

          public java.util.Set<java.lang.String> getExtensionPointIds()

      Description copied from interface: `ComponentTemplate`
      Returns the extension point ids, including both <t:extension-point> and <t:replace>.
      Specified by:
        `getExtensionPointIds` in interface `ComponentTemplate`
      Returns:
        set of extension point ids.

    - #### isExtension

          public boolean isExtension()

      Description copied from interface: `ComponentTemplate`
      Returns true if this component template is an extension of its parent class' template.
      Specified by:
        `isExtension` in interface `ComponentTemplate`