Class Metadata
GigaSpaces provides the ability to obtain and modify class metadata of objects stored in the Space
Where GigaSpaces data is stored. It is the logical cache that holds data objects in memory and might also hold them in layered in tiering. Data is hosted from multiple SoRs, consolidated as a unified data model. during runtime.
Name
| Syntax | name |
| Description | Contains the full qualified name of the specified class. Because this attribute is of the XML type ID, there can only be one class-descriptor per class. |
Example:
<gigaspaces-mapping>
<class name="model.Person">
</class>
</gigaspaces-mapping>
Persistence
| Syntax | persist |
| Argument | boolean |
| Default | false |
| Description | This field indicates the persistency mode of the object. When a space is defined as persistent, a true value for this attribute will persist objects of this type. |
Example:
<gigaspaces-mapping>
<class name="model.Person" persist="true">
</class>
</gigaspaces-mapping>
Replication
| Syntax | replicate |
| Argument | boolean |
| Default | false |
| Description | This field indicates the replication mode of the object. When a space is defined as replicated, a true value for this attribute will replicate objects of this type. |
Example:
<gigaspaces-mapping>
<class name="model.Person" replicate="true">
</class>
</gigaspaces-mapping>
FIFO Support
| Syntax | fifo-support |
| Argument | FifoSupport |
| Default | not_set |
| Description | Enabling FIFO |
Example:
<gigaspaces-mapping>
<class name="model.Person" fifo-support="operation">
</class>
</gigaspaces-mapping>
Storage Type
| Syntax | storage-type |
| Argument | StorageType |
| Default | object |
| Description | To determine a default storage type for each non primitive property for which a (field level) storage type was not defined. |
Example:
<gigaspaces-mapping>
<class name="model.Person" storage-type="binary" />
</gigaspaces-mapping>
Include Properties
| Syntax | include-properties |
| Argument | IncludeProperties |
| Default | implicit |
| Description | implicit takes into account all POJOget method is not declared as a SpaceProperty, it is taken into account as a space field.explicit takes into account only the get methods which are declared in the mapping file. |
Example:
<gigaspaces-mapping>
<class name="model.Person" include-properties="explicit" />
</gigaspaces-mapping>
Inherit Index
| Syntax | inherit-indexes |
| Argument | boolean |
| Default | true |
| Description | Whether to use the class indexes list only, or to also include the superclass' indexes. If the class does not define indexes, superclass indexes are used. Options: - false – class indexes only.- true – class indexes and superclass indexes. |
Example:
<gigaspaces-mapping>
<class name="model.Person" inherit-indexes="false" />
</gigaspaces-mapping>
Compound Index
| Syntax | compound-index paths |
| Argument(s) | string |
| Values | attribute name(s) |
| Description | Indexes can be defined for multiple attributes of a class |
Example:
<gigaspaces-mapping>
<class name="Data" >
<compound-index paths="data1, data2"/>
...
</class>
</gigaspaces-mapping>
Blobstore
| Syntax | blobstoreEnabled |
| Argument | boolean |
| Default | true |
| Description | By default any Space Data Type is blobStore enabled. When decorating the space class with its meta data you may turn off the blobStore behavior using the @SpaceClass blobStore annotation or gs.xml blobStore tag. |
Example:
<gigaspaces-mapping>
<class name="com.test.Person" "blobstoreEnabled"="false" >
.....
</class>
</gigaspaces-mapping>
MemoryXtend
In-Memory Data Grid - achieve unparalleled speed, persistence, and accuracy.