org.quartz.impl.jdbcjobstore
Class PostgreSQLDelegate

java.lang.Object
  extended byorg.quartz.impl.jdbcjobstore.StdJDBCDelegate
      extended byorg.quartz.impl.jdbcjobstore.PostgreSQLDelegate
All Implemented Interfaces:
Constants, DriverDelegate, StdJDBCConstants

public class PostgreSQLDelegate
extends StdJDBCDelegate

This is a driver delegate for the PostgreSQL JDBC driver.

Author:
Jeffrey Wescott

Field Summary
 
Fields inherited from class org.quartz.impl.jdbcjobstore.StdJDBCDelegate
instanceId, logger, tablePrefix
 
Fields inherited from interface org.quartz.impl.jdbcjobstore.StdJDBCConstants
DELETE_BLOB_TRIGGER, DELETE_CALENDAR, DELETE_CRON_TRIGGER, DELETE_FIRED_TRIGGER, DELETE_FIRED_TRIGGERS, DELETE_INSTANCES_FIRED_TRIGGERS, DELETE_JOB_DETAIL, DELETE_JOB_LISTENERS, DELETE_NO_RECOVERY_FIRED_TRIGGERS, DELETE_PAUSED_TRIGGER_GROUP, DELETE_PAUSED_TRIGGER_GROUPS, DELETE_SCHEDULER_STATE, DELETE_SIMPLE_TRIGGER, DELETE_TRIGGER, DELETE_TRIGGER_LISTENERS, DELETE_VOLATILE_FIRED_TRIGGERS, INSERT_BLOB_TRIGGER, INSERT_CALENDAR, INSERT_CRON_TRIGGER, INSERT_FIRED_TRIGGER, INSERT_JOB_DETAIL, INSERT_JOB_LISTENER, INSERT_PAUSED_TRIGGER_GROUP, INSERT_SCHEDULER_STATE, INSERT_SIMPLE_TRIGGER, INSERT_TRIGGER, INSERT_TRIGGER_LISTENER, SELECT_BLOB_TRIGGER, SELECT_CALENDAR, SELECT_CALENDAR_EXISTENCE, SELECT_CALENDARS, SELECT_CRON_TRIGGER, SELECT_FIRED_TRIGGER, SELECT_FIRED_TRIGGER_GROUP, SELECT_FIRED_TRIGGERS, SELECT_FIRED_TRIGGERS_OF_JOB, SELECT_FIRED_TRIGGERS_OF_JOB_GROUP, SELECT_INSTANCES_FIRED_TRIGGERS, SELECT_INSTANCES_RECOVERABLE_FIRED_TRIGGERS, SELECT_JOB_DETAIL, SELECT_JOB_EXECUTION_COUNT, SELECT_JOB_EXISTENCE, SELECT_JOB_FOR_TRIGGER, SELECT_JOB_GROUPS, SELECT_JOB_LISTENERS, SELECT_JOB_STATEFUL, SELECT_JOBS_IN_GROUP, SELECT_MISFIRED_TRIGGERS, SELECT_MISFIRED_TRIGGERS_IN_GROUP_IN_STATE, SELECT_MISFIRED_TRIGGERS_IN_STATE, SELECT_NEXT_FIRE_TIME, SELECT_NUM_CALENDARS, SELECT_NUM_JOBS, SELECT_NUM_TRIGGERS, SELECT_NUM_TRIGGERS_FOR_JOB, SELECT_NUM_TRIGGERS_IN_GROUP, SELECT_PAUSED_TRIGGER_GROUP, SELECT_REFERENCED_CALENDAR, SELECT_SCHEDULER_STATE, SELECT_SCHEDULER_STATES, SELECT_SIMPLE_TRIGGER, SELECT_STATEFUL_JOBS_OF_TRIGGER_GROUP, SELECT_TRIGGER, SELECT_TRIGGER_EXISTENCE, SELECT_TRIGGER_FOR_FIRE_TIME, SELECT_TRIGGER_GROUPS, SELECT_TRIGGER_LISTENERS, SELECT_TRIGGER_STATE, SELECT_TRIGGER_STATUS, SELECT_TRIGGERS_FOR_JOB, SELECT_TRIGGERS_IN_GROUP, SELECT_TRIGGERS_IN_STATE, SELECT_VOLATILE_JOBS, SELECT_VOLATILE_TRIGGERS, TABLE_PREFIX_SUBST, UPDATE_BLOB_TRIGGER, UPDATE_CALENDAR, UPDATE_CRON_TRIGGER, UPDATE_INSTANCES_FIRED_TRIGGER_STATE, UPDATE_JOB_DATA, UPDATE_JOB_DETAIL, UPDATE_JOB_TRIGGER_STATES, UPDATE_JOB_TRIGGER_STATES_FROM_OTHER_STATE, UPDATE_SIMPLE_TRIGGER, UPDATE_TRIGGER, UPDATE_TRIGGER_GROUP_STATE, UPDATE_TRIGGER_GROUP_STATE_FROM_STATE, UPDATE_TRIGGER_GROUP_STATE_FROM_STATES, UPDATE_TRIGGER_STATE, UPDATE_TRIGGER_STATE_FROM_OTHER_STATES_BEFORE_TIME, UPDATE_TRIGGER_STATE_FROM_STATE, UPDATE_TRIGGER_STATE_FROM_STATES, UPDATE_TRIGGER_STATES_FROM_OTHER_STATES
 
