2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
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
9 package org.opendaylight.controller.netconf.confignetconfconnector.mapping.config;
11 import org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig.EditConfigStrategy;
12 import org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig.EditStrategyType;
13 import org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig.MissingInstanceHandlingStrategy;
14 import org.opendaylight.controller.netconf.confignetconfconnector.operations.editconfig.NoneEditConfigStrategy;
16 public class ModuleElementDefinition {
18 public static final NoneEditConfigStrategy NONE_EDIT_CONFIG_STRATEGY = new NoneEditConfigStrategy();
19 public static final MissingInstanceHandlingStrategy MISSING_INSTANCE_HANDLING_STRATEGY = new MissingInstanceHandlingStrategy();
21 private final String instanceName;
22 private final EditStrategyType editStrategy;
24 public ModuleElementDefinition(String instanceName, String currentStrategy, EditStrategyType defaultStrategy) {
25 this.instanceName = instanceName;
26 if (currentStrategy == null || currentStrategy.isEmpty())
27 this.editStrategy = defaultStrategy;
29 this.editStrategy = InstanceConfigElementResolved.parseStrategy(currentStrategy, defaultStrategy);
32 public String getInstanceName() {
36 public EditStrategyType getEditStrategyType() {
40 public EditConfigStrategy getEditStrategy() {
41 switch (editStrategy) {
44 case none : return NONE_EDIT_CONFIG_STRATEGY;
45 default : return MISSING_INSTANCE_HANDLING_STRATEGY;