Class TriggerDefinition

  • All Implemented Interfaces:
    Visitable

    @Generated("com.ibm.fhir.tools.CodeGenerator")
    public class TriggerDefinition
    extends Element
    A description of a triggering event. Triggering events can be named events, data events, or periodic, as determined by the type element.
    • Method Detail

      • getType

        public TriggerType getType()
        The type of triggering event.
        Returns:
        An immutable object of type TriggerType that is non-null.
      • getName

        public String getName()
        A formal name for the event. This may be an absolute URI that identifies the event formally (e.g. from a trigger registry), or a simple relative URI that identifies the event in a local context.
        Returns:
        An immutable object of type String that may be null.
      • getTiming

        public Element getTiming()
        The timing of the event (if this is a periodic trigger).
        Returns:
        An immutable object of type Element that may be null.
      • getData

        public List<DataRequirement> getData()
        The triggering data of the event (if this is a data trigger). If more than one data is requirement is specified, then all the data requirements must be true.
        Returns:
        An unmodifiable list containing immutable objects of type DataRequirement that may be empty.
      • getCondition

        public Expression getCondition()
        A boolean-valued expression that is evaluated in the context of the container of the trigger definition and returns whether or not the trigger fires.
        Returns:
        An immutable object of type Expression that may be null.
      • accept

        public void accept​(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
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object