Fields inherited from interface org.quartz.impl.jdbcjobstore.Constants
ALIAS_COL_NEXT_FIRE_TIME, ALL_GROUPS_PAUSED, COL_BLOB, COL_CALENDAR, COL_CALENDAR_NAME, COL_CHECKIN_INTERVAL, COL_CRON_EXPRESSION, COL_DESCRIPTION, COL_END_TIME, COL_ENTRY_ID, COL_ENTRY_STATE, COL_FIRED_TIME, COL_INSTANCE_NAME, COL_IS_DURABLE, COL_IS_STATEFUL, COL_IS_VOLATILE, COL_JOB_CLASS, COL_JOB_DATAMAP, COL_JOB_GROUP, COL_JOB_LISTENER, COL_JOB_NAME, COL_LAST_CHECKIN_TIME, COL_LOCK_NAME, COL_MISFIRE_INSTRUCTION, COL_NEXT_FIRE_TIME, COL_PREV_FIRE_TIME, COL_RECOVERER, COL_REPEAT_COUNT, COL_REPEAT_INTERVAL, COL_REQUESTS_RECOVERY, COL_START_TIME, COL_TIME_ZONE_ID, COL_TIMES_TRIGGERED, COL_TRIGGER_GROUP, COL_TRIGGER_LISTENER, COL_TRIGGER_NAME, COL_TRIGGER_STATE, COL_TRIGGER_TYPE, DEFAULT_TABLE_PREFIX, STATE_ACQUIRED, STATE_BLOCKED, STATE_COMPLETE, STATE_DELETED, STATE_ERROR, STATE_EXECUTING, STATE_MISFIRED, STATE_PAUSED, STATE_WAITING, TABLE_BLOB_TRIGGERS, TABLE_CALENDARS, TABLE_CRON_TRIGGERS, TABLE_FIRED_TRIGGERS, TABLE_JOB_DETAILS, TABLE_JOB_LISTENERS, TABLE_LOCKS, TABLE_PAUSED_TRIGGERS, TABLE_SCHEDULER_STATE, TABLE_SIMPLE_TRIGGERS, TABLE_TRIGGER_LISTENERS, TABLE_TRIGGERS, TTYPE_BLOB, TTYPE_CRON, TTYPE_SIMPLE
 
