From: Robert Varga Date: Mon, 26 Jan 2015 14:07:13 +0000 (+0100) Subject: Optimize PathUtils.toYangInstanceIdentifier() X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=cc2af31ea079c744a0cc76c562417051214914cb;hp=48904394c82c33384d9da9f0bf233ca950a832fb Optimize PathUtils.toYangInstanceIdentifier() Instead of using String-bases split, use a guava splitter. Change-Id: I6eb184d5e3a3ece93588267ba231a42b90d6bb9d Signed-off-by: Robert Varga --- diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/PathUtils.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/PathUtils.java index 6cdddfd271..902851041a 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/PathUtils.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/PathUtils.java @@ -10,15 +10,16 @@ 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.ArrayList; import java.util.Iterator; import java.util.List; import java.util.Set; +import org.opendaylight.yangtools.yang.common.QName; +import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; public class PathUtils { + private static final Splitter SLASH_SPLITTER = Splitter.on('/').omitEmptyStrings(); /** * Given a YangInstanceIdentifier return a serialized version of the same @@ -70,13 +71,9 @@ public class PathUtils { * @return */ public static YangInstanceIdentifier toYangInstanceIdentifier(String path){ - String[] segments = path.split("/"); - List pathArguments = new ArrayList<>(); - for (String segment : segments) { - if (!"".equals(segment)) { - pathArguments.add(NodeIdentifierFactory.getArgument(segment)); - } + for (String segment : SLASH_SPLITTER.split(path)) { + pathArguments.add(NodeIdentifierFactory.getArgument(segment)); } return YangInstanceIdentifier.create(pathArguments); }