Interface IQueryGroup
-
- All Known Implementing Classes:
BaseGeneratedPatternGroup
,BaseQueryGroup
,GenericQueryGroup
,LazyLoadingQueryGroup
,PackageBasedQueryGroup
public interface IQueryGroup
Generic interface for group of query specifications.It handles more than one patterns as a group, and provides functionality to initialize the matchers together (which has performance benefits).
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.Set<IQuerySpecification<?>>
getSpecifications()
Returns the currently assignedIQuerySpecification
s.void
prepare(ViatraQueryEngine engine)
Initializes matchers for the group of patterns within anViatraQueryEngine
.
-
-
-
Method Detail
-
prepare
void prepare(ViatraQueryEngine engine)
Initializes matchers for the group of patterns within anViatraQueryEngine
. If some of the pattern matchers are already constructed in the engine, no task is performed for them.This preparation step has the advantage that it prepares pattern matchers for an arbitrary number of patterns in a single-pass traversal of the model. This is typically more efficient than traversing the model each time an individual pattern matcher is initialized on demand. The performance benefit only manifests itself if the engine is not in wildcard mode.
- Parameters:
engine
- the existing VIATRA Query engine in which the matchers will be created.- Throws:
ViatraQueryRuntimeException
- if there was an error in preparing the engine
-
getSpecifications
java.util.Set<IQuerySpecification<?>> getSpecifications()
Returns the currently assignedIQuerySpecification
s.
-
-