Constructor Summary
PostgreSQLDelegate(org.apache.commons.logging.Log log, java.lang.String tablePrefix, java.lang.String instanceId)
          Create new PostgreSQLDelegate instance.
 
Method Summary
protected  java.lang.Object getObjectFromBlob(java.sql.ResultSet rs, java.lang.String colName)
          This method should be overridden by any delegate subclasses that need special handling for BLOBs.
 
Methods inherited from class org.quartz.impl.jdbcjobstore.StdJDBCDelegate
calendarExists, calendarIsReferenced, deleteAllPausedTriggerGroups, deleteBlobTrigger, deleteCalendar, deleteCronTrigger, deleteFiredTrigger, deleteFiredTriggers, deleteFiredTriggers, deleteJobDetail, deleteJobListeners, deletePausedTriggerGroup, deleteSchedulerState, deleteSimpleTrigger, deleteTrigger, deleteTriggerListeners, deleteVolatileFiredTriggers, insertBlobTrigger, insertCalendar, insertCronTrigger, insertFiredTrigger, insertJobDetail, insertJobListener, insertPausedTriggerGroup, insertSchedulerState, insertSimpleTrigger, insertTrigger, insertTriggerListener, isExistingTriggerGroup, isJobStateful, isTriggerGroupPaused, jobExists, rtp, selectCalendar, selectCalendars, selectFiredTriggerRecords, selectFiredTriggerRecordsByJob, selectInstancesFiredTriggerRecords, selectJobDetail, selectJobExecutionCount, selectJobForTrigger, selectJobGroups, selectJobListeners, selectJobsInGroup, selectMisfiredTriggers, selectMisfiredTriggersInGroupInState, selectMisfiredTriggersInState, selectNextFireTime, selectNumCalendars, selectNumJobs, selectNumTriggers, selectNumTriggersForJob, selectSchedulerStateRecords, selectStatefulJobsOfTriggerGroup, selectTrigger, selectTriggerForFireTime, selectTriggerGroups, selectTriggerListeners, selectTriggerNamesForJob, selectTriggersForJob, selectTriggersForRecoveringJobs, selectTriggersInGroup, selectTriggersInState, selectTriggerState, selectTriggerStatus, selectVolatileJobs, selectVolatileTriggers, serializeJobData, serializeObject, triggerExists, updateBlobTrigger, updateCalendar, updateCronTrigger, updateJobData, updateJobDetail, updateSimpleTrigger, updateTrigger, updateTriggerGroupStateFromOtherState, updateTriggerGroupStateFromOtherStates, updateTriggerState, updateTriggerStateFromOtherState, updateTriggerStateFromOtherStates, updateTriggerStateFromOtherStatesBeforeTime, updateTriggerStatesForJob, updateTriggerStatesForJobFromOtherState, updateTriggerStatesFromOtherStates
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PostgreSQLDelegate

public PostgreSQLDelegate(org.apache.commons.logging.Log log,
                          java.lang.String tablePrefix,
                          java.lang.String instanceId)

Create new PostgreSQLDelegate instance.

Parameters:
tablePrefix - the prefix of all table names
Method Detail

getObjectFromBlob

protected java.lang.Object getObjectFromBlob(java.sql.ResultSet rs,
                                             java.lang.String colName)
                                      throws java.lang.ClassNotFoundException,
                                             java.io.IOException,
                                             java.sql.SQLException

This method should be overridden by any delegate subclasses that need special handling for BLOBs. The default implementation uses standard JDBC java.sql.Blob operations.

Overrides:
getObjectFromBlob in class StdJDBCDelegate
Parameters:
rs - the result set, already queued to the correct row
colName - the column name for the BLOB
Returns:
the deserialized Object from the ResultSet BLOB
Throws:
java.lang.ClassNotFoundException - if a class found during deserialization cannot be found
java.io.IOException - if deserialization causes an error
java.sql.SQLException


Copyright James House (c) 2001-2004