org.hypergraphdb
Interface HGSystemFlags


public interface HGSystemFlags

This interface defines a set of system-level atom flags that can be specified at atom addition time in order to control things like atom lifetime. The constants listed here are used as bit flags and can be combined in the usual way by performing a bitwise or operation on the constant values.


Field Summary
static byte DEFAULT
           Represents the default set of flags pertaining to the system-level handling of a HyperGraph atom.
static byte MANAGED
           Indicates that an atom is managed.
static byte MUTABLE
           Indicates that an atom's value may change during run-time operation.
 

Field Detail

DEFAULT

static final byte DEFAULT

Represents the default set of flags pertaining to the system-level handling of a HyperGraph atom.

See Also:
Constant Field Values

MUTABLE

static final byte MUTABLE

Indicates that an atom's value may change during run-time operation. When an atom is marked as mutable, it will be automatically saved to storage before it is removed from the HyperGraph cache.

The default value for this system attribute is false. That is, atom run-time instances are assumed immutable and applications need to explicitely invoke the HyperGraph.replace method if need be.

See Also:
Constant Field Values

MANAGED

static final byte MANAGED

Indicates that an atom is managed. Managed atom have their lifetime in HyperGraph be automatically controlled by the system. When an atom is managed, its usage is tracked by the system and the atom is removed if it is deemed unused. For the exact set of conditions that determine when an atom is unused, please consult the reference guide. Managed atoms are designed to support long term persistence of temporary data, such as intermediary query results automatically created by the system and certain application specific atoms.

The default value for this system attribute is false. That is, an atom will by default persist in the database until explicitely removed with the HyperGraph.remove method.

See Also:
Constant Field Values