Package com.iizix.prop.ui
Class UIAnnotationReferenceProcessor
java.lang.Object
com.iizix.prop.ui.UIAnnotationReferenceProcessor
- All Implemented Interfaces:
IAnnotationReferenceProcessor<UIPanelBase,UIComp>
public class UIAnnotationReferenceProcessor extends Object implements IAnnotationReferenceProcessor<UIPanelBase,UIComp>
The UI reference processor used for the @UIRef annotation.
- Author:
- Christopher Mindus
Constructor Summary
ConstructorsMethod Summary
Modifier and TypeMethodDescriptiongetReferencePath(GProp<?> comp) Returns the relative reference path of a component.Returns the class for the scope reference.resolveReference(GProp<?> scope, String relativeReference) Resolves a reference name to a UI component.
Constructor Details
UIAnnotationReferenceProcessor
public UIAnnotationReferenceProcessor()
Method Details
getScopeClass
Returns the class for the scope reference.- Specified by:
getScopeClassin interfaceIAnnotationReferenceProcessor<UIPanelBase,UIComp> - Returns:
- The scope class, or null if not a scoped annotation.
resolveReference
public UIComp resolveReference(GProp<?> scope, String relativeReference) throws PropTypeException, NotFoundException Resolves a reference name to a UI component.- Specified by:
resolveReferencein interfaceIAnnotationReferenceProcessor<UIPanelBase,UIComp> - Parameters:
scope- The panel in scope, should be instance of UIPanelBase.relativeReference- The relative name from the panel.- Returns:
- The component found, never null.
- Throws:
PropTypeException- If the property is not found or if the property is of wrong type.NotFoundException- If the component is not found.
getReferencePath
Returns the relative reference path of a component.- Specified by:
getReferencePathin interfaceIAnnotationReferenceProcessor<UIPanelBase,UIComp> - Parameters:
comp- The component.- Returns:
- The path.
- Throws:
IllegalStateException- If the tree is invalid.PropTypeException- If the property type is invalid.