Class Metadata
GigaSpaces provides the ability to obtain and modify class metadata of objects stored in the Space 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 operations. |
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 POJO fields – even if a get 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