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=2cf4749c41aa32c6b77064fc1ae0e231adc4a5f4;hp=7f7cdc650ee70c5038a7159fb4d7ea4a81a80679;hpb=139937c2e646894af6a9b2b8a8a1047c6ef82485;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 7f7cdc650e..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,49 +1,45 @@ /* + * 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(childNames);