Class GetAggregateStatistics
java.lang.Object
org.deltava.dao.DAO
org.deltava.dao.GetAggregateStatistics
A Data Access Object to read aggregated Flight Report statistics.
- Since:
- 6.2
- Version:
- 12.4
- 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 TypeMethodDescriptiongetAirportStatistics(FlightStatsSort s, int apType) Retrieves aggregated approved Flight Report statistics.getChalleningRunways(int minLandings) Returns the most challenging Runways, with the lowest average landing score.Returns online network flight statstics by date.Retrieves aggregated Flight Report statistics.getRunwayLandingStats(Airport a, String rw, String dbName) Loads aggregate landing score statistics from the database.Retrieves aggregated approved Flight Report statistics.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
-
GetAggregateStatistics
Initializes the Data Access Object.- Parameters:
c- the JDBC connection to use
-
-
Method Details
-
getSimStatistics
public Collection<FlightStatsEntry> getSimStatistics(FlightStatsSort s, FlightStatsGroup grp) throws DAOException Retrieves aggregated approved Flight Report statistics.- Parameters:
s- the statistics sorting optiongrp- the statistics grouping option- Returns:
- a Collection of FlightStatsEntry beans
- Throws:
DAOException- if a JDBC error occurs
-
getAirportStatistics
public Collection<FlightStatsEntry> getAirportStatistics(FlightStatsSort s, int apType) throws DAOException Retrieves aggregated approved Flight Report statistics.- Parameters:
s- the sorting optionapType- the airport type, 1 for departure and 2 for arrival, 0 for all- Returns:
- a Collection of FlightStatsEntry beans
- Throws:
DAOException- if a JDBC error occurs
-
getOnlineStatistics
public Collection<OnlineStatsEntry> getOnlineStatistics(FlightStatsSort srt, FlightStatsGroup grp) throws DAOException Returns online network flight statstics by date.- Parameters:
srt- the FlightStatsSort optiongrp- the FlightStatsGroup option- Returns:
- a Collection of OnlineStatsEntry beans
- Throws:
DAOException- if a JDBC error occurs
-
getPIREPStatistics
public Collection<FlightStatsEntry> getPIREPStatistics(FlightStatsSort s, FlightStatsGroup grp) throws DAOException Retrieves aggregated Flight Report statistics.- Parameters:
s- the statistics sorting optiongrp- the statistics grouping option- Returns:
- a Collection of FlightStatsEntry beans
- Throws:
DAOException- if a JDBC error occurs
-
getRunwayLandingStats
public List<RunwayLandingStats> getRunwayLandingStats(Airport a, String rw, String dbName) throws DAOException Loads aggregate landing score statistics from the database.- Parameters:
a- the Airportrw- the Runway namedbName- the database name- Returns:
- a Collection of RunwayLandingStats beans
- Throws:
DAOException- if a JDBC error occurs
-
getChalleningRunways
Returns the most challenging Runways, with the lowest average landing score.- Parameters:
minLandings- the minimum number of landings- Returns:
- a List of Tuples, with Airport and Runway name
- Throws:
DAOException
-