Class SetStatusUpdate
java.lang.Object
org.deltava.dao.DAO
org.deltava.dao.SetStatusUpdate
A Data Access Object to write status updates for a Pilot to the database.
- Since:
- 1.0
- Version:
- 10.0
- Author:
- Luke
-
Field Summary
Fields inherited from class DAO
_queryMax, _queryStart, _queryTimeout, WGS84_SRIDModifier and TypeFieldDescriptionprotected intThe maximum number of rows to return.protected intThe row number at which to start returning results.protected intThe query timeout, in seconds.protected static final intThe SRID used for geolocation queries. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclearLOA(int id) Clears spurious Leave of Absence records created within 24 hours if a Pilot returns from an LOA immediately.voidwrite(Collection<StatusUpdate> updates) Writes a number of Status Update entries to the database.voidwrite(StatusUpdate update, String dbName) Writes the Status Update log entry to a database.Methods inherited from class DAO
commitTransaction, createTimestamp, executeIDs, executeUpdate, executeUpdate, expandDate, formatDBName, formatLocation, getNewID, getQueryCount, prepare, prepareWithoutLimits, rollbackTransaction, setQueryMax, setQueryStart, setQueryTimeout, startTransaction, toID, toID, toInstantModifier and TypeMethodDescriptionprotected voidCommits a multi-step transaction to the database.protected static TimestampNull-safe conversion of an Instant to a Timestamp.Helper method to extract database ID data from the result set.protected static intexecuteUpdate(PreparedStatement ps, int minUpdateCount) Executes an UPDATE transaction on a prepared statement, and throws aSQLExceptionif less than the expected number of rows were updated.protected static intexecuteUpdate(PreparedStatement ps, int minPerUpdate, int minTotal) Executes an batched UPDATE transaction on a prepared statement, and throws aSQLExceptionif less than the expected number of rows were updated per batch entry.protected static InstantexpandDate(Date dt) Converts a date-only JDBC value into a full timestamp.protected static StringformatDBName(String db) Formats a database name by converting to lowercase.protected static StringConverts a geographic location into a MySQL WKT formatted point.protected intgetNewID()Returns the AUTO_INC column value generated by the previous JDBC transaction.static final longReturns the total number of queries executed since the JVM was started.protected PreparedStatementInitialize the prepared statement with an arbitrary SQL statement.protected PreparedStatementInitialize the prepared statement with an abitrary SQL statement, without applying the DAO's query result limitations.protected voidRolls back a multi-step transaction before it is completed.final voidsetQueryMax(int maxRows) Sets the maximum number of rows in the returned result set.final voidsetQueryStart(int rowStart) Sets the first row of the results to return.voidsetQueryTimeout(int timeout) Sets the timeout for any SQL operations.protected voidMarks the start of a multi-step database transaction.protected static IntegerConverts a Database bean or an Integer into an Integer.protected static Collection<Integer> toID(Collection<?> ids) Converts a collection of Objects into Integer IDs.protected static InstantNull-safe conversion of a Timestamp to an Instant.
-
Constructor Details
-
SetStatusUpdate
Initializes the Data Access Object.- Parameters:
c- the JDBC connection to use
-
-
Method Details
-
write
Writes the Status Update log entry to a database.- Parameters:
update- the Status Update entrydbName- the database name- Throws:
DAOException- if a JDBC error occurs
-
write
Writes a number of Status Update entries to the database.- Parameters:
updates- a Collection of StatusUpdates- Throws:
DAOException- if a JDBC error occurs
-
clearLOA
Clears spurious Leave of Absence records created within 24 hours if a Pilot returns from an LOA immediately.- Parameters:
id- the Pilot database ID- Throws:
DAOException- if a JDBC error occurs
-