[jboss-svn-commits] JBL Code SVN: r14825 - in labs/shotoku/trunk: shotoku-tags/src/java/org/jboss/shotoku/tags/service and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Sep 3 06:47:22 EDT 2007
Author: adamw
Date: 2007-09-03 06:47:22 -0400 (Mon, 03 Sep 2007)
New Revision: 14825
Added:
labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagCacheItemDataSource.java
Removed:
labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedService.java
labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceGetter.java
labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceImpl.java
Log:
Deleting administrated services
Deleted: labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedService.java
===================================================================
--- labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedService.java 2007-09-03 10:36:04 UTC (rev 14824)
+++ labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedService.java 2007-09-03 10:47:22 UTC (rev 14825)
@@ -1,39 +0,0 @@
-package org.jboss.shotoku.service;
-
-import java.util.Date;
-
-/**
- * A base class for services that can be started and stopped via the
- * ShotokuAdmin web application and are periodically updated.
- * @author Adam Warski (adamw at aster.pl)
- */
-public interface AdministratedService {
- public long getLastUpdate();
- public Date getLastUpdateDate();
- public void setLastUpdate(long lastUpdate);
-
- public void setTimerInterval(long timerInterval);
- public long getTimerInterval();
-
- public boolean getServiceRunnable();
- public void setServiceRunnable(boolean runnable);
-
- public String getServiceId();
- public String getServiceName();
- public String getServiceDescription();
-
- public void update();
-
- public AdministratedService getServiceInstance();
-
- public long getLastUpdateSecondsAgo();
-
- /*
- * SERVICE MANAGEMENT METHODS
- */
-
- public void create() throws Exception;
- public void start() throws Exception;
- public void stop();
- public void destroy();
-}
Deleted: labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceGetter.java
===================================================================
--- labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceGetter.java 2007-09-03 10:36:04 UTC (rev 14824)
+++ labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceGetter.java 2007-09-03 10:47:22 UTC (rev 14825)
@@ -1,25 +0,0 @@
-package org.jboss.shotoku.service;
-
-/**
- * @author Adam Warski (adamw at aster.pl)
- */
-public abstract class AdministratedServiceGetter {
- public abstract AdministratedService getService();
-
- public int hashCode() {
- return getService().getServiceId().hashCode();
- }
-
- public boolean equals(Object obj) {
- if (obj == null) {
- return false;
- }
-
- if (!(obj instanceof AdministratedServiceGetter)) {
- return false;
- }
-
- return getService().getServiceId().equals(
- ((AdministratedServiceGetter) obj).getService().getServiceId());
- }
-}
Deleted: labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceImpl.java
===================================================================
--- labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceImpl.java 2007-09-03 10:36:04 UTC (rev 14824)
+++ labs/shotoku/trunk/shotoku-base/src/java/org/jboss/shotoku/service/AdministratedServiceImpl.java 2007-09-03 10:47:22 UTC (rev 14825)
@@ -1,135 +0,0 @@
-package org.jboss.shotoku.service;
-
-import org.apache.log4j.Logger;
-import org.jboss.shotoku.tools.Tools;
-
-import java.util.Date;
-import java.util.Calendar;
-
-/**
- * @author Adam Warski (adamw at aster.pl)
- */
-public abstract class AdministratedServiceImpl
- implements AdministratedService {
- private static final Logger log =
- Logger.getLogger(AdministratedService.class);
-
- private long lastUpdate;
- private volatile long timerInterval;
- private boolean serviceRunnable;
- private Thread updateThread;
-
- public long getLastUpdate() {
- return lastUpdate;
- }
-
- public Date getLastUpdateDate() {
- return new Date(getLastUpdate());
- }
-
- public void setLastUpdate(long lastUpdate) {
- this.lastUpdate = lastUpdate;
- }
-
- public boolean getServiceRunnable() {
- return serviceRunnable;
- }
-
- public void setServiceRunnable(boolean runnable) {
- serviceRunnable = runnable;
- }
-
- public void setTimerInterval(long timerInterval) {
- this.timerInterval = timerInterval;
- }
-
- public long getTimerInterval() {
- return timerInterval;
- }
-
- public synchronized Thread getUpdateThread() {
- return updateThread;
- }
-
- private synchronized void setUpdateThread(Thread updateThread) {
- this.updateThread = updateThread;
- }
-
- public void create() throws Exception {
- log.info("Creating " + getServiceName() + "...");
-
- // Enabling administration for this service.
- Tools.getService().addAdministratedService(
- new AdministratedServiceGetter() {
- public AdministratedService getService() {
- return getServiceInstance();
- }
- });
- }
-
- public void afterCreate() throws Exception {
- log.info(getServiceName() + " created.");
- }
-
- public void start() throws Exception {
- log.info("Starting " + getServiceName() + "...");
- setServiceRunnable(true);
- }
-
- public void afterStart() throws Exception {
- log.info(getServiceName() + " started.");
- }
-
- public void stop() {
- log.info("Stopping " + getServiceName() + "...");
- setServiceRunnable(false);
- log.info(getServiceName() + " stopped.");
- }
-
- public void destroy() {
- log.info("Destroying " + getServiceName() + "...");
- }
-
- public void afterDestroy() {
- log.info(getServiceName() + " destroyed.");
- }
-
- public void startUpdateThread() {
- Thread ut = new Thread() {
- {
- setDaemon(true);
- }
-
- public void run() {
- while (getServiceRunnable()) {
- try {
- sleep(getTimerInterval());
- } catch (InterruptedException e) {
- // Forced update.
- log.debug("Sleeping of updater thread for " +
- getServiceName() + " interrupted.", e);
- }
-
- try {
- update();
- } catch (Throwable t) {
- // Making sure that an exception won't stop the thread.
- log.error("Update method for " + getServiceName() +
- " threw an exception.", t);
- }
-
- setLastUpdate(Calendar.getInstance().getTimeInMillis());
- }
-
- log.info(getServiceName() + " deaemon thread terminated.");
- }
- };
-
- ut.start();
- setUpdateThread(ut);
- }
-
- public long getLastUpdateSecondsAgo() {
- return (System.currentTimeMillis() - getLastUpdate())/1000;
- }
-}
Added: labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagCacheItemDataSource.java
===================================================================
--- labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagCacheItemDataSource.java (rev 0)
+++ labs/shotoku/trunk/shotoku-tags/src/java/org/jboss/shotoku/tags/service/TagCacheItemDataSource.java 2007-09-03 10:47:22 UTC (rev 14825)
@@ -0,0 +1,29 @@
+package org.jboss.shotoku.tags.service;
+
+import org.jboss.shotoku.cache.CacheItemDataSource;
+import org.jboss.shotoku.cache.ValueChange;
+import org.jboss.shotoku.cache.ValueInit;
+import org.jboss.shotoku.tags.TagService;
+
+public class TagCacheItemDataSource implements CacheItemDataSource<Object, Object> {
+ private TagService service;
+
+ public TagCacheItemDataSource(TagService service) {
+ super();
+ this.service = service;
+ }
+
+ public String getInfo() {
+ return null;
+ }
+
+ public ValueInit<? extends Object> init(Object key) {
+ return ValueInit.realValue(null);
+ }
+
+ public ValueChange<? extends Object> update(Object key, Object currentObject) {
+ service.update();
+ return ValueChange.noChange();
+ }
+
+}
More information about the jboss-svn-commits
mailing list