Package io.vena.bosk.drivers.mongo
Record Class PandoFormat
java.lang.Object
java.lang.Record
io.vena.bosk.drivers.mongo.PandoFormat
- Record Components:
graftPoints- A list of path strings pointing toCatalogorSideTabletree nodes whose entries (children) are to be stored in their own documents.
- All Implemented Interfaces:
MongoDriverSettings.DatabaseFormat,io.vena.bosk.StateTreeNode
public record PandoFormat(io.vena.bosk.ListValue<String> graftPoints)
extends Record
implements io.vena.bosk.StateTreeNode, MongoDriverSettings.DatabaseFormat
A scalable format that stores the bosk state in multiple documents,
thereby overcoming MongoDB's 16MB document size limit.
Named after Pando: looks like a forest, but it's actually one tree with one root system.
-
Field Summary
Fields inherited from interface io.vena.bosk.drivers.mongo.MongoDriverSettings.DatabaseFormat
SEQUOIA -
Constructor Summary
ConstructorsConstructorDescriptionPandoFormat(io.vena.bosk.ListValue<String> graftPoints) Creates an instance of aPandoFormatrecord class. -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanIndicates whether some other object is "equal to" this one.io.vena.bosk.ListValue<String>Returns the value of thegraftPointsrecord component.final inthashCode()Returns a hash code value for this object.static PandoFormatDiffers from Sequoia in that (1) the root document has a different ID, rendering the formats incompatible; and (2) Sequoia is designed not to need multi-document transactions.final StringtoString()Returns a string representation of this record class.static PandoFormatwithGraftPoints(String... pathStrings) static PandoFormatwithGraftPoints(Collection<String> pathStrings)
-
Constructor Details
-
PandoFormat
Creates an instance of aPandoFormatrecord class.- Parameters:
graftPoints- the value for thegraftPointsrecord component
-
-
Method Details
-
oneBigDocument
Differs from Sequoia in that (1) the root document has a different ID, rendering the formats incompatible; and (2) Sequoia is designed not to need multi-document transactions. -
withGraftPoints
-
withGraftPoints
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
graftPoints
Returns the value of thegraftPointsrecord component.- Returns:
- the value of the
graftPointsrecord component
-