X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fnet%2Fpterodactylus%2Fjsite%2Fcore%2FCore.java;h=27d87d97f3f1498418f975d26b416308fea85e7a;hb=e31fcc622092336df5f94587769012f724629a40;hp=456ddaeac220fb626971ad62fbdec2eb42af5e34;hpb=1b87930e43eb7d14068a21ed0b488f28cc6ce49b;p=jSite2.git
diff --git a/src/net/pterodactylus/jsite/core/Core.java b/src/net/pterodactylus/jsite/core/Core.java
index 456ddae..27d87d9 100644
--- a/src/net/pterodactylus/jsite/core/Core.java
+++ b/src/net/pterodactylus/jsite/core/Core.java
@@ -22,19 +22,18 @@ package net.pterodactylus.jsite.core;
import java.io.IOException;
import java.net.UnknownHostException;
import java.util.List;
-
-import net.pterodactylus.jsite.project.Project;
+import java.util.concurrent.Executor;
/**
* Interface for the core.
- *
+ *
* @author David âBombeâ Roden <bombe@freenetproject.org>
*/
public interface Core {
/**
* Adds the given listener to the list of registered listeners.
- *
+ *
* @param coreListener
* The listener to add
*/
@@ -42,19 +41,26 @@ public interface Core {
/**
* Removes the given listener from the list of registered listeners.
- *
+ *
* @param coreListener
* The listener to remove
*/
public void removeCoreListener(CoreListener coreListener);
/**
+ * Returns a thread pool.
+ *
+ * @return A thread pool
+ */
+ public Executor getThreadPool();
+
+ /**
* Adds the given node to the core.
- *
+ *
* @param node
* The node to add
- * @return true
if the node was added, false
- * if it was not added because it was already known
+ * @return true
if the node was added, false
if it
+ * was not added because it was already known
* @throws UnknownHostException
* if the hostname of the node can not be resolved
*/
@@ -62,7 +68,7 @@ public interface Core {
/**
* Removes the given node from the core.
- *
+ *
* @param node
* The node to remove
*/
@@ -70,18 +76,18 @@ public interface Core {
/**
* Returns the list of all configured nodes.
- *
+ *
* @return All configured nodes
*/
public List getNodes();
/**
* Returns whether the core is currently connected to the given node.
- *
+ *
* @param node
* The node to check
- * @return true
if the core is currently connected to the
- * node, false
otherwise
+ * @return true
if the core is currently connected to the node,
+ * false
otherwise
*/
public boolean isNodeConnected(Node node);
@@ -97,7 +103,7 @@ public interface Core {
/**
* Connects to the given node.
- *
+ *
* @param node
* The node to connect to
*/
@@ -105,7 +111,7 @@ public interface Core {
/**
* Disconnects from the given node.
- *
+ *
* @param node
* The node to disconnect from
*/
@@ -113,7 +119,7 @@ public interface Core {
/**
* Creates a new project.
- *
+ *
* @throws IOException
* if an I/O error occured communicating with the node
* @throws JSiteException
@@ -122,10 +128,20 @@ public interface Core {
public void createProject() throws IOException, JSiteException;
/**
+ * Inserts the given project on the given node.
+ *
+ * @param node
+ * The node to use for the insert
+ * @param project
+ * The project to insert
+ */
+ public void insertProject(Node node, Project project);
+
+ /**
* Clones the given project. {@link CoreListener}s will be notified of the
* new clone via the {@link CoreListener#projectCloned(Project, Project)}
* event.
- *
+ *
* @param project
* The project to clone
*/
@@ -133,7 +149,7 @@ public interface Core {
/**
* Removes the given project.
- *
+ *
* @param project
* The project to remove
*/
@@ -141,7 +157,7 @@ public interface Core {
/**
* Returns a list of all projects.
- *
+ *
* @return A list of all projects
*/
public List getProjects();