r1280 - in xwiki-clients/p2pxwiki: . lib resources src/main/java/com/xpn/p2pxwiki/communication src/main/web/WEB-INF src/test/java/com/xpn/p2pxwiki/communication src/test/java/com/xpn/p2pxwiki/mocks

Sergiu Dumitriu sdumitriu at users.forge.objectweb.org
Mon Sep 4 22:36:16 CEST 2006


Author: sdumitriu
Date: 2006-09-04 22:36:15 +0200 (Mon, 04 Sep 2006)
New Revision: 1280

Added:
   xwiki-clients/p2pxwiki/lib/p2psockets-2.0-r2-apache-xmlrpc-3.0-src.jar
Modified:
   xwiki-clients/p2pxwiki/.classpath
   xwiki-clients/p2pxwiki/resources/log4j.properties
   xwiki-clients/p2pxwiki/src/main/java/com/xpn/p2pxwiki/communication/AbstractHandlerStub.java
   xwiki-clients/p2pxwiki/src/main/web/WEB-INF/xwiki.cfg
   xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/AbstractLocalTest.java
   xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/JxtaRpcLocalTest.java
   xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/mocks/Hello.java
Log:
Bug fix for infinite recursion on local Object method call.

Modified: xwiki-clients/p2pxwiki/.classpath
===================================================================
--- xwiki-clients/p2pxwiki/.classpath	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/.classpath	2006-09-04 20:36:15 UTC (rev 1280)
@@ -1,26 +1,26 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
-	<classpathentry excluding="com/xpn/p2pxwiki/communication/rpc/|com/xpn/p2pxwiki/communication/jxta/" kind="src" path="src/main/java"/>
-	<classpathentry excluding="com/xpn/p2pxwiki/communication/RpcLocalTest.java|com/xpn/p2pxwiki/communication/JxtaLocalTest.java|com/xpn/test/p2pxwiki/rpc/|com/xpn/test/p2pxwiki/registry/" kind="src" path="src/test/java"/>
-	<classpathentry kind="src" path="resources"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="lib" path="lib/swixml.jar"/>
-	<classpathentry kind="lib" path="lib/serializer.jar"/>
-	<classpathentry kind="lib" path="lib/saxpath.jar"/>
-	<classpathentry kind="lib" path="lib/p2psockets-core.jar"/>
-	<classpathentry kind="lib" path="lib/p2psockets-apache-xmlrpc.jar"/>
-	<classpathentry kind="lib" path="lib/p2psockets-2.0-r2-apache-xmlrpc-3.0.jar"/>
-	<classpathentry kind="lib" path="lib/org.mortbay.jetty.jar"/>
-	<classpathentry kind="lib" path="lib/jxtaext.jar"/>
-	<classpathentry kind="lib" path="lib/jxta.jar"/>
-	<classpathentry kind="lib" path="lib/jxl.jxta.jar"/>
-	<classpathentry kind="lib" path="lib/jdom-1.0.jar"/>
-	<classpathentry kind="lib" path="lib/jaxen-jdom.jar"/>
-	<classpathentry kind="lib" path="lib/jaxen-core.jar"/>
-	<classpathentry kind="lib" path="lib/javax.servlet.jar"/>
-	<classpathentry kind="lib" path="lib/bcprov-jdk14.jar"/>
-	<classpathentry kind="lib" path="lib/backport-util-concurrent.jar"/>
-	<classpathentry combineaccessrules="false" kind="src" path="/xwiki-trunk"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3.8.1"/>
-	<classpathentry kind="output" path="bin"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry excluding="com/xpn/p2pxwiki/communication/rpc/|com/xpn/p2pxwiki/communication/jxta/" kind="src" path="src/main/java"/>
+	<classpathentry excluding="com/xpn/p2pxwiki/communication/RpcLocalTest.java|com/xpn/p2pxwiki/communication/JxtaLocalTest.java|com/xpn/test/p2pxwiki/rpc/|com/xpn/test/p2pxwiki/registry/" kind="src" path="src/test/java"/>
+	<classpathentry kind="src" path="resources"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="lib" path="lib/swixml.jar"/>
+	<classpathentry kind="lib" path="lib/serializer.jar"/>
+	<classpathentry kind="lib" path="lib/saxpath.jar"/>
+	<classpathentry kind="lib" path="lib/p2psockets-core.jar"/>
+	<classpathentry kind="lib" path="lib/p2psockets-apache-xmlrpc.jar"/>
+	<classpathentry sourcepath="lib/p2psockets-2.0-r2-apache-xmlrpc-3.0-src.jar" kind="lib" path="lib/p2psockets-2.0-r2-apache-xmlrpc-3.0.jar"/>
+	<classpathentry kind="lib" path="lib/org.mortbay.jetty.jar"/>
+	<classpathentry kind="lib" path="lib/jxtaext.jar"/>
+	<classpathentry kind="lib" path="lib/jxta.jar"/>
+	<classpathentry kind="lib" path="lib/jxl.jxta.jar"/>
+	<classpathentry kind="lib" path="lib/jdom-1.0.jar"/>
+	<classpathentry kind="lib" path="lib/jaxen-jdom.jar"/>
+	<classpathentry kind="lib" path="lib/jaxen-core.jar"/>
+	<classpathentry kind="lib" path="lib/javax.servlet.jar"/>
+	<classpathentry kind="lib" path="lib/bcprov-jdk14.jar"/>
+	<classpathentry kind="lib" path="lib/backport-util-concurrent.jar"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/xwiki-trunk"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/3.8.1"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>

