c12ca4a18031d9ea214b5f59d644722aba696923
[ccsdk/features.git] /
1 package org.onap.ccsdk.features.sdnr.wt.devicemanager.onf14.util;
2
3 import java.time.Instant;
4 import org.opendaylight.mdsal.dom.api.DOMEvent;
5 import org.opendaylight.mdsal.dom.api.DOMNotification;
6 import org.opendaylight.yangtools.yang.data.api.schema.ContainerNode;
7 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute;
8
9 public class NetconfDeviceNotification implements DOMNotification, DOMEvent {
10     private final ContainerNode content;
11     private final Absolute schemaPath;
12     private final Instant eventTime;
13
14     public NetconfDeviceNotification(final ContainerNode content, final Instant eventTime) {
15         this.content = content;
16         this.eventTime = eventTime;
17         this.schemaPath = Absolute.of(content.getIdentifier().getNodeType());
18     }
19
20     NetconfDeviceNotification(final ContainerNode content, final Absolute schemaPath, final Instant eventTime) {
21         this.content = content;
22         this.eventTime = eventTime;
23         this.schemaPath = schemaPath;
24     }
25
26     @Override
27     public Absolute getType() {
28         return schemaPath;
29     }
30
31     @Override
32     public ContainerNode getBody() {
33         return content;
34     }
35
36     @Override
37     public Instant getEventInstant() {
38         return eventTime;
39     }
40 }