You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by gn...@apache.org on 2017/09/15 09:48:10 UTC
[2/3] karaf git commit: Optimize string operations
Optimize string operations
# Conflicts:
# features/core/src/main/java/org/apache/karaf/features/internal/service/FeaturesServiceImpl.java
Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/d842a373
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/d842a373
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/d842a373
Branch: refs/heads/karaf-4.1.x
Commit: d842a373e633dcd9e733b64045ed87660f1de7d4
Parents: 682664e
Author: Guillaume Nodet <gn...@gmail.com>
Authored: Fri Sep 15 08:01:25 2017 +0200
Committer: Guillaume Nodet <gn...@gmail.com>
Committed: Fri Sep 15 11:46:44 2017 +0200
----------------------------------------------------------------------
.../org/apache/karaf/features/internal/model/Feature.java | 8 ++++----
.../org/apache/karaf/features/internal/region/Subsystem.java | 2 +-
.../karaf/features/internal/service/FeaturesServiceImpl.java | 8 +++++---
3 files changed, 10 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/karaf/blob/d842a373/features/core/src/main/java/org/apache/karaf/features/internal/model/Feature.java
----------------------------------------------------------------------
diff --git a/features/core/src/main/java/org/apache/karaf/features/internal/model/Feature.java b/features/core/src/main/java/org/apache/karaf/features/internal/model/Feature.java
index 943992a..e22b485 100644
--- a/features/core/src/main/java/org/apache/karaf/features/internal/model/Feature.java
+++ b/features/core/src/main/java/org/apache/karaf/features/internal/model/Feature.java
@@ -127,10 +127,10 @@ public class Feature extends Content implements org.apache.karaf.features.Featur
}
public static org.apache.karaf.features.Feature valueOf(String str) {
- if (str.contains(VERSION_SEPARATOR)) {
- String strName = str.substring(0, str.indexOf(VERSION_SEPARATOR));
- String strVersion = str.substring(str.indexOf(VERSION_SEPARATOR)
- + VERSION_SEPARATOR.length(), str.length());
+ int idx = str.indexOf(VERSION_SEPARATOR);
+ if (idx >= 0) {
+ String strName = str.substring(0, idx);
+ String strVersion = str.substring(idx + VERSION_SEPARATOR.length(), str.length());
return new Feature(strName, strVersion);
} else {
return new Feature(str);
http://git-wip-us.apache.org/repos/asf/karaf/blob/d842a373/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
----------------------------------------------------------------------
diff --git a/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java b/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
index 9ebd145..db6b687 100644
--- a/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
+++ b/features/core/src/main/java/org/apache/karaf/features/internal/region/Subsystem.java
@@ -229,7 +229,7 @@ public class Subsystem extends ResourceImpl {
}
public void require(String requirement) throws BundleException {
- int idx = requirement.indexOf(":");
+ int idx = requirement.indexOf(':');
String type, req;
if (idx >= 0) {
type = requirement.substring(0, idx);
http://git-wip-us.apache.org/repos/asf/karaf/blob/d842a373/features/core/src/main/java/org/apache/karaf/features/internal/service/FeaturesServiceImpl.java
----------------------------------------------------------------------
diff --git a/features/core/src/main/java/org/apache/karaf/features/internal/service/FeaturesServiceImpl.java b/features/core/src/main/java/org/apache/karaf/features/internal/service/FeaturesServiceImpl.java
index 32722f9..357d57f 100644
--- a/features/core/src/main/java/org/apache/karaf/features/internal/service/FeaturesServiceImpl.java
+++ b/features/core/src/main/java/org/apache/karaf/features/internal/service/FeaturesServiceImpl.java
@@ -100,6 +100,8 @@ import org.osgi.service.resolver.Resolver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import static org.apache.karaf.features.internal.model.Feature.DEFAULT_VERSION;
+import static org.apache.karaf.features.internal.model.Feature.VERSION_SEPARATOR;
import static org.apache.karaf.features.internal.service.StateStorage.toStringStringSetMap;
import static org.apache.karaf.features.internal.util.MapUtils.add;
import static org.apache.karaf.features.internal.util.MapUtils.addToMapSet;
@@ -1101,10 +1103,10 @@ public class FeaturesServiceImpl implements FeaturesService, Deployer.DeployCall
}
protected String normalize(String feature) {
- if (!feature.contains("/")) {
- feature += "/0.0.0";
+ int idx = feature.indexOf(VERSION_SEPARATOR);
+ if (idx < 0) {
+ return feature + VERSION_SEPARATOR + DEFAULT_VERSION;
}
- int idx = feature.indexOf("/");
String name = feature.substring(0, idx);
String version = feature.substring(idx + 1);
return name + "/" + VersionCleaner.clean(version);