Fix license header violations in sal-dom-api
[controller.git] / opendaylight / md-sal / sal-dom-api / src / main / java / org / opendaylight / controller / md / sal / dom / api / DOMDataBroker.java
1 /*
2  * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.controller.md.sal.dom.api;
10
11 import org.opendaylight.controller.md.sal.common.api.data.AsyncDataBroker;
12 import org.opendaylight.controller.md.sal.common.api.data.TransactionChainFactory;
13 import org.opendaylight.controller.md.sal.common.api.data.TransactionChainListener;
14 import org.opendaylight.controller.sal.core.api.BrokerService;
15 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
16 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
17
18 /**
19  * Data Broker which provides data transaction and data change listener functionality
20  * using {@link NormalizedNode} data format.
21  *
22  * This interface is type capture of generic interfaces and returns type captures
23  * of results for client-code convenience.
24  *
25  */
26 public interface DOMDataBroker extends
27         AsyncDataBroker<YangInstanceIdentifier, NormalizedNode<?, ?>, DOMDataChangeListener>,
28         TransactionChainFactory<YangInstanceIdentifier, NormalizedNode<?, ?>>, BrokerService, DOMExtensibleService<DOMDataBroker, DOMDataBrokerExtension> {
29
30     /**
31      * {@inheritDoc}
32      */
33     @Override
34     DOMDataReadOnlyTransaction newReadOnlyTransaction();
35
36     /**
37      * {@inheritDoc}
38      */
39     @Override
40     DOMDataReadWriteTransaction newReadWriteTransaction();
41
42     /**
43      * {@inheritDoc}
44      */
45     @Override
46     DOMDataWriteTransaction newWriteOnlyTransaction();
47
48     /**
49      * {@inheritDoc}
50      */
51     @Override
52     DOMTransactionChain createTransactionChain(TransactionChainListener listener);
53 }