Class Consent.Provision

  • All Implemented Interfaces:
    Visitable
    Enclosing class:
    Consent

    public static class Consent.Provision
    extends BackboneElement
    An exception to the base policy of this consent. An exception can be an addition or removal of access permissions.
    • Method Detail

      • getType

        public ConsentProvisionType getType()
        Action to take - permit or deny - when the rule conditions are met. Not permitted in root rule, required in all nested rules.
        Returns:
        An immutable object of type ConsentProvisionType that may be null.
      • getPeriod

        public Period getPeriod()
        The timeframe in this rule is valid.
        Returns:
        An immutable object of type Period that may be null.
      • getActor

        public java.util.List<Consent.Provision.Actor> getActor()
        Who or what is controlled by this rule. Use group to identify a set of actors by some property they share (e.g. 'admitting officers').
        Returns:
        An unmodifiable list containing immutable objects of type Consent.Provision.Actor that may be empty.
      • getAction

        public java.util.List<CodeableConcept> getAction()
        Actions controlled by this Rule.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getSecurityLabel

        public java.util.List<Coding> getSecurityLabel()
        A security label, comprised of 0..* security label fields (Privacy tags), which define which resources are controlled by this exception.
        Returns:
        An unmodifiable list containing immutable objects of type Coding that may be empty.
      • getPurpose

        public java.util.List<Coding> getPurpose()
        The context of the activities a user is taking - why the user is accessing the data - that are controlled by this rule.
        Returns:
        An unmodifiable list containing immutable objects of type Coding that may be empty.
      • getClazz

        public java.util.List<Coding> getClazz()
        The class of information covered by this rule. The type can be a FHIR resource type, a profile on a type, or a CDA document, or some other type that indicates what sort of information the consent relates to.
        Returns:
        An unmodifiable list containing immutable objects of type Coding that may be empty.
      • getCode

        public java.util.List<CodeableConcept> getCode()
        If this code is found in an instance, then the rule applies.
        Returns:
        An unmodifiable list containing immutable objects of type CodeableConcept that may be empty.
      • getDataPeriod

        public Period getDataPeriod()
        Clinical or Operational Relevant period of time that bounds the data controlled by this rule.
        Returns:
        An immutable object of type Period that may be null.
      • getData

        public java.util.List<Consent.Provision.Data> getData()
        The resources controlled by this rule if specific resources are referenced.
        Returns:
        An unmodifiable list containing immutable objects of type Consent.Provision.Data that may be empty.
      • getProvision

        public java.util.List<Consent.Provision> getProvision()
        Rules which provide exceptions to the base rule or subrules.
        Returns:
        An unmodifiable list containing immutable objects of type Consent.Provision that may be empty.
      • accept

        public void accept​(java.lang.String elementName,
                           int elementIndex,
                           Visitor visitor)
        Description copied from interface: Visitable
        Accept a Visitor and invoke the appropriate visit methods. A typical implementation would look like this:
         if (visitor.preVisit(this)) {
             visitor.visitStart(elementName, elementIndex, this);
             if (visitor.visit(elementName, elementIndex, this)) {
                 // visit children
             }
             visitor.visitEnd(elementName, elementIndex, this);
             visitor.postVisit(this);
         }
         
        Specified by:
        accept in interface Visitable
        Specified by:
        accept in class AbstractVisitable
        Parameters:
        elementName - the name of the element in the context of this visit
        elementIndex - the index of the element in a list or -1 if it is not contained within a List
        visitor - the visitor to use
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

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