Class Include

  • All Implemented Interfaces:
    Serializable

    public class Include
    extends Object
    implements Serializable
    Represents a FHIR resource path specification, e.g. Patient:name

    Note on equality: This class uses value and the recurse properties to test equality. Prior to HAPI 1.2 (and FHIR DSTU2) the recurse property did not exist, so this may merit consideration when upgrading servers.

    See Also:
    Serialized Form
    • Constructor Detail

      • Include

        public Include​(String theValue)
        Constructor for non-recursive include
        Parameters:
        theValue - The _include value, e.g. "Patient:name"
      • Include

        public Include​(String theValue,
                       boolean theIterate)
        Constructor for an include
        Parameters:
        theValue - The _include value, e.g. "Patient:name"
        theIterate - Should the include recurse
      • Include

        public Include​(String theValue,
                       boolean theIterate,
                       boolean theImmutable)
        Constructor for an include
        Parameters:
        theValue - The _include value, e.g. "Patient:name"
        theIterate - Should the include recurse
    • Method Detail

      • asNonRecursive

        public Include asNonRecursive()
        Creates a copy of this include with non-recurse behaviour
      • asRecursive

        public Include asRecursive()
        Creates a copy of this include with recurse behaviour
      • getParamType

        public String getParamType()
        Returns the portion of the value before the first colon
      • getParamName

        public String getParamName()
        Returns the portion of the value after the first colon but before the second colon
      • getParamTargetType

        public String getParamTargetType()
        Returns the portion of the string after the second colon, or null if there are not two colons in the value.
      • getValue

        public String getValue()
      • isLocked

        public boolean isLocked()
        Is this object locked?
      • isRecurse

        public boolean isRecurse()
      • setRecurse

        public Include setRecurse​(boolean theRecurse)
        Should this include recurse
        Returns:
        Returns a reference to this for easy method chaining
      • setValue

        public void setValue​(String theValue)
      • toLocked

        public Include toLocked()
        Return a new
      • withType

        public Include withType​(String theResourceType)
        Creates and returns a new copy of this Include with the given type. The following table shows what will be returned:
        Initial Contents theResourceType Output
        Patient:careProvider Organization Patient:careProvider:Organization
        Patient:careProvider:Practitioner Organization Patient:careProvider:Organization
        Patient (any) IllegalStateException
        Parameters:
        theResourceType - The resource type (e.g. "Organization")
        Returns:
        A new copy of the include. Note that if this include is locked, the returned include will be too