Package org.apache.myfaces.debug

This package defines types for myfaces debuggging (not Myfaces itself but facelets files, Myfaces lifecycle etc.)

See:
          Description

Interface Summary
ComponentAware Identification inferface for types that know about UIComponent.
LocationAndTagAttributeAware Identification inferface for types that know about Location and XML attribute name/value pair.
LocationAware Identification inferface for types that know about Location.
MyfacesLogKeyAware Identification inferface for types that know about MyfacesLogKey.
MyfacesLogMessageAware Identification inferface for types that know about MyfacesLogMessage.
TagAttributeAware Identification inferface for types that know about TagAttribute.
TagAware Identification inferface for types that know about Tag.
 

Package org.apache.myfaces.debug Description

This package defines types for myfaces debuggging (not Myfaces itself but facelets files, Myfaces lifecycle etc.)

Purpose of Aware interfaces

Identify object that are capable to "know something" about important classes in JSF/Myfaces.

For example, the most important type in JSF is UIComponent -> ComponentAware; In Facelets Location (line/column in facelets file) is important -> LocationAware.

Example of usage. JSF/myfaces code throw many different kinds of exceptions. In exception handlig code client can use instanceof

    if (e instanceof ComponentAware)
    {
        ComponentAware componentAware = (ComponentAware) e;
    }

to check if info about component is available.

Note: there is a Aware interface for each important type. Have all information in one big interface is not suitable, because we need to distinguish in client code:
  1. if type is capable of knowing (with instanceof)
  2. if instance has that information (componentAware.getComponent() != null)



Copyright © 2014 The Apache Software Foundation. All Rights Reserved.