[or-cvs] r15688: move stuff around (in puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi: . impl)
sebastian at seul.org
sebastian at seul.org
Sun Jul 6 12:48:37 UTC 2008
Author: sebastian
Date: 2008-07-06 08:48:37 -0400 (Sun, 06 Jul 2008)
New Revision: 15688
Added:
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractMasterFactory.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractSlaveFactory.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalMaster.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Master.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemoteMaster.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Slave.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Test.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestResult.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImpl.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImplFactory.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImpl.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImplFactory.java
Removed:
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorMasterFactory.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorSlaveFactory.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalPuppeTorMaster.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorMaster.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorSlave.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTest.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTestResult.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemotePuppeTorMaster.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImpl.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImplFactory.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImpl.java
puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImplFactory.java
Log:
move stuff around
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractMasterFactory.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorMasterFactory.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractMasterFactory.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractMasterFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,87 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.rmi.RemoteException;
+
+/**
+ * Factory to create all objects needed by the master side of a PuppeTor
+ * network.
+ *
+ * @author Sebastian Hahn
+ */
+public abstract class AbstractMasterFactory {
+
+ /**
+ * Hold the concrete RemotePuppeTorFactory that will be used to create the
+ * implementation classes. Use
+ * <code>AbstractMasterFactory.class</code> for locking.
+ */
+ private static AbstractMasterFactory factory;
+
+ /**
+ * @return a new concrete
+ * <code>AbstractRemotePuppeTorFactory<code>subclass as
+ * specified by the initialization
+ */
+ final public synchronized static AbstractMasterFactory getInstance() {
+ return factory;
+ }
+
+ /**
+ * @param factory
+ * save this as the factory if this hasn't been called before.
+ */
+ final public synchronized static void initialize(
+ final AbstractMasterFactory factory) {
+ if (AbstractMasterFactory.factory == null) {
+ AbstractMasterFactory.factory = factory;
+ }
+ }
+
+ /**
+ * Override this to create a subclass of <code>RemotePuppeTor</code>
+ *
+ * @param slave
+ * Create the server represantation for this connected slave
+ * @return The new <code>RemotePuppeTor</code> instance
+ */
+ public abstract Master createPuppeTorMaster(Slave slave)
+ throws RemoteException;
+
+ /**
+ * Override this to create a subclass of <code>TestExecutor</code>.
+ *
+ * @return The new <code>TestExecutor</code> instance.
+ */
+ public abstract TestExecutor createTestExecutor();
+}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorMasterFactory.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorMasterFactory.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorMasterFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,87 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-import java.rmi.RemoteException;
-
-/**
- * Factory to create all objects needed by the master side of a PuppeTor
- * network.
- *
- * @author Sebastian Hahn
- */
-public abstract class AbstractMasterFactory {
-
- /**
- * Hold the concrete RemotePuppeTorFactory that will be used to create the
- * implementation classes. Use
- * <code>AbstractMasterFactory.class</code> for locking.
- */
- private static AbstractMasterFactory factory;
-
- /**
- * @return a new concrete
- * <code>AbstractRemotePuppeTorFactory<code>subclass as
- * specified by the initialization
- */
- final public synchronized static AbstractMasterFactory getInstance() {
- return factory;
- }
-
- /**
- * @param factory
- * save this as the factory if this hasn't been called before.
- */
- final public synchronized static void initialize(
- final AbstractMasterFactory factory) {
- if (AbstractMasterFactory.factory == null) {
- AbstractMasterFactory.factory = factory;
- }
- }
-
- /**
- * Override this to create a subclass of <code>RemotePuppeTor</code>
- *
- * @param slave
- * Create the server represantation for this connected slave
- * @return The new <code>RemotePuppeTor</code> instance
- */
- public abstract Master createPuppeTorMaster(Slave slave)
- throws RemoteException;
-
- /**
- * Override this to create a subclass of <code>TestExecutor</code>.
- *
- * @return The new <code>TestExecutor</code> instance.
- */
- public abstract TestExecutor createTestExecutor();
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorSlaveFactory.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorSlaveFactory.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorSlaveFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,84 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-import java.util.Set;
-
-import de.uniba.wiai.lspi.puppetor.rmi.Slave.OS;
-
-/**
- * Create a new representation of the server. Initialize this once with a
- * concrete subclass of itself to create the actual <code>RemotePuppeTor</code>
- * instance.
- *
- * @author Sebastian Hahn
- */
-public abstract class AbstractSlaveFactory {
-
- /**
- * Hold the concrete RemotePuppeTorFactory that will be used to create
- * <code>Slave</code> instances. Uses
- * <code>AbstractSlaveFactory.class</code> for locking.
- */
- private static AbstractSlaveFactory factory;
-
- /**
- * @return a new concrete
- * <code>AbstractSlaveFactory<code>subclass as
- * specified by the initialization
- */
- final public synchronized static AbstractSlaveFactory getInstance() {
- return factory;
- }
-
- /**
- * @param factory
- * save this as the factory if this hasn't been called before.
- * XXX - We could throw an exception here, too. I will think
- * about that.-SH
- */
- final public synchronized static void initialize(
- final AbstractSlaveFactory factory) {
- if (AbstractSlaveFactory.factory == null) {
- AbstractSlaveFactory.factory = factory;
- }
- }
-
- /**
- * Override this to create a subclass of <code>Slave</code>
- *
- * @return The new <code>Slave</code> instance
- */
- public abstract Slave createPuppeTorSlave(final String slaveName,
- final OS os, final String ip, final Set<Integer> ports,
- final Set<Integer> availableRevisions) throws NullPointerException;
-}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractSlaveFactory.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractPuppeTorSlaveFactory.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractSlaveFactory.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/AbstractSlaveFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,84 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.util.Set;
+
+import de.uniba.wiai.lspi.puppetor.rmi.Slave.OS;
+
+/**
+ * Create a new representation of the server. Initialize this once with a
+ * concrete subclass of itself to create the actual <code>RemotePuppeTor</code>
+ * instance.
+ *
+ * @author Sebastian Hahn
+ */
+public abstract class AbstractSlaveFactory {
+
+ /**
+ * Hold the concrete RemotePuppeTorFactory that will be used to create
+ * <code>Slave</code> instances. Uses
+ * <code>AbstractSlaveFactory.class</code> for locking.
+ */
+ private static AbstractSlaveFactory factory;
+
+ /**
+ * @return a new concrete
+ * <code>AbstractSlaveFactory<code>subclass as
+ * specified by the initialization
+ */
+ final public synchronized static AbstractSlaveFactory getInstance() {
+ return factory;
+ }
+
+ /**
+ * @param factory
+ * save this as the factory if this hasn't been called before.
+ * XXX - We could throw an exception here, too. I will think
+ * about that.-SH
+ */
+ final public synchronized static void initialize(
+ final AbstractSlaveFactory factory) {
+ if (AbstractSlaveFactory.factory == null) {
+ AbstractSlaveFactory.factory = factory;
+ }
+ }
+
+ /**
+ * Override this to create a subclass of <code>Slave</code>
+ *
+ * @return The new <code>Slave</code> instance
+ */
+ public abstract Slave createPuppeTorSlave(final String slaveName,
+ final OS os, final String ip, final Set<Integer> ports,
+ final Set<Integer> availableRevisions) throws NullPointerException;
+}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalMaster.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalPuppeTorMaster.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalMaster.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalMaster.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+/**
+ * Represent a connection between the locally running PuppeTor network Master
+ * and a slave. This is the master part of the <code>Master</code>
+ * interface.
+ *
+ * @author Sebastian Hahn
+ */
+public interface LocalMaster {
+ /**
+ * @return the slave instance this connection refers to.
+ */
+ public Slave getSlave();
+
+ /**
+ * Register with the TestExecutor
+ */
+ public void registerWithTestExecutor();
+}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalPuppeTorMaster.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalPuppeTorMaster.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/LocalPuppeTorMaster.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-/**
- * Represent a connection between the locally running PuppeTor network Master
- * and a slave. This is the master part of the <code>Master</code>
- * interface.
- *
- * @author Sebastian Hahn
- */
-public interface LocalMaster {
- /**
- * @return the slave instance this connection refers to.
- */
- public Slave getSlave();
-
- /**
- * Register with the TestExecutor
- */
- public void registerWithTestExecutor();
-}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Master.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorMaster.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Master.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Master.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,36 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+public interface Master {
+
+}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorMaster.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorMaster.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorMaster.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,36 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-public interface Master {
-
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorSlave.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorSlave.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorSlave.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,78 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-import java.io.Serializable;
-import java.net.InetAddress;
-import java.util.Set;
-
-/**
- * A <code>Slave</code> represents a slave instance ready for tests.
- * It carries information about the testing capabilities of a given slave. A
- * slave may not provide information except for its name, which is always
- * mandatory. The slave will not be used for non-client traffic, though.
- *
- * @author Sebastian Hahn
- */
-public interface Slave extends Serializable {
-
- public enum OS {
- UNDEFINED, LINUX_I86_32, LINUX_I86_64, MAC_OSX_PPC, MAC_OSX_I86,
- WINDOWS_XP_32, WINDOWS_XP_64, WINDOWS_VISTA_32, WINDOWS_VISTA_64
- }
-
- /**
- * @return the slave's name.
- */
- public String getName();
-
- /**
- * @return the slave's operating system as defined in
- * <code>Slave.OS</code>.
- */
- public OS getOS();
-
- /**
- * @return the slave's IP address. XXX Test this with IPv6-SH
- */
- public InetAddress getIP();
-
- /**
- * @return the ports this slave can open
- */
- public Set<Integer> openablePorts();
-
- /**
- * @return Tor revisions available on the slave
- */
- public Set<Integer> availableRevisions();
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTest.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTest.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTest.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,58 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-import java.io.Serializable;
-import java.rmi.RemoteException;
-
-import de.uniba.wiai.lspi.puppetor.PuppeTorException;
-
-/**
- * <code>Test</code> describes a test and the kind of slave it can run
- * on, as well as other network settings that are required for the test to work.
- * A test should be able to tell whether it was successfully run or not when
- * passed a TestResult.
- *
- * @author Sebastian Hahn
- */
-public interface Test extends Serializable {
- /**
- * XXX this goes away. I just put it in to see whether a remote test would
- * actually execut on a slave.
- *
- * @return
- * @throws RemoteException
- * @throws PuppeTorException
- */
- public Object doJob() throws RemoteException, PuppeTorException;
- // public //hier dann halt network etc hin
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTestResult.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTestResult.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTestResult.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,42 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-import java.io.Serializable;
-
-/**
- * XXX unused for now. this will hold the result of a /<code>Test</code>
- * -SH
- */
-public interface TestResult extends Serializable {
- public Test getJob();
-}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemoteMaster.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemotePuppeTorMaster.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemoteMaster.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemoteMaster.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.rmi.Remote;
+import java.rmi.RemoteException;
+
+/**
+ * <code>RemotePuppeTor</code> is the main interface that drives the
+ * interaction between the interconnected master and its slave instances. It is
+ * published by the master's instance, and represents the view of the master a
+ * slave has. It provides ways for the slave to register a
+ * <code>Slave</code> to provide information about its capabilities,
+ * as well as a way for the slave to poll the master for new work and then
+ * report back results. XXX We will need a way to allow the master to access
+ * this, as well as a way for clients with open ports to register for callback
+ * support instead of polling for new tasks =SH
+ *
+ * @author Sebastian Hahn
+ */
+public interface RemoteMaster extends Remote {
+
+ /**
+ * Slaves that must poll because they are not reachable can use this method
+ * to ask the master for new work.
+ *
+ * @throws RemoteException
+ * RMI...
+ */
+ public Test getNewJob() throws RemoteException;
+
+ /**
+ * XXX We want the slaves to report back when they have an update for the
+ * master-SH
+ *
+ * @param jobResult
+ * @throws RemoteException
+ *
+ * public void reportResults(TestResult testResult) throws
+ * RemoteException;
+ */
+}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemotePuppeTorMaster.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemotePuppeTorMaster.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/RemotePuppeTorMaster.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,71 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi;
-
-import java.rmi.Remote;
-import java.rmi.RemoteException;
-
-/**
- * <code>RemotePuppeTor</code> is the main interface that drives the
- * interaction between the interconnected master and its slave instances. It is
- * published by the master's instance, and represents the view of the master a
- * slave has. It provides ways for the slave to register a
- * <code>Slave</code> to provide information about its capabilities,
- * as well as a way for the slave to poll the master for new work and then
- * report back results. XXX We will need a way to allow the master to access
- * this, as well as a way for clients with open ports to register for callback
- * support instead of polling for new tasks =SH
- *
- * @author Sebastian Hahn
- */
-public interface RemoteMaster extends Remote {
-
- /**
- * Slaves that must poll because they are not reachable can use this method
- * to ask the master for new work.
- *
- * @throws RemoteException
- * RMI...
- */
- public Test getNewJob() throws RemoteException;
-
- /**
- * XXX We want the slaves to report back when they have an update for the
- * master-SH
- *
- * @param jobResult
- * @throws RemoteException
- *
- * public void reportResults(TestResult testResult) throws
- * RemoteException;
- */
-}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Slave.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorSlave.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Slave.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Slave.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,78 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.io.Serializable;
+import java.net.InetAddress;
+import java.util.Set;
+
+/**
+ * A <code>Slave</code> represents a slave instance ready for tests.
+ * It carries information about the testing capabilities of a given slave. A
+ * slave may not provide information except for its name, which is always
+ * mandatory. The slave will not be used for non-client traffic, though.
+ *
+ * @author Sebastian Hahn
+ */
+public interface Slave extends Serializable {
+
+ public enum OS {
+ UNDEFINED, LINUX_I86_32, LINUX_I86_64, MAC_OSX_PPC, MAC_OSX_I86,
+ WINDOWS_XP_32, WINDOWS_XP_64, WINDOWS_VISTA_32, WINDOWS_VISTA_64
+ }
+
+ /**
+ * @return the slave's name.
+ */
+ public String getName();
+
+ /**
+ * @return the slave's operating system as defined in
+ * <code>Slave.OS</code>.
+ */
+ public OS getOS();
+
+ /**
+ * @return the slave's IP address. XXX Test this with IPv6-SH
+ */
+ public InetAddress getIP();
+
+ /**
+ * @return the ports this slave can open
+ */
+ public Set<Integer> openablePorts();
+
+ /**
+ * @return Tor revisions available on the slave
+ */
+ public Set<Integer> availableRevisions();
+}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Test.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTest.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Test.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/Test.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,58 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.io.Serializable;
+import java.rmi.RemoteException;
+
+import de.uniba.wiai.lspi.puppetor.PuppeTorException;
+
+/**
+ * <code>Test</code> describes a test and the kind of slave it can run
+ * on, as well as other network settings that are required for the test to work.
+ * A test should be able to tell whether it was successfully run or not when
+ * passed a TestResult.
+ *
+ * @author Sebastian Hahn
+ */
+public interface Test extends Serializable {
+ /**
+ * XXX this goes away. I just put it in to see whether a remote test would
+ * actually execut on a slave.
+ *
+ * @return
+ * @throws RemoteException
+ * @throws PuppeTorException
+ */
+ public Object doJob() throws RemoteException, PuppeTorException;
+ // public //hier dann halt network etc hin
+}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestResult.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/PuppeTorTestResult.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestResult.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/TestResult.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,42 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi;
+
+import java.io.Serializable;
+
+/**
+ * XXX unused for now. this will hold the result of a /<code>Test</code>
+ * -SH
+ */
+public interface TestResult extends Serializable {
+ public Test getJob();
+}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImpl.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImpl.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImpl.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImpl.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,111 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi.impl;
+
+import java.rmi.RemoteException;
+import java.rmi.server.UnicastRemoteObject;
+import java.rmi.server.Unreferenced;
+
+import de.uniba.wiai.lspi.puppetor.rmi.AbstractMasterFactory;
+import de.uniba.wiai.lspi.puppetor.rmi.CreateNetwork;
+import de.uniba.wiai.lspi.puppetor.rmi.LocalMaster;
+import de.uniba.wiai.lspi.puppetor.rmi.Master;
+import de.uniba.wiai.lspi.puppetor.rmi.Slave;
+import de.uniba.wiai.lspi.puppetor.rmi.Test;
+import de.uniba.wiai.lspi.puppetor.rmi.RemoteMaster;
+
+/**
+ * Represent the master at the slave, and give the master a way to interact with
+ * the respective slave.
+ *
+ * @author Sebastian Hahn
+ */
+public class MasterImpl extends UnicastRemoteObject implements
+ LocalMaster, RemoteMaster, Master, Unreferenced {
+
+ /**
+ * Required for serialization. Needs to change for new released versions.
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * Store the reference to the connected slave
+ */
+ private final Slave slave;
+
+ public Slave getSlave() {
+ return slave;
+ }
+
+ public void registerWithTestExecutor() {
+ AbstractMasterFactory.getInstance().createTestExecutor()
+ .registerLocalMaster(this);
+ }
+
+ /**
+ * Check the slave object for validity and save it for further reference
+ *
+ * @throws RemoteException
+ * RMI
+ */
+ public MasterImpl(final Slave slave) throws RemoteException {
+ if (slave.getName() == null) {
+ throw new NullPointerException("The slave's name must not be null!");
+ }
+ this.slave = slave;
+ }
+
+ /**
+ * XXX Currently, there is no logic to give back useful tasks, but if the
+ * client is known, a new <code>CreateNetwork</code> test is submitted.-SH
+ */
+ public Test getNewJob() throws RemoteException {
+ return new CreateNetwork();
+ }
+
+ // public void repoprtResults(final String slaveName,
+ // final TestResult jobResult) throws RemoteException {
+ // XXX We want to let the server know that the client did some work and
+ // how it turned out to be. -SH
+ // }
+
+ /**
+ * Remove the slave from the Map of slaves and destroy its workqueues.
+ * Inform the TestRunner that all still-running tests failed because the
+ * slave went away. XXX Don't just promise to do that - we actually have to
+ * do that when there are the queues that I mentioned.-SH
+ */
+ public void unreferenced() {
+ AbstractMasterFactory.getInstance().createTestExecutor()
+ .unregisterLocalMaster(this);
+ }
+}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImplFactory.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImplFactory.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImplFactory.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/MasterImplFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi.impl;
+
+import java.rmi.RemoteException;
+import de.uniba.wiai.lspi.puppetor.rmi.AbstractMasterFactory;
+import de.uniba.wiai.lspi.puppetor.rmi.Master;
+import de.uniba.wiai.lspi.puppetor.rmi.Slave;
+import de.uniba.wiai.lspi.puppetor.rmi.TestExecutor;
+
+/**
+ * Create <code>RemotePuppeTorImpl</code> instances
+ *
+ * @author Sebastian Hahn
+ */
+public class MasterImplFactory extends AbstractMasterFactory {
+
+ @Override
+ public Master createPuppeTorMaster(final Slave slave)
+ throws RemoteException {
+ return new MasterImpl(slave);
+ }
+
+ @Override
+ public TestExecutor createTestExecutor() {
+ return TestExecutorImpl.getInstance();
+ }
+}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImpl.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImpl.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImpl.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,111 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi.impl;
-
-import java.rmi.RemoteException;
-import java.rmi.server.UnicastRemoteObject;
-import java.rmi.server.Unreferenced;
-
-import de.uniba.wiai.lspi.puppetor.rmi.AbstractMasterFactory;
-import de.uniba.wiai.lspi.puppetor.rmi.CreateNetwork;
-import de.uniba.wiai.lspi.puppetor.rmi.LocalMaster;
-import de.uniba.wiai.lspi.puppetor.rmi.Master;
-import de.uniba.wiai.lspi.puppetor.rmi.Slave;
-import de.uniba.wiai.lspi.puppetor.rmi.Test;
-import de.uniba.wiai.lspi.puppetor.rmi.RemoteMaster;
-
-/**
- * Represent the master at the slave, and give the master a way to interact with
- * the respective slave.
- *
- * @author Sebastian Hahn
- */
-public class MasterImpl extends UnicastRemoteObject implements
- LocalMaster, RemoteMaster, Master, Unreferenced {
-
- /**
- * Required for serialization. Needs to change for new released versions.
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * Store the reference to the connected slave
- */
- private final Slave slave;
-
- public Slave getSlave() {
- return slave;
- }
-
- public void registerWithTestExecutor() {
- AbstractMasterFactory.getInstance().createTestExecutor()
- .registerLocalMaster(this);
- }
-
- /**
- * Check the slave object for validity and save it for further reference
- *
- * @throws RemoteException
- * RMI
- */
- public MasterImpl(final Slave slave) throws RemoteException {
- if (slave.getName() == null) {
- throw new NullPointerException("The slave's name must not be null!");
- }
- this.slave = slave;
- }
-
- /**
- * XXX Currently, there is no logic to give back useful tasks, but if the
- * client is known, a new <code>CreateNetwork</code> test is submitted.-SH
- */
- public Test getNewJob() throws RemoteException {
- return new CreateNetwork();
- }
-
- // public void repoprtResults(final String slaveName,
- // final TestResult jobResult) throws RemoteException {
- // XXX We want to let the server know that the client did some work and
- // how it turned out to be. -SH
- // }
-
- /**
- * Remove the slave from the Map of slaves and destroy its workqueues.
- * Inform the TestRunner that all still-running tests failed because the
- * slave went away. XXX Don't just promise to do that - we actually have to
- * do that when there are the queues that I mentioned.-SH
- */
- public void unreferenced() {
- AbstractMasterFactory.getInstance().createTestExecutor()
- .unregisterLocalMaster(this);
- }
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImplFactory.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImplFactory.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorMasterImplFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi.impl;
-
-import java.rmi.RemoteException;
-import de.uniba.wiai.lspi.puppetor.rmi.AbstractMasterFactory;
-import de.uniba.wiai.lspi.puppetor.rmi.Master;
-import de.uniba.wiai.lspi.puppetor.rmi.Slave;
-import de.uniba.wiai.lspi.puppetor.rmi.TestExecutor;
-
-/**
- * Create <code>RemotePuppeTorImpl</code> instances
- *
- * @author Sebastian Hahn
- */
-public class MasterImplFactory extends AbstractMasterFactory {
-
- @Override
- public Master createPuppeTorMaster(final Slave slave)
- throws RemoteException {
- return new MasterImpl(slave);
- }
-
- @Override
- public TestExecutor createTestExecutor() {
- return TestExecutorImpl.getInstance();
- }
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImpl.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImpl.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImpl.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,157 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi.impl;
-
-import java.net.InetAddress;
-import java.net.UnknownHostException;
-import java.util.Collections;
-import java.util.Set;
-import java.util.concurrent.CopyOnWriteArraySet;
-
-import de.uniba.wiai.lspi.puppetor.rmi.Slave;
-
-/**
- * Describe a client including its capabilities and network location to the
- * master. Also allow the master to query that information. A slave is not
- * required to give more than its name, but it can only be used for very limited
- * tests.
- *
- * @author Sebastian Hahn
- */
-public final class SlaveImpl implements Slave {
-
- /**
- * Required for serialization. Needs to change for new released versions.
- */
- private static final long serialVersionUID = 1L;
-
- /**
- * The slave's name
- */
- protected final String name;
-
- /**
- * The slave's ip address
- */
- protected final InetAddress ip;
-
- /**
- * The operating system of the slave. See <code>Slave.OS</code>.
- */
- protected final OS os;
-
- /**
- * The ports this slave can open. Currently, we choose to use 256 as a
- * maximum that "should be" enough so we don't transfer so much data when
- * serializing. See the constructor. Make sure this is immutable.
- */
- protected final Set<Integer> ports;
-
- /**
- * The different revisions of Tor clients this slave can execute.
- */
- protected final Set<Integer> availableRevisions;
-
- /**
- * Create a new <code>Slave</code> with the metrics we currently
- * use, meaning it's operating system, it's IP, and the ports it can open.
- * We may in the future include other things like Tor executable version
- * numbers and the ability to run certain extra scripts.
- *
- * @param slaveName
- * the slave's name. Each slave must have it's own unique name in
- * a given PuppeTor network.
- * @param os
- * the slave's operating system.
- * @param ip
- * A String representation of the slave's IP (v4 or v6).
- * @param ports
- * All the ports this slave can open. Currently, we pick 256 out
- * of those at random.
- * @throws NullPointerException
- * if the slavename is null
- */
- public SlaveImpl(final String slaveName, final OS os,
- final String ip, final Set<Integer> ports,
- final Set<Integer> availableRevisions) throws NullPointerException {
- if (slaveName == null) {
- throw new NullPointerException("slaveName must not be null");
- }
- name = slaveName;
- this.os = os;
- try {
- this.ip = InetAddress.getByName(ip);
- } catch (final UnknownHostException e) {
- e.printStackTrace();
- throw new RuntimeException("You specified an invalid IP address!");
- }
-
- if (ports.size() > 256) {
- final Set<Integer> tmp = new CopyOnWriteArraySet<Integer>();
- int i = 0;
- for (final Integer j : tmp) {
- if (i++ == 256) {
- break;
- }
- tmp.add(j);
- }
- this.ports = Collections.unmodifiableSet(tmp);
- } else {
- this.ports =
- Collections
- .unmodifiableSet(new CopyOnWriteArraySet<Integer>(
- ports));
- }
- this.availableRevisions =
- Collections.unmodifiableSet(availableRevisions);
- }
-
- public String getName() {
- return name;
- }
-
- public OS getOS() {
- return os;
- }
-
- public InetAddress getIP() {
- return ip;
- }
-
- public Set<Integer> openablePorts() {
- return ports;
- }
-
- public Set<Integer> availableRevisions() {
- return availableRevisions;
- }
-}
Deleted: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImplFactory.java
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImplFactory.java 2008-07-06 12:44:43 UTC (rev 15687)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImplFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -1,59 +0,0 @@
-/*
- * Copyright (c) 2008, Sebastian Hahn
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the following disclaimer
- * in the documentation and/or other materials provided with the
- * distribution.
- *
- * * Neither the names of the copyright owners nor the names of its
- * contributors may be used to endorse or promote products derived from
- * this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package de.uniba.wiai.lspi.puppetor.rmi.impl;
-
-import java.util.Set;
-
-import de.uniba.wiai.lspi.puppetor.rmi.AbstractSlaveFactory;
-import de.uniba.wiai.lspi.puppetor.rmi.Slave;
-import de.uniba.wiai.lspi.puppetor.rmi.Slave.OS;
-
-/**
- * Create <code>RemotePuppeTorImpl</code> instances
- *
- * @author Sebastian Hahn
- */
-public class SlaveImplFactory extends AbstractSlaveFactory {
-
- /**
- * @return a new <code>RemotePuppeTorImpl</code> instance.
- */
- @Override
- public Slave createPuppeTorSlave(final String slaveName,
- final OS os, final String ip, final Set<Integer> ports,
- final Set<Integer> availableRevisions) throws NullPointerException {
- System.out.println(slaveName);
- return new SlaveImpl(slaveName, os, ip, ports,
- availableRevisions);
- }
-
-}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImpl.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImpl.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImpl.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImpl.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,157 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi.impl;
+
+import java.net.InetAddress;
+import java.net.UnknownHostException;
+import java.util.Collections;
+import java.util.Set;
+import java.util.concurrent.CopyOnWriteArraySet;
+
+import de.uniba.wiai.lspi.puppetor.rmi.Slave;
+
+/**
+ * Describe a client including its capabilities and network location to the
+ * master. Also allow the master to query that information. A slave is not
+ * required to give more than its name, but it can only be used for very limited
+ * tests.
+ *
+ * @author Sebastian Hahn
+ */
+public final class SlaveImpl implements Slave {
+
+ /**
+ * Required for serialization. Needs to change for new released versions.
+ */
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * The slave's name
+ */
+ protected final String name;
+
+ /**
+ * The slave's ip address
+ */
+ protected final InetAddress ip;
+
+ /**
+ * The operating system of the slave. See <code>Slave.OS</code>.
+ */
+ protected final OS os;
+
+ /**
+ * The ports this slave can open. Currently, we choose to use 256 as a
+ * maximum that "should be" enough so we don't transfer so much data when
+ * serializing. See the constructor. Make sure this is immutable.
+ */
+ protected final Set<Integer> ports;
+
+ /**
+ * The different revisions of Tor clients this slave can execute.
+ */
+ protected final Set<Integer> availableRevisions;
+
+ /**
+ * Create a new <code>Slave</code> with the metrics we currently
+ * use, meaning it's operating system, it's IP, and the ports it can open.
+ * We may in the future include other things like Tor executable version
+ * numbers and the ability to run certain extra scripts.
+ *
+ * @param slaveName
+ * the slave's name. Each slave must have it's own unique name in
+ * a given PuppeTor network.
+ * @param os
+ * the slave's operating system.
+ * @param ip
+ * A String representation of the slave's IP (v4 or v6).
+ * @param ports
+ * All the ports this slave can open. Currently, we pick 256 out
+ * of those at random.
+ * @throws NullPointerException
+ * if the slavename is null
+ */
+ public SlaveImpl(final String slaveName, final OS os,
+ final String ip, final Set<Integer> ports,
+ final Set<Integer> availableRevisions) throws NullPointerException {
+ if (slaveName == null) {
+ throw new NullPointerException("slaveName must not be null");
+ }
+ name = slaveName;
+ this.os = os;
+ try {
+ this.ip = InetAddress.getByName(ip);
+ } catch (final UnknownHostException e) {
+ e.printStackTrace();
+ throw new RuntimeException("You specified an invalid IP address!");
+ }
+
+ if (ports.size() > 256) {
+ final Set<Integer> tmp = new CopyOnWriteArraySet<Integer>();
+ int i = 0;
+ for (final Integer j : tmp) {
+ if (i++ == 256) {
+ break;
+ }
+ tmp.add(j);
+ }
+ this.ports = Collections.unmodifiableSet(tmp);
+ } else {
+ this.ports =
+ Collections
+ .unmodifiableSet(new CopyOnWriteArraySet<Integer>(
+ ports));
+ }
+ this.availableRevisions =
+ Collections.unmodifiableSet(availableRevisions);
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public OS getOS() {
+ return os;
+ }
+
+ public InetAddress getIP() {
+ return ip;
+ }
+
+ public Set<Integer> openablePorts() {
+ return ports;
+ }
+
+ public Set<Integer> availableRevisions() {
+ return availableRevisions;
+ }
+}
Copied: puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImplFactory.java (from rev 15687, puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/PuppeTorSlaveImplFactory.java)
===================================================================
--- puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImplFactory.java (rev 0)
+++ puppetor/branches/gsoc2008/src/de/uniba/wiai/lspi/puppetor/rmi/impl/SlaveImplFactory.java 2008-07-06 12:48:37 UTC (rev 15688)
@@ -0,0 +1,59 @@
+/*
+ * Copyright (c) 2008, Sebastian Hahn
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * Redistributions in binary form must reproduce the above
+ * copyright notice, this list of conditions and the following disclaimer
+ * in the documentation and/or other materials provided with the
+ * distribution.
+ *
+ * * Neither the names of the copyright owners nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+package de.uniba.wiai.lspi.puppetor.rmi.impl;
+
+import java.util.Set;
+
+import de.uniba.wiai.lspi.puppetor.rmi.AbstractSlaveFactory;
+import de.uniba.wiai.lspi.puppetor.rmi.Slave;
+import de.uniba.wiai.lspi.puppetor.rmi.Slave.OS;
+
+/**
+ * Create <code>RemotePuppeTorImpl</code> instances
+ *
+ * @author Sebastian Hahn
+ */
+public class SlaveImplFactory extends AbstractSlaveFactory {
+
+ /**
+ * @return a new <code>RemotePuppeTorImpl</code> instance.
+ */
+ @Override
+ public Slave createPuppeTorSlave(final String slaveName,
+ final OS os, final String ip, final Set<Integer> ports,
+ final Set<Integer> availableRevisions) throws NullPointerException {
+ System.out.println(slaveName);
+ return new SlaveImpl(slaveName, os, ip, ports,
+ availableRevisions);
+ }
+
+}
More information about the tor-commits
mailing list