Interface PrismReferenceValue

    • Method Detail

      • getOid

        String getOid()
        OID of the object that this reference refers to (reference target). May return null, but the reference is in that case incomplete and unusable.
        Returns:
        the target oid
      • setOid

        void setOid​(String oid)
      • getObject

        <O extends ObjectablePrismObject<O> getObject()
        Returns object that this reference points to. The object is supposed to be used for caching and optimizations. Only oid and type of the object really matters for the reference. The object is transient. It will NOT be serialized. Therefore the client must expect that the object can disappear when serialization boundary is crossed. The client must expect that the object is null.
      • getTargetType

        QName getTargetType()
        Returns XSD type of the object that this reference refers to. It may be used in XPath expressions and similar filters. May return null if the type name is not set.
        Returns:
        the target type name
      • setTargetType

        void setTargetType​(QName targetType)
      • setTargetType

        void setTargetType​(QName targetType,
                           boolean allowEmptyNamespace)
        Parameters:
        allowEmptyNamespace - This is an ugly hack. See comment in DOMUtil.validateNonEmptyQName.
      • getTargetName

        PolyString getTargetName()
        Returns cached name of the target object. This is a ephemeral value. It may be computed at object retrieval time or it may not be present at all. This is NOT an authoritative information. Setting it or changing it will not influence the reference meaning. OID is the only authoritative linking mechanism.
        Returns:
        cached name of the target object.
      • setTargetName

        void setTargetName​(PolyString name)
      • getTargetTypeCompileTimeClass

        Class<Objectable> getTargetTypeCompileTimeClass()
      • getRelation

        QName getRelation()
      • setRelation

        void setRelation​(QName relation)
      • getDescription

        String getDescription()
      • setDescription

        void setDescription​(String description)
      • toCanonical

        PrismReferenceValue toCanonical()
        Returns a version of this value that is canonical, that means it has the minimal form. E.g. it will have only OID and no object.
      • debugDump

        String debugDump​(int indent,
                         boolean expandObject)
      • getRealValue

        @Nullable
        @Nullable Referencable getRealValue()
        Description copied from interface: PrismValue
        Returns the statically-typed "real value". TODO specify when exactly the returned value can be null. TODO decide for containers: they throw an exception if the value is not statically typed.
        Specified by:
        getRealValue in interface PrismValue