Implement request listener interface in core.
[jSite2.git] / src / net / pterodactylus / jsite / core / CoreImpl.java
index c61aa74..9c00951 100644 (file)
@@ -34,7 +34,7 @@ import net.pterodactylus.util.logging.Logging;
  *
  * @author David ‘Bombe’ Roden <bombe@freenetproject.org>
  */
-public class CoreImpl implements Core, NodeListener {
+public class CoreImpl implements Core, NodeListener, RequestListener {
 
        /** The logger. */
        private static final Logger logger = Logging.getLogger(CoreImpl.class.getName());
@@ -52,6 +52,9 @@ public class CoreImpl implements Core, NodeListener {
        /** The node manager. */
        private NodeManager nodeManager;
 
+       /** The request manager. */
+       private RequestManager requestManager;
+
        //
        // LISTENER MANAGEMENT
        //
@@ -115,6 +118,16 @@ public class CoreImpl implements Core, NodeListener {
        }
 
        /**
+        * Sets the request manager.
+        *
+        * @param requestManager
+        *            The request manager
+        */
+       public void setRequestManager(RequestManager requestManager) {
+               this.requestManager = requestManager;
+       }
+
+       /**
         * {@inheritDoc}
         */
        public List<Node> getNodes() {
@@ -165,6 +178,7 @@ public class CoreImpl implements Core, NodeListener {
         */
        public void stop() {
                logger.log(Level.INFO, "stopping core…");
+               saveConfig();
                try {
                        projectManager.save();
                        coreListenerSupport.fireSavingProjectsDone(projectManager.getDirectory());
@@ -262,7 +276,6 @@ public class CoreImpl implements Core, NodeListener {
        /**
         * Saves the configuration.
         */
-       @SuppressWarnings("unused")
        private void saveConfig() {
                logger.log(Level.FINEST, "saveConfig()");
                /* TODO */
@@ -307,4 +320,15 @@ public class CoreImpl implements Core, NodeListener {
                coreListenerSupport.fireNodeDisconnected(node, throwable);
        }
 
+       //
+       // INTERFACE RequestListener
+       //
+
+       /**
+        * {@inheritDoc}
+        */
+       public void requestAdded(Request request) {
+               /* TODO */
+       }
+
 }