Added: xwiki-clients/p2pxwiki/lib/p2psockets-2.0-r2-apache-xmlrpc-3.0-src.jar
===================================================================
(Binary files differ)


Property changes on: xwiki-clients/p2pxwiki/lib/p2psockets-2.0-r2-apache-xmlrpc-3.0-src.jar
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: xwiki-clients/p2pxwiki/resources/log4j.properties
===================================================================
--- xwiki-clients/p2pxwiki/resources/log4j.properties	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/resources/log4j.properties	2006-09-04 20:36:15 UTC (rev 1280)
@@ -4,9 +4,11 @@
 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
 log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %t %X{url} %c{1}:%M:%L - %m%n
 
+
 ### root logger option ###
 log4j.rootLogger=warn, stdout
 
 log4j.logger.com.xpn.p2pxwiki=debug
 
-log4j.logger.org.apache.commons.httpclient=warn
\ No newline at end of file
+log4j.logger.org.apache.commons.httpclient=warn
+log4j.logger.org.p2psockets=info
\ No newline at end of file

Modified: xwiki-clients/p2pxwiki/src/main/java/com/xpn/p2pxwiki/communication/AbstractHandlerStub.java
===================================================================
--- xwiki-clients/p2pxwiki/src/main/java/com/xpn/p2pxwiki/communication/AbstractHandlerStub.java	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/src/main/java/com/xpn/p2pxwiki/communication/AbstractHandlerStub.java	2006-09-04 20:36:15 UTC (rev 1280)
@@ -23,7 +23,7 @@
 				public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
 					if (localObjectMethods && method.getDeclaringClass().equals(Object.class)) {
 						log.debug("Locally invoking method in class Object: "+method.getName());
-						return method.invoke(proxy, args); // call the method on the proxy itself
+						return method.invoke(this, args); // call the method on the proxy itself
 					} else {
 						// on the class level String methodName = pClass.getName() + "." + pMethod.getName();
 						// we don't use any TypeConverter ... would it be useful?

Modified: xwiki-clients/p2pxwiki/src/main/web/WEB-INF/xwiki.cfg
===================================================================
--- xwiki-clients/p2pxwiki/src/main/web/WEB-INF/xwiki.cfg	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/src/main/web/WEB-INF/xwiki.cfg	2006-09-04 20:36:15 UTC (rev 1280)
@@ -6,12 +6,15 @@
 xwiki.store.hibernate.path=/WEB-INF/hibernate.cfg.xml
 xwiki.store.hibernate.updateschema=1
 xwiki.store.hibernate.custommapping=1
-xwiki.store.cache=1
-xwiki.store.cache.capacity=100
 xwiki.monitor=1
-xwiki.plugins=com.xpn.p2pxwiki.communication.ConnectorPlugin,com.xpn.xwiki.plugin.calendar.CalendarPlugin,com.xpn.xwiki.plugin.feed.FeedPlugin,com.xpn.xwiki.plugin.ldap.LDAPPlugin,com.xpn.xwiki.plugin.google.GooglePlugin,com.xpn.xwiki.plugin.flickr.FlickrPlugin,com.xpn.xwiki.plugin.mail.MailPlugin,com.xpn.xwiki.plugin.packaging.PackagePlugin,com.xpn.xwiki.plugin.query.QueryPlugin,com.xpn.xwiki.plugin.graphviz.GraphVizPlugin,com.xpn.xwiki.plugin.svg.SVGPlugin,com.xpn.xwiki.plugin.charts.ChartingPlugin,com.xpn.xwiki.plugin.fileupload.FileUploadPlugin,com.xpn.xwiki.plugin.laszlo.LaszloPlugin,com.xpn.p2pxwiki.registry.P2PXWikiRegistryHandlerPlugin,com.xpn.p2pxwiki.rpc.P2PXWikiRPCHandlerPlugin,com.xpn.p2pxwiki.client.P2PXWikiRegistryClientPlugin,com.xpn.p2pxwiki.replication.P2PXWikiReplicationHandlerPlugin,com.xpn.p2pxwiki.client.P2PXWikiReplicationClientPlugin,com.xpn.p2pxwiki.synchronizer.SynchronizeOnEditPlugin
-# ,com.xpn.xwiki.plugin.image.ImagePlugin
+xwiki.plugins=com.xpn.p2pxwiki.communication.ConnectorPlugin,com.xpn.xwiki.plugin.calendar.CalendarPlugin,com.xpn.xwiki.plugin.feed.FeedPlugin,com.xpn.xwiki.plugin.ldap.LDAPPlugin,com.xpn.xwiki.plugin.google.GooglePlugin,com.xpn.xwiki.plugin.flickr.FlickrPlugin,com.xpn.xwiki.plugin.mail.MailPlugin,com.xpn.xwiki.plugin.packaging.PackagePlugin,com.xpn.xwiki.plugin.query.QueryPlugin,com.xpn.xwiki.plugin.graphviz.GraphVizPlugin,com.xpn.xwiki.plugin.svg.SVGPlugin,com.xpn.xwiki.plugin.charts.ChartingPlugin,com.xpn.xwiki.plugin.fileupload.FileUploadPlugin,com.xpn.xwiki.plugin.laszlo.LaszloPlugin
+# Bikas
+# com.xpn.p2pxwiki.client.P2PXWikiRegistryClientPlugin,
+# com.xpn.p2pxwiki.client.P2PXWikiReplicationClientPlugin,
+# Sergiu
+# com.xpn.p2pxwiki.synchronizer.SynchronizeOnEditPlugin
 
+
 # This parameter allows XWiki to operate in Hosting mode
 # allowing to create multiple wikis having their own database
 # and responding to different URLs
@@ -37,16 +40,23 @@
 xwiki.render.macromapping=1
 xwiki.backlinks=1
 
-xwiki.plugin.graphviz.dotpath=c:/Program Files/ATT/GraphViz/bin/dot.exe
-xwiki.plugin.graphviz.neatopath=c:/Program Files/ATT/GraphViz/bin/neato.exe
 
-xwiki.plugin.laszlo.baseurl=/openlaszlo/xwiki/
-xwiki.plugin.laszlo.path=c:/Program Files/Apache Software Foundation/Tomcat 5.0/webapps/openlaszlo/xwiki/
+xwiki.superadminpassword=super
 
-xwiki.plugin.image.cache.capacity=30
+xwiki.store.cache=0
 
-xwiki.superadminpassword=super
-p2pxwiki.peername=sdumitriu
-p2pxwiki.connector.network=com.xpn.p2pxwiki.communication.rpc.Network
-p2pxwiki.connector.type=com.xpn.p2pxwiki.communication.rpc.XmlRpcRemoteConnectionFactory
-p2pxwiki.connector.handler=com.xpn.p2pxwiki.communication.rpc.XmlRpcHandlerManager
+#p2pxwiki.connector.network=com.xpn.p2pxwiki.communication.xmlrpc.XmlRpcNetwork
+#p2pxwiki.connector.retry_with_default_network=false
+#
+#p2pxwiki.network.peer_name=86.105.132.60
+#p2pxwiki.network.server_port=8369
+#p2pxwiki.network.connector_factory=com.xpn.p2pxwiki.communication.xmlrpc.XmlRpcConnectionFactory
+#p2pxwiki.network.retry_with_default_connector_factory=false
+
+p2pxwiki.connector.network=com.xpn.p2pxwiki.communication.jxtarpc.JxtaRpcNetwork
+p2pxwiki.connector.retry_with_default_network=false
+
+p2pxwiki.network.peer_name=localPeer
+p2pxwiki.network.server_port=8685
+p2pxwiki.network.connector_factory=com.xpn.p2pxwiki.communication.jxtarpc.JxtaRpcConnectionFactory
+p2pxwiki.network.retry_with_default_connector_factory=false

Modified: xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/AbstractLocalTest.java
===================================================================
--- xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/AbstractLocalTest.java	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/AbstractLocalTest.java	2006-09-04 20:36:15 UTC (rev 1280)
@@ -1,5 +1,7 @@
 package com.xpn.p2pxwiki.communication;
 
+import org.p2psockets.P2PNetwork;
+
 import junit.framework.TestCase;
 
 import com.xpn.p2pxwiki.P2PXWikiException;
@@ -7,6 +9,8 @@
 import com.xpn.xwiki.XWiki;
 import com.xpn.xwiki.XWikiConfig;
 import com.xpn.xwiki.XWikiContext;
+import com.xpn.xwiki.XWikiException;
+import com.xpn.xwiki.web.XWikiEngineContext;
 
 abstract public class AbstractLocalTest extends TestCase {
 	
@@ -38,33 +42,51 @@
 		port = 3483;
 		
 		config = new XWikiConfig();
+		config.put("xwiki.store.cache", "0");
 		config.put(AbstractNetwork.PEER_NAME, localPeer);
 		config.put(AbstractNetwork.SERVER_PORT, (new Integer(port)).toString());
 		config.put(ConnectorPlugin.NETWORK_TYPE, getNetwork());
 		config.put(AbstractNetwork.CONNECTOR_FACTORY, getConnectionFactory());
 
 		xcontext = new XWikiContext();
-		xwiki = new XWiki(config, xcontext);
+		xwiki = new XWiki(config, xcontext) {
+			@Override
+			public void initXWiki(XWikiConfig config, XWikiContext context, XWikiEngineContext engine_context, boolean noupdate) throws XWikiException {
+				context.setWiki(this);
+				setConfig(config);
+				// super.initXWiki(config, context, engine_context, noupdate);
+			}
+		};
 		xcontext.setWiki(xwiki);
 
 		plugin = new ConnectorPlugin(ConnectorPlugin.PLUGIN_NAME, ConnectorPlugin.class.getName(), xcontext);
 		
-		config1 = new XWikiConfig();
-		config1.put(AbstractNetwork.PEER_NAME, remotePeer);
-		config1.put(AbstractNetwork.SERVER_PORT, (new Integer(port)).toString());
-		config1.put(ConnectorPlugin.NETWORK_TYPE, getNetwork());
-		config1.put(AbstractNetwork.CONNECTOR_FACTORY, getConnectionFactory());
-
-		xcontext1 = new XWikiContext();
-		xwiki1 = new XWiki(config1, xcontext1);
-		xcontext1.setWiki(xwiki1);
-		
-		plugin1 = new ConnectorPlugin(ConnectorPlugin.PLUGIN_NAME, ConnectorPlugin.class.getName(), xcontext1);
+//		config1 = new XWikiConfig();
+//		config1.put("xwiki.store.cache", "0");
+//		config1.put(AbstractNetwork.PEER_NAME, remotePeer);
+//		config1.put(AbstractNetwork.SERVER_PORT, (new Integer(port)).toString());
+//		config1.put(ConnectorPlugin.NETWORK_TYPE, getNetwork());
+//		config1.put(AbstractNetwork.CONNECTOR_FACTORY, getConnectionFactory());
+//
+//		xcontext1 = new XWikiContext();
+//		xwiki1 = xwiki;
+////		gnu.getopt = new XWiki(config1, xcontext1) {
+////			public void initXWiki(XWikiConfig config, XWikiContext context, XWikiEngineContext engine_context, boolean noupdate) throws XWikiException {
+////				context.setWiki(this);
+////				setConfig(config);
+////				// super.initXWiki(config, context, engine_context, noupdate);
+////			}
+////		};
+//		//xwiki1 = null;//new XWiki(config1, xcontext1);
+//		xcontext1.setWiki(xwiki1);
+//		
+//		plugin1 = new ConnectorPlugin(ConnectorPlugin.PLUGIN_NAME, ConnectorPlugin.class.getName(), xcontext1);
 	}
 
 	public void tearDown() throws Exception {
 		plugin.closeConnection(stub);
 		plugin.cleanup();
+		P2PNetwork.signOff();
 	}
 
 	public void test() throws P2PXWikiException {
@@ -73,16 +95,17 @@
 		assertEquals("hello world", stub.execute("hello_handler.hello", new Object[] {"world"}));
 	}
 	
-	public void testDynamicProxies() throws P2PXWikiException {
-		stub = plugin.getConnection(remotePeer);
-		Hello hello = (Hello)stub.getDynamicProxy("hello_handler", Hello.class, true);
-		assertEquals("hello world", hello.hello("world"));
-	}
-	
-	public void testInitializableHandlers() throws P2PXWikiException {
-		stub = plugin.getConnection(remotePeer);
-		assertEquals(remotePeer, stub.getPeerName());
-		assertEquals(new Boolean(true), stub.execute("hello_init.isInitialized", new Object[] {}));
-		assertEquals("hello world", stub.execute("hello_init.hello", new Object[] {"world"}));
-	}
+//	public void testDynamicProxies() throws P2PXWikiException {
+//		stub = plugin.getConnection(remotePeer);
+//		Hello hello = (Hello)stub.getDynamicProxy("hello_handler", Hello.class, true);
+//		assertEquals("hello world", hello.hello("world"));
+//		assertTrue(hello.toString().startsWith("com.xpn.p2pxwiki.communication.AbstractHandlerStub"));
+//	}
+//	
+//	public void testInitializableHandlers() throws P2PXWikiException {
+//		stub = plugin.getConnection(remotePeer);
+//		assertEquals(remotePeer, stub.getPeerName());
+//		assertEquals(new Boolean(true), stub.execute("hello_init.isInitialized", new Object[] {}));
+//		assertEquals("hello world", stub.execute("hello_init.hello", new Object[] {"world"}));
+//	}
 }

Modified: xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/JxtaRpcLocalTest.java
===================================================================
--- xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/JxtaRpcLocalTest.java	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/communication/JxtaRpcLocalTest.java	2006-09-04 20:36:15 UTC (rev 1280)
@@ -18,7 +18,7 @@
 	}
 
 	public String getRemotePeer() {
-		return "remotePeer";
+		return "localPeer";
 	}
 	
 	public String getNetwork() {

Modified: xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/mocks/Hello.java
===================================================================
--- xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/mocks/Hello.java	2006-09-04 20:32:17 UTC (rev 1279)
+++ xwiki-clients/p2pxwiki/src/test/java/com/xpn/p2pxwiki/mocks/Hello.java	2006-09-04 20:36:15 UTC (rev 1280)
@@ -4,4 +4,4 @@
 
 public interface Hello {
 	public abstract String hello(String world) throws P2PXWikiException;
-}
\ No newline at end of file
+}





More information about the Xwiki-notifications mailing list