You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by cs...@apache.org on 2012/04/11 16:07:10 UTC

svn commit: r1324769 - in /karaf/trunk/instance/core: ./ src/main/java/org/apache/karaf/instance/core/internal/ src/main/java/org/apache/karaf/jpm/ src/main/java/org/apache/karaf/jpm/impl/ src/main/resources/OSGI-INF/blueprint/ src/test/java/org/apache...

Author: cschneider
Date: Wed Apr 11 14:07:10 2012
New Revision: 1324769

URL: http://svn.apache.org/viewvc?rev=1324769&view=rev
Log:
Optimize imports, fix problem where ProcessBuilderFactory knew about its implementation

Modified:
    karaf/trunk/instance/core/pom.xml
    karaf/trunk/instance/core/src/main/java/org/apache/karaf/instance/core/internal/InstanceImpl.java
    karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/ProcessBuilderFactory.java
    karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/impl/ProcessBuilderFactoryImpl.java
    karaf/trunk/instance/core/src/main/resources/OSGI-INF/blueprint/instance-core.xml
    karaf/trunk/instance/core/src/test/java/org/apache/karaf/jpm/ProcessTest.java

Modified: karaf/trunk/instance/core/pom.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/instance/core/pom.xml?rev=1324769&r1=1324768&r2=1324769&view=diff
==============================================================================
--- karaf/trunk/instance/core/pom.xml (original)
+++ karaf/trunk/instance/core/pom.xml Wed Apr 11 14:07:10 2012
@@ -133,12 +133,12 @@
                     <instructions>
                         <Export-Package>
                             org.apache.karaf.instance.core,
-                            org.apache.karaf.jpm,
                         </Export-Package>
                         <Private-Package>
-                            org.apache.felix.utils.properties,
-                            org.apache.karaf.instance.core.internal,
+                            org.apache.karaf.jpm,
                             org.apache.karaf.jpm.impl,
+                            org.apache.karaf.instance.core.internal,
+                            org.apache.felix.utils.properties
                         </Private-Package>
                     </instructions>
                 </configuration>

Modified: karaf/trunk/instance/core/src/main/java/org/apache/karaf/instance/core/internal/InstanceImpl.java
URL: http://svn.apache.org/viewvc/karaf/trunk/instance/core/src/main/java/org/apache/karaf/instance/core/internal/InstanceImpl.java?rev=1324769&r1=1324768&r2=1324769&view=diff
==============================================================================
--- karaf/trunk/instance/core/src/main/java/org/apache/karaf/instance/core/internal/InstanceImpl.java (original)
+++ karaf/trunk/instance/core/src/main/java/org/apache/karaf/instance/core/internal/InstanceImpl.java Wed Apr 11 14:07:10 2012
@@ -34,6 +34,7 @@ import org.apache.felix.utils.properties
 import org.apache.karaf.instance.core.Instance;
 import org.apache.karaf.jpm.Process;
 import org.apache.karaf.jpm.ProcessBuilderFactory;
+import org.apache.karaf.jpm.impl.ProcessBuilderFactoryImpl;
 import org.apache.karaf.jpm.impl.ScriptUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -56,8 +57,11 @@ public class InstanceImpl implements Ins
     private Process process;
     private boolean root;
 
