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 2015/01/08 10:01:53 UTC

[2/4] karaf git commit: Fix possible thread safety problem in completer

Fix possible thread safety problem in completer


Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/22ece466
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/22ece466
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/22ece466

Branch: refs/heads/master
Commit: 22ece466b8cb1497076659a078729b1e144cb0e0
Parents: 0c97f00
Author: Guillaume Nodet <gn...@gmail.com>
Authored: Thu Jan 8 10:00:05 2015 +0100
Committer: Guillaume Nodet <gn...@gmail.com>
Committed: Thu Jan 8 10:01:46 2015 +0100

----------------------------------------------------------------------
 .../command/completers/ConfigurationPropertyCompleter.java   | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/22ece466/config/src/main/java/org/apache/karaf/config/command/completers/ConfigurationPropertyCompleter.java
----------------------------------------------------------------------
diff --git a/config/src/main/java/org/apache/karaf/config/command/completers/ConfigurationPropertyCompleter.java b/config/src/main/java/org/apache/karaf/config/command/completers/ConfigurationPropertyCompleter.java
index 2b43fec..78d88a2 100644
--- a/config/src/main/java/org/apache/karaf/config/command/completers/ConfigurationPropertyCompleter.java
+++ b/config/src/main/java/org/apache/karaf/config/command/completers/ConfigurationPropertyCompleter.java
@@ -47,8 +47,6 @@ import org.osgi.service.cm.ConfigurationAdmin;
 @Service
 public class ConfigurationPropertyCompleter implements Completer {
 
-    private final StringsCompleter delegate = new StringsCompleter();
-
     private static final String OPTION = "-p";
     private static final String ALIAS = "--pid";
 
@@ -57,15 +55,15 @@ public class ConfigurationPropertyCompleter implements Completer {
 
     @SuppressWarnings("rawtypes")
     public int complete(final Session session, final CommandLine commandLine, final List<String> candidates) {
+        StringsCompleter strings = new StringsCompleter();
         if (session != null) {
             String pid = getPid(session, commandLine);
             Set<String> propertyNames = getPropertyNames(pid);
-            delegate.getStrings().clear();
             if (propertyNames != null && !propertyNames.isEmpty()) {
-                delegate.getStrings().addAll(propertyNames);
+                strings.getStrings().addAll(propertyNames);
             }
         }
-        return delegate.complete(session, commandLine, candidates);
+        return strings.complete(session, commandLine, candidates);
     }
 
     /**