Class GetACARSOnTime
java.lang.Object
org.deltava.dao.DAO
org.deltava.dao.GetACARSOnTime
A Data Access Object to load ACARS on-time data from the database.
- Since:
- 8.4
- Version:
- 10.3
- 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 TypeMethodDescriptiongetByDate(int maxDays) Retrieves airline-wide on-time flight statistics.Loads on-time data.getOnTimeStatistics(int pilotID) Retrieves aggregated on-time performance values for a Pilot.getOnTimeStatistics(RoutePair rp, String db) Returns on-time flight statistics for a particular flight route.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
-
GetACARSOnTime
Initializes the Data Access Object.- Parameters:
c- the JDBC connection to use
-
-
Method Details
-
getOnTime
Loads on-time data. The flight report will have its departure and arrival times set.- Parameters:
afr- the ACARSFlightReport- Returns:
- a ScheduleEntry, or null if not found
- Throws:
DAOException- if a JDBC error occurs
-
getOnTimeStatistics
Retrieves aggregated on-time performance values for a Pilot.- Parameters:
pilotID- the Pilot's database ID, or zero for the entire airline- Returns:
- a Map of Flight counts, keyed by OnTime values
- Throws:
DAOException- if a JDBC error occurs
-
getByDate
Retrieves airline-wide on-time flight statistics.- Parameters:
maxDays- the maximum number of days in the past to retrieve- Returns:
- a Collection of OnTimeStatsEntry beans
- Throws:
DAOException- if a JDBC error occurs
-
getOnTimeStatistics
Returns on-time flight statistics for a particular flight route.- Parameters:
rp- the RoutePairdb- the database name- Returns:
- an OnlineStatsEntry bean
- Throws:
DAOException- if a JDBC error occurs
-