001: /*
002: * JBoss, Home of Professional Open Source.
003: * Copyright 2006, Red Hat Middleware LLC, and individual contributors
004: * as indicated by the @author tags. See the copyright.txt file in the
005: * distribution for a full listing of individual contributors.
006: *
007: * This is free software; you can redistribute it and/or modify it
008: * under the terms of the GNU Lesser General Public License as
009: * published by the Free Software Foundation; either version 2.1 of
010: * the License, or (at your option) any later version.
011: *
012: * This software is distributed in the hope that it will be useful,
013: * but WITHOUT ANY WARRANTY; without even the implied warranty of
014: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
015: * Lesser General Public License for more details.
016: *
017: * You should have received a copy of the GNU Lesser General Public
018: * License along with this software; if not, write to the Free
019: * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
020: * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
021: */
022: package org.jboss.ejb.txtimer;
023:
024: // $Id: NoopPersistencePolicy.java 57209 2006-09-26 12:21:57Z dimitris@jboss.org $
025:
026: import java.io.Serializable;
027: import java.util.ArrayList;
028: import java.util.Date;
029: import java.util.List;
030:
031: import javax.management.ObjectName;
032:
033: import org.jboss.logging.Logger;
034:
035: /**
036: * This service implements a PersistencePolicy that does not persist the timer.
037: *
038: * @author Thomas.Diesler@jboss.org
039: * @author Dimitris.Andreadis@jboss.org
040: * @version $Revision: 57209 $
041: * @since 09-Sep-2004
042: */
043: public class NoopPersistencePolicy implements
044: NoopPersistencePolicyMBean {
045: // logging support
046: private static Logger log = Logger
047: .getLogger(NoopPersistencePolicy.class);
048:
049: /**
050: * Creates the timer in persistent storage.
051: *
052: * @param timerId The timer id
053: * @param timedObjectId The timed object id
054: * @param firstEvent The point in time at which the first txtimer expiration must occur.
055: * @param firstEvent The point in time at which the first txtimer expiration must occur.
056: * @param periode The number of milliseconds that must elapse between txtimer expiration notifications.
057: */
058: public void insertTimer(String timerId,
059: TimedObjectId timedObjectId, Date firstEvent, long periode,
060: Serializable info) {
061: log.debug("Noop on insertTimer");
062: }
063:
064: /**
065: * Removes the timer from persistent storage.
066: *
067: * @param timerId The timer id
068: * @param timedObjectId The id of the timed object
069: */
070: public void deleteTimer(String timerId, TimedObjectId timedObjectId) {
071: log.debug("Noop on deleteTimer");
072: }
073:
074: /**
075: * Delete all persisted timers
076: */
077: public void clearTimers() {
078: log.debug("Noop on clearTimers");
079: }
080:
081: /**
082: * Restore the persistet timers
083: */
084: public void restoreTimers() {
085: log.debug("Noop on restoreTimers");
086: }
087:
088: /**
089: * List the persisted timer handles
090: *
091: * @param loader The ClassLoader to use for loading the handles
092: * @return a list of TimerHandleImpl objects
093: */
094: public List listTimerHandles(ObjectName containerId,
095: ClassLoader loader) {
096: log.debug("Noop on listTimerHandles");
097: return new ArrayList();
098: }
099:
100: /**
101: * Return a List of TimerHandle objects.
102: */
103: public List listTimerHandles() {
104: log.debug("Noop on listTimerHandles");
105: return new ArrayList();
106: }
107:
108: /**
109: * List the persisted timers for a particular TimerObjectId,
110: * or all persisted timers if timedObjectId is null.
111: *
112: * @param timedObjectId The id of the timed object, or null
113: * @return a list of TimerHandleImpl objects
114: */
115: public List listTimerHandles(TimedObjectId timedObjectId) {
116: log.debug("Noop on listTimerHandles");
117: return new ArrayList();
118: }
119:
120: }
|