Class SetSystemData
java.lang.Object
org.deltava.dao.DAO
org.deltava.dao.SetSystemData
A Data Access Object to write system logging (user commands, tasks) entries.
- Since:
- 1.0
- Version:
- 12.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 TypeMethodDescriptionvoiddeleteBlacklist(String addr) Removes a login/registration blacklist entry containing a particular IP address.voidlogAPIRequests(Collection<APIRequest> reqs) Writes external API requests to the database.voidlogCommands(Collection<CommandLog> entries) Logs Web Site Command invocation.voidLogs user authentication.voidlogTaskExecution(String name, long execTime) Logs the execution time of a Scheduled Task.intpurgeCommands(int days) Purges entries out of a System commands log table.voidUpdates an existing Time Zone entry in the database.voidwrite(BlacklistEntry be) Writes a login/registration blacklist entry to the database.voidWrites a Browser policy violation report to the database.voidWrites a new Time Zone entry to the 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
-
SetSystemData
Initialize the Data Access Object.- Parameters:
c- the JDBC connection to use
-
-
Method Details
-
logCommands
Logs Web Site Command invocation.- Parameters:
entries- the Command log entries- Throws:
DAOException- if a JDBC error occurs
-
logAPIRequests
Writes external API requests to the database.- Parameters:
reqs- a Collection of APIRequest beans- Throws:
DAOException- if a JDBC error occurs
-
logTaskExecution
Logs the execution time of a Scheduled Task.- Parameters:
name- the Scheduled Task nameexecTime- the execution time in milliseconds- Throws:
DAOException- if a JDBC error occurs
-
purgeCommands
Purges entries out of a System commands log table.- Parameters:
days- the number of days back to set the cutoff date- Returns:
- the number of entries deleted
- Throws:
DAOException- if a JDBC error occurs
-
write
Writes a Browser policy violation report to the database.- Parameters:
r- a BrowserReport- Throws:
DAOException- if a JDBC error occurs
-
login
Logs user authentication.- Parameters:
dbName- the database nameid- the User's database IDaddr- the remote IP addresshost- the remote host name- Throws:
DAOException- if a JDBC error occurs
-
deleteBlacklist
Removes a login/registration blacklist entry containing a particular IP address.- Parameters:
addr- the IP address- Throws:
DAOException- if a JDBC error occurs
-
write
Writes a login/registration blacklist entry to the database.- Parameters:
be- a BlacklistEntry bean- Throws:
DAOException- if a JDBC error occurs
-
write
Writes a new Time Zone entry to the database.- Parameters:
tz- the Time Zone bean- Throws:
DAOException- if a JDBC error occurs
-
update
Updates an existing Time Zone entry in the database.- Parameters:
oldID- the old Time Zone codetz- the Time Zone bean- Throws:
DAOException- if a JDBC error occurs
-