X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-clustering-commons%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fcommon%2Factor%2FAbstractConfig.java;h=1a331b7e99d28216dbad982d36916d1b5fa3d4d0;hb=2e75f2a8df84ff50d2b608c3346978d81378ee98;hp=3a66aa1181a509feb48305af1c3b079712ff0676;hpb=25b805c6685467f561506dbb5187a744fc12096b;p=controller.git diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/common/actor/AbstractConfig.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/common/actor/AbstractConfig.java index 3a66aa1181..1a331b7e99 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/common/actor/AbstractConfig.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/common/actor/AbstractConfig.java @@ -1,15 +1,22 @@ +/* + * Copyright (c) 2014, 2015 Cisco Systems, Inc. and others. All rights reserved. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v1.0 which accompanies this distribution, + * and is available at http://www.eclipse.org/legal/epl-v10.html + */ + package org.opendaylight.controller.cluster.common.actor; import com.google.common.base.Preconditions; import com.typesafe.config.Config; import com.typesafe.config.ConfigFactory; - import java.util.HashMap; import java.util.Map; public abstract class AbstractConfig implements UnifiedConfig { - private Config config; + private final Config config; public AbstractConfig(Config config){ this.config = config; @@ -20,7 +27,7 @@ public abstract class AbstractConfig implements UnifiedConfig { return config; } - public static abstract class Builder{ + public static abstract class Builder> { protected Map configHolder; protected Config fallback; @@ -37,11 +44,13 @@ public abstract class AbstractConfig implements UnifiedConfig { return (T)this; } - protected Config merge(){ - if (fallback == null) - fallback = ConfigFactory.load().getConfig(actorSystemName); + protected Config merge() { + Config config = ConfigFactory.parseMap(configHolder); + if (fallback != null) { + config = config.withFallback(fallback); + } - return ConfigFactory.parseMap(configHolder).withFallback(fallback); + return config; } } }