diff --git a/src/main/java/org/kohsuke/confluence/scache/EasySSLProtocolSocketFactory.java b/src/main/java/org/kohsuke/confluence/scache/EasySSLProtocolSocketFactory.java index d787158..af7022d 100644 --- a/src/main/java/org/kohsuke/confluence/scache/EasySSLProtocolSocketFactory.java +++ b/src/main/java/org/kohsuke/confluence/scache/EasySSLProtocolSocketFactory.java @@ -30,17 +30,6 @@ * */ -import java.io.IOException; -import java.net.InetAddress; -import java.net.InetSocketAddress; -import java.net.Socket; -import java.net.SocketAddress; -import java.net.UnknownHostException; - -import javax.net.SocketFactory; -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; - import org.apache.commons.httpclient.ConnectTimeoutException; import org.apache.commons.httpclient.HttpClientError; import org.apache.commons.httpclient.params.HttpConnectionParams; @@ -48,6 +37,16 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import javax.net.SocketFactory; +import javax.net.ssl.SSLContext; +import javax.net.ssl.TrustManager; +import java.io.IOException; +import java.net.InetAddress; +import java.net.InetSocketAddress; +import java.net.Socket; +import java.net.SocketAddress; +import java.net.UnknownHostException; + /** *
* EasySSLProtocolSocketFactory can be used to creats SSL {@link Socket}s diff --git a/src/main/java/org/kohsuke/confluence/scache/EasyX509TrustManager.java b/src/main/java/org/kohsuke/confluence/scache/EasyX509TrustManager.java index 2ab800f..7edc638 100644 --- a/src/main/java/org/kohsuke/confluence/scache/EasyX509TrustManager.java +++ b/src/main/java/org/kohsuke/confluence/scache/EasyX509TrustManager.java @@ -26,18 +26,18 @@ * */ +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import javax.net.ssl.TrustManager; +import javax.net.ssl.TrustManagerFactory; +import javax.net.ssl.X509TrustManager; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.cert.CertificateException; import java.security.cert.X509Certificate; -import javax.net.ssl.TrustManagerFactory; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - /** *
* EasyX509TrustManager unlike default {@link X509TrustManager} accepts
diff --git a/src/main/java/org/kohsuke/confluence/scache/EventListenerImpl.java b/src/main/java/org/kohsuke/confluence/scache/EventListenerImpl.java
new file mode 100644
index 0000000..2a9dfe1
--- /dev/null
+++ b/src/main/java/org/kohsuke/confluence/scache/EventListenerImpl.java
@@ -0,0 +1,48 @@
+package org.kohsuke.confluence.scache;
+
+import com.atlassian.confluence.event.events.content.comment.CommentCreateEvent;
+import com.atlassian.confluence.event.events.content.comment.CommentRemoveEvent;
+import com.atlassian.confluence.event.events.content.comment.CommentUpdateEvent;
+import com.atlassian.confluence.event.events.content.page.PageCreateEvent;
+import com.atlassian.confluence.event.events.content.page.PageMoveEvent;
+import com.atlassian.confluence.event.events.content.page.PageRemoveEvent;
+import com.atlassian.confluence.event.events.content.page.PageRestoreEvent;
+import com.atlassian.confluence.event.events.content.page.PageUpdateEvent;
+import com.atlassian.confluence.event.events.label.LabelAddEvent;
+import com.atlassian.confluence.event.events.label.LabelRemoveEvent;
+import com.atlassian.event.Event;
+import com.atlassian.event.EventListener;
+
+/**
+ * @author Kohsuke Kawaguchi
+ */
+public class EventListenerImpl implements EventListener {
+ private final StaticPageGenerator staticPageGenerator;
+
+ public EventListenerImpl(StaticPageGenerator staticPageGenerator) {
+ this.staticPageGenerator = staticPageGenerator;
+ }
+
+ @Override
+ public void handleEvent(Event event) {
+ staticPageGenerator.onEvent(event);
+ }
+
+ @Override
+ public Class[] getHandledEventClasses() {
+ return HANDLED_EVENTS;
+ }
+
+ private final Class[] HANDLED_EVENTS = new Class[] {
+ PageCreateEvent.class,
+ PageRestoreEvent.class,
+ PageUpdateEvent.class,
+ PageMoveEvent.class,
+ PageRemoveEvent.class,
+ LabelAddEvent.class,
+ LabelRemoveEvent.class,
+ CommentCreateEvent.class,
+ CommentUpdateEvent.class,
+ CommentRemoveEvent.class
+ };
+}
diff --git a/src/main/java/org/kohsuke/confluence/scache/StaticPageGenerator.java b/src/main/java/org/kohsuke/confluence/scache/StaticPageGenerator.java
index 0a8a0fa..0ab377c 100644
--- a/src/main/java/org/kohsuke/confluence/scache/StaticPageGenerator.java
+++ b/src/main/java/org/kohsuke/confluence/scache/StaticPageGenerator.java
@@ -1,26 +1,16 @@
package org.kohsuke.confluence.scache;
import com.atlassian.confluence.core.ContentEntityObject;
-import com.atlassian.confluence.event.events.content.comment.CommentCreateEvent;
import com.atlassian.confluence.event.events.content.comment.CommentEvent;
-import com.atlassian.confluence.event.events.content.comment.CommentRemoveEvent;
-import com.atlassian.confluence.event.events.content.comment.CommentUpdateEvent;
-import com.atlassian.confluence.event.events.content.page.PageCreateEvent;
import com.atlassian.confluence.event.events.content.page.PageEvent;
-import com.atlassian.confluence.event.events.content.page.PageMoveEvent;
import com.atlassian.confluence.event.events.content.page.PageRemoveEvent;
-import com.atlassian.confluence.event.events.content.page.PageRestoreEvent;
-import com.atlassian.confluence.event.events.content.page.PageUpdateEvent;
-import com.atlassian.confluence.event.events.label.LabelAddEvent;
import com.atlassian.confluence.event.events.label.LabelEvent;
-import com.atlassian.confluence.event.events.label.LabelRemoveEvent;
import com.atlassian.confluence.labels.Labelable;
import com.atlassian.confluence.pages.Page;
import com.atlassian.confluence.pages.PageManager;
import com.atlassian.confluence.spaces.Space;
import com.atlassian.confluence.spaces.SpaceManager;
import com.atlassian.event.Event;
-import com.atlassian.event.EventListener;
import org.apache.commons.codec.binary.Base64;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpMethod;
@@ -43,7 +33,7 @@
/**
* @author Kohsuke Kawaguchi
*/
-public class StaticPageGenerator implements EventListener {
+public class StaticPageGenerator {
private final ScheduledExecutorService worker = new ScheduledThreadPoolExecutor(1,DAEMON_THREAD_FACTORY);
private final ConfigurationManager configurationManager;
@@ -157,8 +147,8 @@ private Properties loadConfigFile() throws IOException {
return props;
}
- public void handleEvent(Event event) {
- LOGGER.info("Handling "+event);
+ public void onEvent(Event event) {
+ LOGGER.info("Handling " + event);
if (event instanceof PageRemoveEvent) {
new Task(((PageEvent) event).getPage()).delete();
}
@@ -184,10 +174,6 @@ protected void finalize() throws Throwable {
worker.shutdown();
}
- public Class[] getHandledEventClasses() {
- return HANDLED_EVENTS;
- }
-
public void submit(Page page, boolean evictNow) {
final Task t = new Task(page);
if (evictNow)
@@ -217,18 +203,6 @@ public Thread newThread(Runnable r) {
}
};
- private final Class[] HANDLED_EVENTS = new Class[] {
- PageCreateEvent.class,
- PageRestoreEvent.class,
- PageUpdateEvent.class,
- PageMoveEvent.class,
- PageRemoveEvent.class,
- LabelAddEvent.class,
- LabelRemoveEvent.class,
- CommentCreateEvent.class,
- CommentUpdateEvent.class,
- CommentRemoveEvent.class
- };
private static File getBaseDir() {
String dir = System.getenv("STATIC_CACHE_DIR");
diff --git a/src/main/resources/atlassian-plugin.xml b/src/main/resources/atlassian-plugin.xml
index 44d8d09..aec163f 100644
--- a/src/main/resources/atlassian-plugin.xml
+++ b/src/main/resources/atlassian-plugin.xml
@@ -13,8 +13,13 @@