com.vaadin.data.util.sqlcontainer.query.
Interface FreeformStatementDelegate
All Superinterfaces:
- extends FreeformQueryDelegate
public interface FreeformStatementDelegate
FreeformStatementDelegate is an extension to FreeformQueryDelegate that provides definitions for methods that produce StatementHelper objects instead of basic query strings. This allows the FreeformQuery query delegate to use PreparedStatements instead of regular Statement when accessing the database. Due to the injection protection and other benefits of prepared statements, it is advisable to implement this interface instead of the FreeformQueryDelegate whenever possible.
Method Summary | |
---|---|
StatementHelper |
getContainsRowQueryStatement(Object... keys)
Should return a new instance of StatementHelper that contains the query string and parameter values required to create a PreparedStatement used by the FreeformQuery.containsRowWithKeys() method. |
StatementHelper |
getCountStatement()
Should return a new instance of StatementHelper that contains the query string and parameter values required to create a PreparedStatement that will fetch the row count from the DB. |
StatementHelper |
getQueryStatement(int offset,
int limit)
Should return a new instance of StatementHelper that contains the query string and parameter values required to create a PreparedStatement. |
Methods inherited from interface com.vaadin.data.util.sqlcontainer.query.FreeformQueryDelegate |
---|
getContainsRowQueryString, getCountQuery, getQueryString, removeRow, setFilters, setOrderBy, storeRow |
Method Detail |
---|
getQueryStatement
StatementHelper getQueryStatement(int offset,
int limit)
throws UnsupportedOperationException
- Parameters:
offset
- the first record (row) to fetch.pagelength
- the number of records (rows) to fetch. 0 means all records starting from offset.- Throws:
UnsupportedOperationException
Should return a new instance of StatementHelper that contains the query string and parameter values required to create a PreparedStatement. This method is responsible for gluing together the select query from the filters and the order by conditions if these are supported.
getCountStatement
StatementHelper getCountStatement()
throws UnsupportedOperationException
- Throws:
UnsupportedOperationException
Should return a new instance of StatementHelper that contains the query string and parameter values required to create a PreparedStatement that will fetch the row count from the DB. Row count should be fetched using filters that are currently set to the QueryDelegate.
getContainsRowQueryStatement
StatementHelper getContainsRowQueryStatement(Object... keys)
throws UnsupportedOperationException
- Parameters:
keys
- the values of the primary keys- Throws:
UnsupportedOperationException
- to use the default logic in FreeformQuery
Should return a new instance of StatementHelper that contains the query string and parameter values required to create a PreparedStatement used by the FreeformQuery.containsRowWithKeys() method. This is useful for cases when the default logic in said method is not enough to support more complex free form queries.