Class CandidatePath

  • All Implemented Interfaces:
    java.io.Serializable, Path, Value
    Direct Known Subclasses:
    PCPath

    public class CandidatePath
    extends Val
    implements Path
    A path represents a traversal into fields of a candidate object.
    Author:
    Abe White
    See Also:
    Serialized Form
    • Field Detail

      • _actions

        protected java.util.LinkedList _actions
      • _correlationVar

        protected java.lang.String _correlationVar
    • Constructor Detail

      • CandidatePath

        public CandidatePath()
    • Method Detail

      • get

        public void get​(FieldMetaData field,
                        boolean nullTraversal)
        Traverse into the given field of the current object, and update the current object to that field value.
        Specified by:
        get in interface Path
        nullTraversal - if true, allow traversal through a null field
      • getType

        public java.lang.Class getType()
        Description copied from interface: Value
        Return the expected type for this value, or Object if the type is unknown.
        Specified by:
        getType in interface Value
      • getCandidateType

        protected java.lang.Class getCandidateType()
      • setImplicitType

        public void setImplicitType​(java.lang.Class type)
        Description copied from interface: Value
        Set the implicit type of the value, based on how it is used in the filter. This method is only called on values who return Object from Value.getType().
        Specified by:
        setImplicitType in interface Value
      • last

        public FieldMetaData last()
        Description copied from interface: Path
        Return the last field in the path, or null if the path does not not contain a final field.
        Specified by:
        last in interface Path
      • castTo

        public void castTo​(java.lang.Class type)
        Cast this path to the given type.
      • eval

        protected java.lang.Object eval​(java.lang.Object candidate,
                                        java.lang.Object orig,
                                        StoreContext ctx,
                                        java.lang.Object[] params)
        Description copied from class: Val
        Return this value for the given candidate.
        Specified by:
        eval in class Val
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • get

        public void get​(FieldMetaData fmd,
                        XMLMetaData meta)
        Description copied from interface: Path
        Traverse into the given field that maps to xml column, and update the current object to that field value.
        Specified by:
        get in interface Path
        Parameters:
        fmd - field maps to xml column
        meta - associated xml mapping
      • get

        public void get​(XMLMetaData meta,
                        java.lang.String name)
        Description copied from interface: Path
        Traverse into the gevin xpath name of the current object, and update the current object to that xpath field.
        Specified by:
        get in interface Path
      • getXmlMapping

        public XMLMetaData getXmlMapping()
        Description copied from interface: Path
        Return the current XPath's xmlmapping metadata.
        Specified by:
        getXmlMapping in interface Path
        Returns:
        Return xmlmapping
      • setSchemaAlias

        public void setSchemaAlias​(java.lang.String schemaAlias)
        Description copied from interface: Path
        Set the schema alias (the identification variable) this path is begin with.
        Specified by:
        setSchemaAlias in interface Path
      • getSchemaAlias

        public java.lang.String getSchemaAlias()
        Specified by:
        getSchemaAlias in interface Path
      • setSubqueryContext

        public void setSubqueryContext​(Context conext,
                                       java.lang.String correlationVar)
        Specified by:
        setSubqueryContext in interface Path
      • getCorrelationVar

        public java.lang.String getCorrelationVar()
        Specified by:
        getCorrelationVar in interface Path