@Transactional(readOnly=true) public class QueryImpl extends AbstractLevel1Service implements LocalQuery
| Modifier and Type | Field and Description | 
|---|---|
protected Class<? extends org.apache.lucene.analysis.Analyzer> | 
analyzer  | 
queryFactory, sessionFactory| Constructor and Description | 
|---|
QueryImpl()  | 
| Modifier and Type | Method and Description | 
|---|---|
Long | 
aggByQuery(String agg,
          String field,
          String query,
          Parameters params)  | 
Map<String,Long> | 
aggMapByQuery(String agg,
             String mapKey,
             String field,
             String query,
             Parameters params)  | 
boolean | 
checkProperty(String type,
             String property)
Checks if a property is defined on a mapped Hibernate type. 
 | 
boolean | 
checkType(String type)
Checks if a type has been mapped in Hibernate. 
 | 
void | 
clear()  | 
boolean | 
contains(Object obj)
Tests if an object is currently contained in the session. 
 | 
void | 
evict(Object obj)
Removes an object graph from the session. 
 | 
<T> T | 
execute(org.springframework.orm.hibernate3.HibernateCallback callback)
Executes a  
HibernateCallback | 
<T> T | 
execute(Query<T> query)
Executes a locally defined Query. 
 | 
IObject | 
find(Class klass,
    long id)
lookup an entity by class and id. 
 | 
<T extends IObject> | 
findAll(Class<T> klass,
       Filter filter)
lookup all entities that belong to this class and match filter. 
 | 
<T extends IObject> | 
findAllByExample(T example,
                Filter filter)
search based on provided example entity. 
 | 
<T extends IObject> | 
findAllByFullText(Class<T> type,
                 String query,
                 Parameters params)
executes a full text search based on Lucene. 
 | 
<T extends IObject> | 
findAllByQuery(String queryName,
              Parameters params)
executes the stored query with the given name. 
 | 
<T extends IObject> | 
findAllByString(Class<T> klass,
               String fieldName,
               String value,
               boolean caseSensitive,
               Filter filter)
search a given field matching against a String. 
 | 
<T extends IObject> | 
findByExample(T example)
search based on provided example entity. 
 | 
<T extends IObject> | 
findByQuery(String queryName,
           Parameters params)
executes the stored query with the given name. 
 | 
<T extends IObject> | 
findByString(Class<T> klass,
            String fieldName,
            String value)
search a given field matching against a String. 
 | 
IObject | 
get(Class klass,
   long id)
lookup an entity by class and id. 
 | 
Class<? extends ServiceInterface> | 
getServiceInterface()  | 
void | 
initialize(Object obj)
Uses the Hibernate static method  
initialize to prepare an
 object for shipping over the wire. | 
protected void | 
parseFilter(org.hibernate.Criteria c,
           Filter f)
Responsible for applying the information provided in a
  
Filter to a Criteria
 instance. | 
List<Object[]> | 
projection(String query,
          Parameters p)
 | 
<T extends IObject> | 
refresh(T iObject)
refreshes an entire  
IObject graph, recursive loading all data for
 the managed instances in the graph from the database. | 
void | 
setAnalyzer(Class<? extends org.apache.lucene.analysis.Analyzer> analyzer)  | 
getBeanHelper, getQueryFactory, getSessionFactory, selfConfigure, setQueryFactory, setSessionFactoryprotected Class<? extends org.apache.lucene.analysis.Analyzer> analyzer
public void setAnalyzer(Class<? extends org.apache.lucene.analysis.Analyzer> analyzer)
public Class<? extends ServiceInterface> getServiceInterface()
getServiceInterface in interface SelfConfigurableService@Transactional(readOnly=false) public boolean contains(Object obj)
LocalQuerycontains in interface LocalQuery@Transactional(readOnly=false) public void evict(Object obj)
LocalQueryevict in interface LocalQuery@Transactional(readOnly=false) public void clear()
clear in interface LocalQuerypublic void initialize(Object obj)
LocalQueryinitialize to prepare an
 object for shipping over the wire.
 
 It is better to do this in your queries.initialize in interface LocalQueryHibernate@Transactional(propagation=SUPPORTS) public boolean checkType(String type)
LocalQuerycheckType in interface LocalQuerytype - String representation of a full-qualified Hibernate-mapped
            type.@Transactional(propagation=SUPPORTS) public boolean checkProperty(String type, String property)
LocalQuerycheckProperty in interface LocalQuerytype - String representation of a full-qualified Hibernate-mapped
            type.property - Property as defined in Hibernate NOT the public final static
            Strings on our IObject classes.public <T> T execute(org.springframework.orm.hibernate3.HibernateCallback callback)
