You are viewing a plain text version of this content. The canonical link for it is here.
Posted to oak-commits@jackrabbit.apache.org by st...@apache.org on 2012/05/29 15:04:28 UTC
svn commit: r1343707 - in /jackrabbit/oak/trunk:
oak-core/src/main/java/org/apache/jackrabbit/mk/
oak-core/src/main/java/org/apache/jackrabbit/mk/index/
oak-core/src/main/java/org/apache/jackrabbit/mk/simple/
oak-core/src/main/java/org/apache/jackrabbi...
Author: stefan
Date: Tue May 29 13:04:27 2012
New Revision: 1343707
URL: http://svn.apache.org/viewvc?rev=1343707&view=rev
Log:
oops, revert accidental commit
Modified:
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/MicroKernelFactory.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/index/IndexWrapper.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/simple/SimpleKernelImpl.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/LogWrapper.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/MicroKernelWrapperBase.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/SecurityWrapper.java
jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapper.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/MultiMkTestBase.java
jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapperTest.java
jackrabbit/oak/trunk/oak-it/mk/src/test/java/org/apache/jackrabbit/mk/test/ClientServerFixture.java
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/api/MicroKernel.java
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/client/Client.java
jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/server/Server.java
jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/DefaultRevisionStoreTest.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/MicroKernelServer.java
jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RepositoryServlet.java
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/MicroKernelFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/MicroKernelFactory.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/MicroKernelFactory.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/MicroKernelFactory.java Tue May 29 13:04:27 2012
@@ -130,43 +130,27 @@ public class MicroKernelFactory {
@Override
public void dispose() {
super.dispose();
- MicroKernelFactory.disposeInstance(mk);
+ mk.dispose();
}
};
} catch (MicroKernelException e) {
- MicroKernelFactory.disposeInstance(mk);
+ mk.dispose();
throw e;
}
} else if (head.equals("virtual")) {
- final MicroKernel mk = getInstance(tail);
+ MicroKernel mk = getInstance(tail);
try {
- return new VirtualRepositoryWrapper(mk) {
- @Override
- public void dispose() {
- super.dispose();
- MicroKernelFactory.disposeInstance(mk);
- }
- };
+ return new VirtualRepositoryWrapper(mk);
} catch (MicroKernelException e) {
- MicroKernelFactory.disposeInstance(mk);
+ mk.dispose();
throw e;
}
} else if (head.equals("index")) {
- final MicroKernel mk = getInstance(tail);
- try {
- return new IndexWrapper(mk) {
- public void dispose() {
- MicroKernelFactory.disposeInstance(mk);
- }
- };
- } catch (MicroKernelException e) {
- MicroKernelFactory.disposeInstance(mk);
- throw e;
- }
+ return new IndexWrapper(getInstance(tail));
} else if (head.equals("http")) {
return new Client(url);
} else if (head.equals("http-bridge")) {
- final MicroKernel mk = getInstance(tail);
+ MicroKernel mk = getInstance(tail);
final Server server = new Server(mk);
try {
@@ -180,7 +164,6 @@ public class MicroKernelFactory {
public synchronized void dispose() {
super.dispose();
server.stop();
- MicroKernelFactory.disposeInstance(mk);
}
};
} else {
@@ -189,32 +172,10 @@ public class MicroKernelFactory {
}
/**
- * Disposes an instance that was created by this factory.
- * @param mk MicroKernel instance
+ * Delete a directory or file and all subdirectories and files inside it.
+ *
+ * @param file the file denoting the directory to delete
*/
- public static void disposeInstance(MicroKernel mk) {
- if (mk instanceof MicroKernelImpl) {
- ((MicroKernelImpl) mk).dispose();
- } else if (mk instanceof SimpleKernelImpl) {
- ((SimpleKernelImpl) mk).dispose();
- } else if (mk instanceof LogWrapper) {
- ((LogWrapper) mk).dispose();
- } else if (mk instanceof SecurityWrapper) {
- ((SecurityWrapper) mk).dispose();
- } else if (mk instanceof VirtualRepositoryWrapper) {
- ((VirtualRepositoryWrapper) mk).dispose();
- } else if (mk instanceof IndexWrapper) {
- ((IndexWrapper) mk).dispose();
- } else {
- throw new IllegalArgumentException("instance was not created by this factory");
- }
- }
-
- /**
- * Delete a directory or file and all subdirectories and files inside it.
- *
- * @param file the file denoting the directory to delete
- */
private static void deleteRecursive(File file) {
File[] files = file.listFiles();
for (int i = 0; files != null && i < files.length; i++) {
@@ -222,4 +183,5 @@ public class MicroKernelFactory {
}
file.delete();
}
+
}
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/index/IndexWrapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/index/IndexWrapper.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/index/IndexWrapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/index/IndexWrapper.java Tue May 29 13:04:27 2012
@@ -253,8 +253,9 @@ public class IndexWrapper extends MicroK
return mk.getRevisionsStream(since, maxEntries, path);
}
+ @Override
public void dispose() {
- // do nothing
+ mk.dispose();
}
}
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/simple/SimpleKernelImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/simple/SimpleKernelImpl.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/simple/SimpleKernelImpl.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/simple/SimpleKernelImpl.java Tue May 29 13:04:27 2012
@@ -576,6 +576,7 @@ public class SimpleKernelImpl extends Mi
return ds.writeBlob(in);
}
+ @Override
public synchronized void dispose() {
if (!disposed) {
disposed = true;
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/LogWrapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/LogWrapper.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/LogWrapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/LogWrapper.java Tue May 29 13:04:27 2012
@@ -50,8 +50,16 @@ public class LogWrapper implements Micro
}
}
+ @Override
public void dispose() {
- // do nothing
+ try {
+ logMethod("dispose");
+ mk.dispose();
+ logResult();
+ } catch (Exception e) {
+ logException(e);
+ throw convert(e);
+ }
}
@Override
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/MicroKernelWrapperBase.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/MicroKernelWrapperBase.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/MicroKernelWrapperBase.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/MicroKernelWrapperBase.java Tue May 29 13:04:27 2012
@@ -136,6 +136,11 @@ public abstract class MicroKernelWrapper
}
@Override
+ public void dispose() {
+ wrapped.dispose();
+ }
+
+ @Override
public String getHeadRevision() throws MicroKernelException {
return wrapped.getHeadRevision();
}
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/SecurityWrapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/SecurityWrapper.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/SecurityWrapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/SecurityWrapper.java Tue May 29 13:04:27 2012
@@ -96,6 +96,7 @@ public class SecurityWrapper extends Mic
return mk.commitStream(rootPath, jsonDiff, revisionId, message);
}
+ @Override
public void dispose() {
// do nothing
}
Modified: jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapper.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapper.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapper.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/main/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapper.java Tue May 29 13:04:27 2012
@@ -226,10 +226,12 @@ public class VirtualRepositoryWrapper ex
return builder;
}
+ @Override
public void dispose() {
for (MicroKernel m : mounts.values()) {
- MicroKernelFactory.disposeInstance(m);
+ m.dispose();
}
+ mk.dispose();
}
@Override
Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/MultiMkTestBase.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/MultiMkTestBase.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/MultiMkTestBase.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/MultiMkTestBase.java Tue May 29 13:04:27 2012
@@ -79,7 +79,7 @@ public class MultiMkTestBase {
if (prof != null) {
System.out.println(prof.getTop(5));
}
- MicroKernelFactory.disposeInstance(mk);
+ mk.dispose();
}
protected void reconnect() {
@@ -87,7 +87,7 @@ public class MultiMkTestBase {
if (url.equals("simple:")) {
return;
}
- MicroKernelFactory.disposeInstance(mk);
+ mk.dispose();
}
mk = MicroKernelFactory.getInstance(url);
}
Modified: jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapperTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapperTest.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapperTest.java (original)
+++ jackrabbit/oak/trunk/oak-core/src/test/java/org/apache/jackrabbit/mk/wrapper/VirtualRepositoryWrapperTest.java Tue May 29 13:04:27 2012
@@ -68,13 +68,13 @@ public class VirtualRepositoryWrapperTes
mkRep1.commit("/", "- \":mount\"", mkRep1.getHeadRevision(), "");
mkRep2.commit("/", "- \":mount\"", mkRep2.getHeadRevision(), "");
if (mkVirtual != null) {
- MicroKernelFactory.disposeInstance(mkVirtual);
+ mkVirtual.dispose();
}
if (mkRep1 != null) {
- MicroKernelFactory.disposeInstance(mkRep1);
+ mkRep1.dispose();
}
if (mkRep2 != null) {
- MicroKernelFactory.disposeInstance(mkRep2);
+ mkRep2.dispose();
}
super.tearDown();
} catch (Throwable e) {
Modified: jackrabbit/oak/trunk/oak-it/mk/src/test/java/org/apache/jackrabbit/mk/test/ClientServerFixture.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-it/mk/src/test/java/org/apache/jackrabbit/mk/test/ClientServerFixture.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-it/mk/src/test/java/org/apache/jackrabbit/mk/test/ClientServerFixture.java (original)
+++ jackrabbit/oak/trunk/oak-it/mk/src/test/java/org/apache/jackrabbit/mk/test/ClientServerFixture.java Tue May 29 13:04:27 2012
@@ -27,13 +27,10 @@ import org.apache.jackrabbit.mk.test.Mic
public class ClientServerFixture implements MicroKernelFixture {
- private MicroKernelImpl mk;
- private Server server;
-
@Override
public void setUpCluster(MicroKernel[] cluster) {
- mk = new MicroKernelImpl();
- server = new Server(mk);
+ MicroKernel mk = new MicroKernelImpl();
+ final Server server = new Server(mk);
try {
server.start();
} catch (IOException e) {
@@ -41,7 +38,13 @@ public class ClientServerFixture impleme
}
InetSocketAddress address = server.getAddress();
- cluster[0] = new Client(address);
+ cluster[0] = new Client(address) {
+ @Override
+ public synchronized void dispose() {
+ super.dispose();
+ server.stop();
+ }
+ };
for (int i = 1; i < cluster.length; i++) {
cluster[i] = new Client(address);
}
@@ -53,7 +56,9 @@ public class ClientServerFixture impleme
@Override
public void tearDownCluster(MicroKernel[] cluster) {
- server.stop();
- mk.dispose();
+ for (int i = 0; i < cluster.length; i++) {
+ ((Client) cluster[i]).dispose();
+ }
}
+
}
Modified: jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/api/MicroKernel.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/api/MicroKernel.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/api/MicroKernel.java (original)
+++ jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/api/MicroKernel.java Tue May 29 13:04:27 2012
@@ -47,6 +47,13 @@ import java.io.InputStream;
*/
public interface MicroKernel {
+ /**
+ * Dispose this instance.
+ *
+ * TODO remove lifecycle method from MicroKernel API (OAK-32)
+ */
+ void dispose();
+
//---------------------------------------------------------< REVISION ops >
/**
Modified: jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/client/Client.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/client/Client.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/client/Client.java (original)
+++ jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/client/Client.java Tue May 29 13:04:27 2012
@@ -19,6 +19,7 @@ package org.apache.jackrabbit.mk.client;
import java.io.IOException;
import java.io.InputStream;
import java.net.InetSocketAddress;
+import java.net.Socket;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -35,8 +36,8 @@ import org.apache.jackrabbit.mk.util.IOU
*/
public class Client implements MicroKernel {
- private static final String MK_EXCEPTION_PREFIX = MicroKernelException.class.getName() + ":";
-
+ private static final String MK_EXCEPTION_PREFIX = MicroKernelException.class.getName() + ":";
+
private final InetSocketAddress addr;
private final SocketFactory socketFactory;
@@ -88,13 +89,14 @@ public class Client implements MicroKern
this.addr = addr;
this.socketFactory = socketFactory;
}
-
+
+ //-------------------------------------------------- implements MicroKernel
+
+ @Override
public void dispose() {
- // do nothing
+ // do nothing
}
- //-------------------------------------------------- implements MicroKernel
-
@Override
public String getHeadRevision() throws MicroKernelException {
Request request = null;
@@ -221,7 +223,7 @@ public class Client implements MicroKern
@Override
public String getNodes(String path, String revisionId, int depth,
- long offset, int count, String filter) throws MicroKernelException {
+ long offset, int maxChildNodes, String filter) throws MicroKernelException {
Request request = null;
@@ -231,7 +233,7 @@ public class Client implements MicroKern
request.addParameter("revision_id", revisionId);
request.addParameter("depth", depth);
request.addParameter("offset", offset);
- request.addParameter("count", count);
+ request.addParameter("maxChildNodes", maxChildNodes);
request.addParameter("filter", filter);
// OAK-48: MicroKernel.getNodes() should return null for not existing nodes instead of throwing an exception
String result = request.getString();
Modified: jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/server/Server.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/server/Server.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/server/Server.java (original)
+++ jackrabbit/oak/trunk/oak-mk/src/main/java/org/apache/jackrabbit/mk/server/Server.java Tue May 29 13:04:27 2012
@@ -225,6 +225,10 @@ public class Server {
if (!stopped.compareAndSet(false, true)) {
return;
}
+ MicroKernel mk = mkref.getAndSet(null);
+ if (mk != null) {
+ mk.dispose();
+ }
if (es != null) {
es.shutdown();
}
Modified: jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/DefaultRevisionStoreTest.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/DefaultRevisionStoreTest.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/DefaultRevisionStoreTest.java (original)
+++ jackrabbit/oak/trunk/oak-mk/src/test/java/org/apache/jackrabbit/mk/store/DefaultRevisionStoreTest.java Tue May 29 13:04:27 2012
@@ -42,7 +42,7 @@ import org.junit.Test;
public class DefaultRevisionStoreTest {
/* avoid synthetic accessor */ DefaultRevisionStore rs;
- private MicroKernelImpl mk;
+ private MicroKernel mk;
@Before
public void setup() throws Exception {
Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/MicroKernelServer.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/MicroKernelServer.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/MicroKernelServer.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/MicroKernelServer.java Tue May 29 13:04:27 2012
@@ -31,7 +31,7 @@ public class MicroKernelServer {
return;
}
- final MicroKernel mk = MicroKernelFactory.getInstance(args[0]);
+ MicroKernel mk = MicroKernelFactory.getInstance(args[0]);
final Server server = new Server(mk);
if (args.length >= 2) {
@@ -48,7 +48,6 @@ public class MicroKernelServer {
@Override
public void run() {
server.stop();
- MicroKernelFactory.disposeInstance(mk);
}
}, "ShutdownHook"));
}
Modified: jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RepositoryServlet.java
URL: http://svn.apache.org/viewvc/jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RepositoryServlet.java?rev=1343707&r1=1343706&r2=1343707&view=diff
==============================================================================
--- jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RepositoryServlet.java (original)
+++ jackrabbit/oak/trunk/oak-run/src/main/java/org/apache/jackrabbit/oak/run/RepositoryServlet.java Tue May 29 13:04:27 2012
@@ -28,7 +28,7 @@ class RepositoryServlet extends JCRWebda
private final String path;
- private MicroKernelImpl kernel;
+ private MicroKernel kernel;
private Repository repository;