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%2Fdatastore%2Fnode%2Futils%2FAugmentationIdentifierGenerator.java;h=296b744177f4ce82dbbfdb5282380b1085207952;hb=5308e067245271146074af428334802966771b3a;hp=e2c4c358935c184c9244b969533fcf86175e55e8;hpb=6b9c0bb57b65343df31fd68d178821a22afd0fe2;p=controller.git diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/AugmentationIdentifierGenerator.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/AugmentationIdentifierGenerator.java index e2c4c35893..296b744177 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/AugmentationIdentifierGenerator.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/AugmentationIdentifierGenerator.java @@ -1,52 +1,48 @@ /* + * Copyright (c) 2014, 2015 Cisco Systems, Inc. and others. All rights reserved. * - * Copyright (c) 2014 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 - * + * 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.datastore.node.utils; -import org.opendaylight.yangtools.yang.common.QName; -import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; - +import com.google.common.base.Splitter; import java.util.HashSet; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; public class AugmentationIdentifierGenerator { + private static final Pattern PATTERN = Pattern.compile("AugmentationIdentifier\\Q{\\EchildNames=\\Q[\\E(.*)\\Q]}\\E"); + private static final Splitter COMMA_SPLITTER = Splitter.on(',').trimResults(); + private final String id; - private static final Pattern pattern = Pattern.compile("AugmentationIdentifier\\Q{\\EchildNames=\\Q[\\E(.*)\\Q]}\\E"); private final Matcher matcher; private final boolean doesMatch; - public AugmentationIdentifierGenerator(String id){ + public AugmentationIdentifierGenerator(String id) { this.id = id; - matcher = pattern.matcher(this.id); + matcher = PATTERN.matcher(this.id); doesMatch = matcher.matches(); } - public boolean matches(){ + public boolean matches() { return doesMatch; } - public YangInstanceIdentifier.AugmentationIdentifier getPathArgument(){ - Set childNames = new HashSet(); + public YangInstanceIdentifier.AugmentationIdentifier getPathArgument() { final String childQNames = matcher.group(1); - final String[] splitChildQNames = childQNames.split(","); - - for(String name : splitChildQNames){ - childNames.add( - org.opendaylight.controller.cluster.datastore.node.utils.QNameFactory - .create(name.trim())); + final Set childNames = new HashSet<>(); + for (String name : COMMA_SPLITTER.split(childQNames)) { + childNames.add(QNameFactory.create(name)); } - return new YangInstanceIdentifier.AugmentationIdentifier(null, childNames); + return new YangInstanceIdentifier.AugmentationIdentifier(childNames); } }