LocalQueryHibernateCallbackexecute in interface LocalQuerycallback - An implementation of the HibernateCallback interface.LocalQuery.execute(HibernateCallback)public <T> T execute(Query<T> query)
LocalQueryexecute in interface LocalQueryquery - A subclass of the Query interface.LocalQuery.execute(Query)public IObject get(Class klass, long id) throws ValidationException
IQueryget in interface IQueryklass - the type of the entity. Not null.id - the entity's idValidationException - if the id doesn't exist.public IObject find(Class klass, long id)
IQuerypublic <T extends IObject> List<T> findAll(Class<T> klass, Filter filter)
IQuerypublic <T extends IObject> T findByExample(T example) throws ApiUsageException
IQueryid field. For
 that, use IQuery.find(Class, long), IQuery.get(Class, long),
 IQuery.findByQuery(String, Parameters), or
 IQuery.findAllByQuery(String, Parameters)findByExample in interface IQueryexample - Non-null example object.ApiUsageException - if more than one result is return.public <T extends IObject> List<T> findAllByExample(T example, Filter filter)
IQueryFilter object.
 
 Note: findAllbyExample does not operate on the id field.
 For that, use IQuery.find(Class, long), IQuery.get(Class, long),
 IQuery.findByQuery(String, Parameters), or
 IQuery.findAllByQuery(String, Parameters)findAllByExample in interface IQueryexample - Non-null example object.filter - filters the result set. Can be null.public <T extends IObject> T findByString(Class<T> klass, String fieldName, String value) throws ApiUsageException
IQueryfindByString in interface IQueryklass - type of entity to be searchedfieldName - the name of the field, either as simple string or as public
            final static from the entity class, e.g.
            Project.NAMEvalue - String used for search.ApiUsageException - if more than one result.public <T extends IObject> List<T> findAllByString(Class<T> klass, String fieldName, String value, boolean caseSensitive, Filter filter) throws ApiUsageException
IQueryFilter instance.findAllByString in interface IQueryklass - type of entity to be searched. Not null.fieldName - the name of the field, either as simple string or as public
            final static from the entity class, e.g.
            Project.NAME. Not null.value - String used for search. Not null.caseSensitive - whether to use LIKE or ILIKEfilter - filters the result set. Can be null.ApiUsageExceptionpublic <T extends IObject> T findByQuery(String queryName, Parameters params) throws ValidationException
IQueryfindByQuery in interface IQueryqueryName - String identifier of the query to executeparams - array of QueryParameter. Not null. The
            QueryParameter.name field maps to a field-name which
            is then matched against the QueryParameter.valueValidationExceptionpublic <T extends IObject> List<T> findAllByQuery(String queryName, Parameters params)
IQueryIObject instances. This means
 all must be of the form:
 
 select this from SomeModelClass this ...though the alias "this" is unimportant. Do not try to return multiple classes in one call like:
select this, that from SomeClass this, SomeOtherClass that ...nor to project values out of an object:
select this.name from SomeClass this ...If a page is desired, add it to the query parameters.
findAllByQuery in interface IQueryqueryName - String identifier of the query to execute. Not null.params - array of QueryParameter. The
            QueryParameter.name field maps to a field-name which
            is then matched against the QueryParameter.valuepublic <T extends IObject> List<T> findAllByFullText(Class<T> type, String query, Parameters params)
IQueryfindAllByFullText in interface IQuerytype - A non-null class specification of which type should be
            searched.query - A non-null query string. An empty string will return no
            results.params - Currently the parameters themselves are unusued. But the
            Parameters.filter can be used to limit the number
            of results returned (Filter.limit) or the
            user for who the results will be found (Filter.owner()).IObject instances. Never null.public List<Object[]> projection(String query, Parameters p)
IQueryObject instances (not IObject
 instances). These are the column names as specified in the HQL
 select statement (more than one is required).
 If an aggregation statement is used, a group by clause must be added.
 Examples:
 projection in interface IQuerypublic Long aggByQuery(String agg, String field, String query, Parameters params)
public Map<String,Long> aggMapByQuery(String agg, String mapKey, String field, String query, Parameters params)
public <T extends IObject> T refresh(T iObject) throws ApiUsageException
IQueryIObject graph, recursive loading all data for
 the managed instances in the graph from the database. If any non-managed
 entities are detected (e.g. without ids), an ApiUsageException
 will be thrown.refresh in interface IQueryiObject - Non-null managed IObject graph which should have all
            values re-assigned from the databaseIObject graph (with possible additions and
         deletions) which is in-sync with the database.ApiUsageException - if any non-managed entities are found.
                
                
Version: 5.2.3-ice35-b22
Copyright © 2016 The University of Dundee & Open Microscopy Environment. All Rights Reserved.