Merge "Update context-instance xpath format according to latest changes in config...
[controller.git] / opendaylight / md-sal / sal-dom-broker / src / main / java / org / opendaylight / controller / sal / dom / broker / DataTransactionImpl.java
1 package org.opendaylight.controller.sal.dom.broker;
2
3 import org.opendaylight.controller.md.sal.common.api.TransactionStatus;
4 import org.opendaylight.controller.md.sal.common.impl.service.AbstractDataTransaction;
5 import org.opendaylight.controller.sal.core.api.data.DataModificationTransaction;
6 import org.opendaylight.yangtools.concepts.ListenerRegistration;
7 import org.opendaylight.yangtools.concepts.util.ListenerRegistry;
8 import org.opendaylight.yangtools.yang.data.api.CompositeNode;
9 import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier;
10
11 public class DataTransactionImpl extends AbstractDataTransaction<InstanceIdentifier, CompositeNode> 
12     implements DataModificationTransaction {
13     private final ListenerRegistry<DataTransactionListener> listeners = new ListenerRegistry<DataTransactionListener>();
14     
15     
16     
17     public DataTransactionImpl(Object identifier,DataBrokerImpl dataBroker) {
18         super(identifier,dataBroker);
19     }
20
21     @Override
22     public ListenerRegistration<DataTransactionListener> registerListener(DataTransactionListener listener) {
23         return listeners.register(listener);
24     }
25
26     protected void onStatusChange(TransactionStatus status) {
27         for (ListenerRegistration<DataTransactionListener> listenerRegistration : listeners) {
28             listenerRegistration.getInstance().onStatusUpdated(this, status);
29         }
30     }
31 }