83943a1f389edb229b94963b57f3ec37544cd12d
[controller.git] / opendaylight / md-sal / sal-common-impl / src / main / java / org / opendaylight / controller / md / sal / common / impl / service / DataChangeEventImpl.java
1 package org.opendaylight.controller.md.sal.common.impl.service;
2
3 import java.util.Map;
4 import java.util.Set;
5
6 import org.opendaylight.controller.md.sal.common.api.data.DataChange;
7 import org.opendaylight.controller.md.sal.common.api.data.DataChangeEvent;
8 import org.opendaylight.yangtools.concepts.Immutable;
9 import org.opendaylight.yangtools.concepts.Path;
10
11 public class DataChangeEventImpl<P extends Path<P>, D> implements DataChangeEvent<P, D>, Immutable {
12
13     private final DataChange<P, D> dataChange;
14
15     private final D originalConfigurationSubtree;
16
17
18     private final D originalOperationalSubtree;
19     private final D updatedOperationalSubtree;
20     private final D updatedConfigurationSubtree;
21
22     
23     
24     
25     public DataChangeEventImpl(DataChange<P, D> dataChange, D originalConfigurationSubtree,
26             D originalOperationalSubtree, D updatedOperationalSubtree, D updatedConfigurationSubtree) {
27         super();
28         this.dataChange = dataChange;
29         this.originalConfigurationSubtree = originalConfigurationSubtree;
30         this.originalOperationalSubtree = originalOperationalSubtree;
31         this.updatedOperationalSubtree = updatedOperationalSubtree;
32         this.updatedConfigurationSubtree = updatedConfigurationSubtree;
33     }
34
35     @Override
36     public D getOriginalConfigurationSubtree() {
37         return originalConfigurationSubtree;
38     }
39
40     @Override
41     public D getOriginalOperationalSubtree() {
42         return originalOperationalSubtree;
43     }
44
45     @Override
46     public D getUpdatedOperationalSubtree() {
47         return updatedOperationalSubtree;
48     }
49
50     @Override
51     public D getUpdatedConfigurationSubtree() {
52         return updatedConfigurationSubtree;
53     }
54
55     public Map<P, D> getCreatedOperationalData() {
56         return dataChange.getCreatedOperationalData();
57     }
58
59     public Map<P, D> getCreatedConfigurationData() {
60         return dataChange.getCreatedConfigurationData();
61     }
62
63     public Map<P, D> getUpdatedOperationalData() {
64         return dataChange.getUpdatedOperationalData();
65     }
66
67     public Map<P, D> getUpdatedConfigurationData() {
68         return dataChange.getUpdatedConfigurationData();
69     }
70
71     public Set<P> getRemovedConfigurationData() {
72         return dataChange.getRemovedConfigurationData();
73     }
74
75     public Set<P> getRemovedOperationalData() {
76         return dataChange.getRemovedOperationalData();
77     }
78
79     public Map<P, D> getOriginalConfigurationData() {
80         return dataChange.getOriginalConfigurationData();
81     }
82
83     public Map<P, D> getOriginalOperationalData() {
84         return dataChange.getOriginalOperationalData();
85     }
86
87 }