+    private final ProcessBuilderFactory processBuilderFactory;
+
     public InstanceImpl(InstanceServiceImpl service, String name, String location, String javaOpts) {
         this(service, name, location, javaOpts, false);
+        
     }
     
     public InstanceImpl(InstanceServiceImpl service, String name, String location, String javaOpts, boolean root) {
@@ -66,6 +70,7 @@ public class InstanceImpl implements Ins
         this.location = location;
         this.javaOpts = javaOpts;
         this.root = root;
+        this.processBuilderFactory = new ProcessBuilderFactoryImpl();
     }
 
     public void attach(int pid) throws IOException {
@@ -73,7 +78,7 @@ public class InstanceImpl implements Ins
         if (this.process != null) {
             throw new IllegalStateException("Instances already started");
         }
-        this.process = ProcessBuilderFactory.newInstance().newBuilder().attach(pid);
+        this.process = processBuilderFactory.newBuilder().attach(pid);
     }
 
     public String getName() {
@@ -245,7 +250,7 @@ public class InstanceImpl implements Ins
                 + " -classpath " + classpath.toString()
                 + " org.apache.karaf.main.Main";
         LOG.debug("Starting instance " + name + " with command: " + command);
-        this.process = ProcessBuilderFactory.newInstance().newBuilder()
+        this.process = processBuilderFactory.newBuilder()
                         .directory(new File(location))
                         .command(command)
                         .start();

Modified: karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/ProcessBuilderFactory.java
URL: http://svn.apache.org/viewvc/karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/ProcessBuilderFactory.java?rev=1324769&r1=1324768&r2=1324769&view=diff
==============================================================================
--- karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/ProcessBuilderFactory.java (original)
+++ karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/ProcessBuilderFactory.java Wed Apr 11 14:07:10 2012
@@ -16,17 +16,10 @@
  */
 package org.apache.karaf.jpm;
 
-import org.apache.karaf.jpm.impl.ProcessBuilderFactoryImpl;
 
 /**
  * Factory for process builders.
  */
-public abstract class ProcessBuilderFactory {
-
-    public static ProcessBuilderFactory newInstance() {
-        return new ProcessBuilderFactoryImpl();
-    }
-
-    public abstract ProcessBuilder newBuilder();
-
+public interface ProcessBuilderFactory {
+    ProcessBuilder newBuilder();
 }

Modified: karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/impl/ProcessBuilderFactoryImpl.java
URL: http://svn.apache.org/viewvc/karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/impl/ProcessBuilderFactoryImpl.java?rev=1324769&r1=1324768&r2=1324769&view=diff
==============================================================================
--- karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/impl/ProcessBuilderFactoryImpl.java (original)
+++ karaf/trunk/instance/core/src/main/java/org/apache/karaf/jpm/impl/ProcessBuilderFactoryImpl.java Wed Apr 11 14:07:10 2012
@@ -19,7 +19,7 @@ package org.apache.karaf.jpm.impl;
 import org.apache.karaf.jpm.ProcessBuilder;
 import org.apache.karaf.jpm.ProcessBuilderFactory;
 
-public class ProcessBuilderFactoryImpl extends ProcessBuilderFactory {
+public class ProcessBuilderFactoryImpl implements ProcessBuilderFactory {
 
     public ProcessBuilder newBuilder() {
         return new ProcessBuilderImpl();

Modified: karaf/trunk/instance/core/src/main/resources/OSGI-INF/blueprint/instance-core.xml
URL: http://svn.apache.org/viewvc/karaf/trunk/instance/core/src/main/resources/OSGI-INF/blueprint/instance-core.xml?rev=1324769&r1=1324768&r2=1324769&view=diff
==============================================================================
--- karaf/trunk/instance/core/src/main/resources/OSGI-INF/blueprint/instance-core.xml (original)
+++ karaf/trunk/instance/core/src/main/resources/OSGI-INF/blueprint/instance-core.xml Wed Apr 11 14:07:10 2012
@@ -33,7 +33,7 @@
         <argument ref="instanceService" />
     </bean>
 
-    <service ref="mbeanImpl" auto-export="interfaces">
+    <service ref="mbeanImpl" interface="org.apache.karaf.instance.core.InstancesMBean">
         <service-properties>
             <entry key="jmx.objectname" value="org.apache.karaf:type=instance,name=${karaf.name}"/>
         </service-properties>

Modified: karaf/trunk/instance/core/src/test/java/org/apache/karaf/jpm/ProcessTest.java
URL: http://svn.apache.org/viewvc/karaf/trunk/instance/core/src/test/java/org/apache/karaf/jpm/ProcessTest.java?rev=1324769&r1=1324768&r2=1324769&view=diff
==============================================================================
--- karaf/trunk/instance/core/src/test/java/org/apache/karaf/jpm/ProcessTest.java (original)
+++ karaf/trunk/instance/core/src/test/java/org/apache/karaf/jpm/ProcessTest.java Wed Apr 11 14:07:10 2012
@@ -19,6 +19,8 @@ package org.apache.karaf.jpm;
 import java.io.File;
 
 import junit.framework.TestCase;
+
+import org.apache.karaf.jpm.impl.ProcessBuilderFactoryImpl;
 import org.apache.karaf.jpm.impl.ScriptUtils;
 
 public class ProcessTest extends TestCase {
@@ -40,7 +42,7 @@ public class ProcessTest extends TestCas
         command.append(60000);
         System.err.println("Executing: " + command.toString());
 
-        ProcessBuilder builder = ProcessBuilderFactory.newInstance().newBuilder();
+        ProcessBuilder builder = new ProcessBuilderFactoryImpl().newBuilder();
         org.apache.karaf.jpm.Process p = builder.command(command.toString()).start();
         assertNotNull(p);
         System.err.println("Process: " + p.getPid());