java.lang.Object
com.s8.api.flow.repository.objects.RepoS8Object
S8Shell
represents an enclosure of a graph of S8Object. This
shell has multiple role:
- #1 LOGICAL UNIT: It defines a logical unit from the application logic point of view
- #2 SYNCHRONIZATION: It is the primary scope of lock enabling async processes
- #3 STORAGE UNIT: It acts a persistency bucket (and therefore must be considered the main element to understand the latency of the application implementation.)
- #4 VERSION UNIT: It is the key building block for substitution pattern, that acts as a repository state.
- #5 ENCAPSULATION: It is the primary encapsulation control unit. Note that we cannot access (from a logical point of view the inner nodes of the graph encapsulated by the shell, unless they are specifically designated as logical ports of the shell.
Note that S8object
objects used as logical ports SHOULD refer
the shell (typically as a field).
Unpinned object applications:
- transient: object created on the fly that don't need any S8Shell handling and management
- private: none of
S8Struct
object method are exposed for direct request - managed: acess control is non-existent (for access control, upgrade to
S8Object
- leaves: typical used as leaves of a tree which nodes are
S8Object
- Author:
- Pierre Convert Copyright (C) 2025, Pierre Convert. All rights reserved.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
-
Field Details
-
REF
public static final long REF(System)- See Also:
-
S8_id
DO NOT USE THIS FIELD: S8 SYSTEM ONLY. This index acts as an internal identifier and is automatically assigned at commit time. -
S8_spin
public boolean S8_spinDO NOT USE THIS FIELD: S8 SYSTEM ONLY. spin for fast graph exploration. -
S8_vertex
Object listeners
-
-
Constructor Details
-
RepoS8Object
public RepoS8Object()Main constructor. Perform initial binding of object with vertex, vertex itself being bound to its shell
-