Merge "Bug 2697: Improvement wrong response handling, missing message"
[controller.git] / opendaylight / netconf / config-netconf-connector / src / main / java / org / opendaylight / controller / netconf / confignetconfconnector / operations / Datastore.java
1 /*
2  * Copyright (c) 2013 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.netconf.confignetconfconnector.operations;
10
11 import org.opendaylight.controller.netconf.confignetconfconnector.operations.getconfig.CandidateDatastoreQueryStrategy;
12 import org.opendaylight.controller.netconf.confignetconfconnector.operations.getconfig.DatastoreQueryStrategy;
13 import org.opendaylight.controller.netconf.confignetconfconnector.operations.getconfig.RunningDatastoreQueryStrategy;
14 import org.opendaylight.controller.netconf.confignetconfconnector.transactions.TransactionProvider;
15
16 public enum Datastore {
17
18     running, candidate;
19
20     /**
21      * @param source
22      * @param transactionProvider
23      * @return
24      */
25     public static DatastoreQueryStrategy getInstanceQueryStrategy(Datastore source,
26             TransactionProvider transactionProvider) {
27         switch (source) {
28         case running:
29             return new RunningDatastoreQueryStrategy(transactionProvider);
30         case candidate:
31             return new CandidateDatastoreQueryStrategy(transactionProvider);
32         default:
33             throw new UnsupportedOperationException("Unimplemented datastore query strategy for " + source);
34         }
35     }
36 }