Class AbstractFixedVirtualizedBaseRelativeReference<TARGET extends IPropCnr>

All Implemented Interfaces:
EventListener, IGProp<ReferenceString>, IPropReference, IReferencingGProp, Cloneable
Direct Known Subclasses:
ScreenFieldReference

public abstract class AbstractFixedVirtualizedBaseRelativeReference<TARGET extends IPropCnr> extends FixedVirtualizedAbstractReference<TARGET>
The Base Relative Reference property class hold the reference to another property in the same base container. The reference is fixed when it's

When virtualizing this property reference, the referenced target from the original is "burned in" as a fixed value for the virtualized copy. This class is typically used for references that cannot be modified dynamically, e.g. a data connector,

This relative referencing can be done with acceptance of different types of classes. When constructing the relative reference, the PropCnr must be set.

Author:
Christopher Mindus
  • Constructor Details

    • AbstractFixedVirtualizedBaseRelativeReference

      protected AbstractFixedVirtualizedBaseRelativeReference()
      Creates a Base Relative Reference property with no name and with a null value.
    • AbstractFixedVirtualizedBaseRelativeReference

      public AbstractFixedVirtualizedBaseRelativeReference(Atom propertyAtom)
      Creates a Base Relative Reference property with the specified name with a null value.
      Parameters:
      propertyAtom - the property atom.
    • AbstractFixedVirtualizedBaseRelativeReference

      public AbstractFixedVirtualizedBaseRelativeReference(Atom propertyAtom, String newValue)
      Creates a Base Relative Reference property with the specified name and value.
      Parameters:
      propertyAtom - the property atom.
      newValue - the new string value for the property.
  • Method Details

    • doPostResolve

      protected boolean doPostResolve()
      Returns if resolving of this reference should be done in post- (true) or pre-stage (false).
      Overrides:
      doPostResolve in class AbstractReference<TARGET extends IPropCnr>
      Returns:
      true by default, i.e. in post-mode once main references are resolved.
    • getLookupPropReference

      protected String getLookupPropReference(ReferenceString name)
      Creates the reference string to look-up from the ReferenceString. Override this method for e.g. Base or Fixed Relative referencing.
      Overrides:
      getLookupPropReference in class AbstractReference<TARGET extends IPropCnr>
      Parameters:
      name - The reference name.
      Returns:
      The property reference string to look-up.
    • setLookedUpReference

      protected String setLookedUpReference(String name)
      Sets the reference found that also has been validated. This method gives the opportunity for a subclass to remove e.g. the Base or Fixed Relative reference from the string start.
      Overrides:
      setLookedUpReference in class AbstractReference<TARGET extends IPropCnr>
      Parameters:
      name - The full reference.
      Returns:
      The reference to set in this property as ReferenceString.
    • validateReferenceScope

      protected String validateReferenceScope(TARGET property)
      Called when the a property container has been renamed or moved in order to perform validation of the reference, e.g. if a base property has been moved out of scope. The implementor can assign or clear property errors by returning the error string.
      Overrides:
      validateReferenceScope in class AbstractReference<TARGET extends IPropCnr>
      Parameters:
      property - Property to validate the scope of, i.e. the referenced property.
      Returns:
      The error message, or null for valid. Default implementation returns null.
    • getScopeErrorMessage

      protected String getScopeErrorMessage()
      Gets the error message when the base container doesn't validate scope. Override to produce a better error message for the specialized reference implementation.
      Returns:
      "Target reference is not a child of the base property container".