Class GetCoolerChannels
java.lang.Object
org.deltava.dao.DAO
org.deltava.dao.GetCoolerChannels
A Data Access Object to load Water Cooler channel profiles.
- Since:
- 1.0
- Version:
- 10.0
- Author:
- Luke
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassHelper class to allow displaying of last subject in a channel. -
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 TypeMethodDescriptionRetrieves a specific Channel profile.getChannels(AirlineInformation al, boolean showInactive) Retrieves all Channels for a particular airline.getChannels(AirlineInformation al, Collection<String> roles) Retrieves all active Channels for a particular airline and available to users with a given Collection of roles.getLastPosts(Collection<Channel> channels) Returns a Map of the last posts in a group of Channels, indexed by Post ID.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
-
GetCoolerChannels
Create this DAO using a JDBC connection.- Parameters:
c- the JDBC connection to use
-
-
Method Details
-
get
Retrieves a specific Channel profile. This populate the roles and airlines.- Parameters:
channelName- the Channel name- Returns:
- the Channel profile
- Throws:
DAOException- if a JDBC error occurs
-
getChannels
Retrieves all Channels for a particular airline.- Parameters:
al- the AirlineshowInactive- TRUE if inactive channels should be returned, otherwise FALSE- Returns:
- a List of Channel beans
- Throws:
DAOException- if a JDBC error occurs
-
getChannels
public List<Channel> getChannels(AirlineInformation al, Collection<String> roles) throws DAOException Retrieves all active Channels for a particular airline and available to users with a given Collection of roles. If any role in the list is "Admin" then all channels for the Airline will be returned.- Parameters:
al- the Airlineroles- a Collection of role names- Returns:
- a List of channels
- Throws:
DAOException- if a JDBC error occurs
-
getLastPosts
Returns a Map of the last posts in a group of Channels, indexed by Post ID.- Parameters:
channels- a Collection of channels to query- Returns:
- a Map of Messages, keyed by database ID
- Throws:
DAOException- if a JDBC error occurs
-