View Javadoc
1   /*
2    * Copyright 2018 the original author or authors.
3    *
4    *  Licensed under the Apache License, Version 2.0 (the "License");
5    *  you may not use this file except in compliance with the License.
6    *  You may obtain a copy of the License at
7    *
8    *         http://www.apache.org/licenses/LICENSE-2.0
9    *
10   *  Unless required by applicable law or agreed to in writing, software
11   *  distributed under the License is distributed on an "AS IS" BASIS,
12   *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   *  See the License for the specific language governing permissions and
14   *  limitations under the License.
15   */
16  
17  package org.openehealth.ipf.commons.ihe.core.atna.codes;
18  
19  import lombok.Getter;
20  import org.openehealth.ipf.commons.audit.types.EnumeratedCodedValue;
21  import org.openehealth.ipf.commons.audit.types.EventId;
22  
23  /**
24   * Custom IHE Event IDs
25   *
26   * @author Christian Ohr
27   * @since 3.5
28   */
29  public enum IHEEventIdCode implements EventId, EnumeratedCodedValue<EventId> {
30  
31      /**
32       * Health services scheduled and performed within
33       * an instance or episode of care. This includes
34       * scheduling, initiation, updates or amendments,
35       * performing or completing the act, and
36       * cancellation.
37       */
38      HealthServicesProvisionEvent("IHE0001", "Health Services Provision Event"),
39      /**
40       * Medication orders and administration within an
41       * instance or episode of care. This includes initial
42       * order, dispensing, delivery, and cancellation
43       */
44      MedicationEvent("IHE0002", "Medication Event"),
45      /**
46       * Staffing or participant assignment actions
47       * relevant to the assignment of healthcare
48       * professionals, caregivers attending physician,
49       * residents, medical students, consultants, etc. to a
50       * patient It also includes change in assigned role or
51       * authorization, e.g., relative to healthcare status
52       * change, and de-assignment
53       */
54      PatientCareResourceAssignment("IHE0003", "Patient Care ResourceAssignment"),
55      /**
56       * Specific patient care episodes or problems that
57       * occur within an instance of care. This includes
58       * initial assignment, updates or amendments,
59       * resolution, completion, and cancellation.
60       */
61      PatientCareEpisode("IHE0004", "Patient Care Episode"),
62      /**
63       * Patient association with a care protocol. This
64       * includes initial assignment, scheduling, updates
65       * or amendments, completion, and cancellation.
66       */
67      PatientCareProtocol("IHE0005", "Patient Care Protocol");
68  
69      @Getter
70      private EventId value;
71  
72      IHEEventIdCode(String code, String displayName) {
73          this.value = EventId.of(code, "IHE", displayName);
74      }
75  
76  }