Ce contenu n'est pas disponible dans la langue sélectionnée.
13.22. Object Translator
13.22.1. Object Translator Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
The Object translator is a bridge for reading Java objects from external sources, such as JBoss Data Grid (
infinispan-cache) or Map Cache, and delivering them to the engine for processing. To assist in providing that bridge, the OBJECTTABLE function ( Section 3.6.10, “Nested Tables: OBJECTTABLE”) must be used to transform the Java object into rows and columns.
The following are Object translator types:
map-cache- supports a local cache that is of type Map and using Key searching. This translator is implemented by theorg.teiid.translator.object.ObjectExecutionFactoryclass.infinispan-cache- supports JBoss Data Grid using either Key searching (for objects that are not annotated) or Hibernate/Lucene searching. This translator is implemented by theorg.teiid.translator.object.infinispan.InfinispanExecutionFactoryclass which extends theorg.teiid.translator.object.ObjectExecutionFactoryclass.
Note
See the JBoss Data Grid resource adapter for this translator. It can be configured to lookup the cache container via JNDI or created (i.e., ConfigurationFileName or RemoteServerList). Also see the Red Hat JBoss Data Virtualization Administration and Configuration Guide for more configuration information.
13.22.2. Object Translator: Execution Properties Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
The following execution properties are relevant to translating from JBoss Data Grid.
|
Name
|
Description
|
Required
|
Default
|
|---|---|---|---|
|
SupportsLuceneSearching
|
Setting to true assumes your objects are annotated and Hibernate/Lucene will be used to search the cache
|
N
|
false
|
13.22.3. Object Translator: Supported Capabilities Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
The following are the connector capabilities when Key Searching is used:
- SELECT command
- CompareCriteria - only EQ
- InCriteria
The following are the connector capabilities when Hibernate/Lucene Searching is enabled:
- SELECT command
- CompareCriteria - EQ, NE, LT, GT, etc.
- InCriteria
- OrCriteria
- And/Or Criteria
- Like Criteria
- INSERT, UPDATE, DELETE
13.22.4. Object Translator: Usage Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
Retrieve objects from a cache and transform into rows and columns.
- The primary object returned by the cache should have a name in source of 'this'. All other columns will have their name in source (which defaults to the column name) interpreted as the path to the column value from the primary object.
- All columns that are not the primary key nor covered by a lucene index should be marked as SEARCHABLE 'Unsearchable'.
13.22.5. Object Translator Example Copier lienLien copié sur presse-papiers!
Copier lienLien copié sur presse-papiers!
The following is an example of a key search. It uses a dynamic vdb to define the physical source and views using DDL. It uses a TeamObject class, shown below, with a teamName field that is used as its cache key and a String list of players.
Notice the use of the [OBJECTABLE|TEIID:OBJECTABLE] function to parse the object from Team and transform into rows and column. This metadata could also be defined by using Teiid Designer.