com.neeve.ods
Interface IStoreQueryEngine

All Superinterfaces:
com.neeve.query.index.IdxFieldResolver<IStoreObject>, QueryEngine<com.eaio.uuid.UUID,IStoreObject>

public interface IStoreQueryEngine
extends QueryEngine<com.eaio.uuid.UUID,IStoreObject>

A IStoreQueryEngine provides indexing and query capabilities for IStoreBindings.


Nested Class Summary
 
Nested classes/interfaces inherited from interface com.neeve.query.QueryEngine
QueryEngine.BackgroundIndexingPolicy
 
Method Summary
 IStoreQuery createQuery()
          Creates an empty Query that can be executed against this QueryEngine.
 IStoreQuery createQuery(String xsql)
          Creates a Query corresponding to the provided SELECT statement.
 IStoreQueryResultSet execute(IStoreQuery query)
          Executes the given log query against the logs added to this IStoreQueryEngine.
 IStoreQueryResultSet execute(String xsql)
          Executes an xpql query against this QueryEngine.
<T> IStoreField<T>
getField(Class<?> objectType, String fieldPath)
           
<T> IStoreField<T>
getField(Class<?> objectType, String fieldPath, Class<T> fieldType, Class<?>... pathTypes)
           
<T> IStoreField<T>
getField(String columnDefinition)
          Parses a field using the query engine's parser.
<T> IStoreField<T>
getField(String objectTypeName, String fieldPath)
           
 
Methods inherited from interface com.neeve.query.QueryEngine
addRepository, close, createIndex, createIndex, createIndex, dropIndex, dropIndex, execute, executeStatement, getFetchRatioThreshold, getIndexedFields, getRepositories, removeRepository, setAutoIndexing, setBackgroundIndexingPolicy, setDefaultIndexing, setDefaultPackage, setFetchRatioThreshold, waitForBackgroundIndexing
 

Method Detail

execute

IStoreQueryResultSet execute(String xsql)
Description copied from interface: QueryEngine
Executes an xpql query against this QueryEngine.

Specified by:
execute in interface QueryEngine<com.eaio.uuid.UUID,IStoreObject>
Parameters:
xsql - The SELECT statement to execute.
Returns:
the QueryResult.

createQuery

IStoreQuery createQuery(String xsql)
Description copied from interface: QueryEngine
Creates a Query corresponding to the provided SELECT statement.

Specified by:
createQuery in interface QueryEngine<com.eaio.uuid.UUID,IStoreObject>
Parameters:
xsql - The query string

createQuery

IStoreQuery createQuery()
Description copied from interface: QueryEngine
Creates an empty Query that can be executed against this QueryEngine.

Specified by:
createQuery in interface QueryEngine<com.eaio.uuid.UUID,IStoreObject>
Returns:
A new Query.

execute

IStoreQueryResultSet execute(IStoreQuery query)
Executes the given log query against the logs added to this IStoreQueryEngine.

Parameters:
query - The query to execute.
Returns:
The IStoreQueryResultSet results.

getField

<T> IStoreField<T> getField(String columnDefinition)
                        throws QueryException,
                               QueryParseException
Description copied from interface: QueryEngine
Parses a field using the query engine's parser.

Specified by:
getField in interface QueryEngine<com.eaio.uuid.UUID,IStoreObject>
Parameters:
columnDefinition - A field.
Returns:
The resolved field
Throws:
QueryParseException - if the columnDefinition can't be parsed as a valid column name
QueryException - if there is an error resolving the field

getField

<T> IStoreField<T> getField(String objectTypeName,
                            String fieldPath)
Specified by:
getField in interface com.neeve.query.index.IdxFieldResolver<IStoreObject>

getField

<T> IStoreField<T> getField(Class<?> objectType,
                            String fieldPath)
Specified by:
getField in interface com.neeve.query.index.IdxFieldResolver<IStoreObject>

getField

<T> IStoreField<T> getField(Class<?> objectType,
                            String fieldPath,
                            Class<T> fieldType,
                            Class<?>... pathTypes)
Specified by:
getField in interface com.neeve.query.index.IdxFieldResolver<IStoreObject>


Copyright © 2015 Neeve Research, LLC. All Rights Reserved.