X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;ds=sidebyside;f=src%2Fnet%2Fpterodactylus%2Fjsite%2Fcore%2FRequestManager.java;h=831c9b3ff145ff4e35862086f4efc52dad8172d6;hb=392d893dbfff0879ebb9d6bc2367729790f54e52;hp=23184b9444236b5dc9824b1e1a43c26fb6a4bdf5;hpb=c9724dfaa5c1aeac0e39243981717c11e66b7f1f;p=jSite2.git diff --git a/src/net/pterodactylus/jsite/core/RequestManager.java b/src/net/pterodactylus/jsite/core/RequestManager.java index 23184b9..831c9b3 100644 --- a/src/net/pterodactylus/jsite/core/RequestManager.java +++ b/src/net/pterodactylus/jsite/core/RequestManager.java @@ -43,6 +43,9 @@ public class RequestManager implements NodeListener { /** The logger. */ private static final Logger logger = Logger.getLogger(RequestManager.class.getName()); + /** Request event manager. */ + private final RequestListenerManager requestListenerManager = new RequestListenerManager(); + /** The node manager. */ private final NodeManager nodeManager; @@ -60,6 +63,32 @@ public class RequestManager implements NodeListener { } // + // LISTENER MANAGEMENT + // + + /** + * Adds the given request listener to the list of registered listeners. + * + * @see RequestListenerManager#addListener(RequestListener) + * @param requestListener + * The request listener to add + */ + public void addRequestListener(RequestListener requestListener) { + requestListenerManager.addListener(requestListener); + } + + /** + * Removes the given request listener from the list of registered listeners. + * + * @see RequestListenerManager#removeListener(RequestListener) + * @param requestListener + * The request listener to remove + */ + public void removeRequestListener(RequestListener requestListener) { + requestListenerManager.removeListener(requestListener); + } + + // // ACTIONS // @@ -100,6 +129,19 @@ public class RequestManager implements NodeListener { } /** + * Generates a client token for the given project. + * + * @param project + * The project to generate a client token for + * @return The generated client token + */ + public String generateClientToken(Project project) { + String clientToken = project.getId() + "." + System.currentTimeMillis(); + clientToken += "." + clientToken.hashCode(); + return clientToken; + } + + /** * Wraps the requests of the FCP API into jSite requests. * * @param requests