public final class MongoDriver<R extends io.vena.bosk.Entity>
extends java.lang.Object
implements io.vena.bosk.BoskDriver<R>
| Constructor and Description |
|---|
MongoDriver(io.vena.bosk.Bosk<R> bosk,
com.mongodb.MongoClientSettings clientSettings,
MongoDriverSettings driverSettings,
BsonPlugin bsonPlugin,
io.vena.bosk.BoskDriver<R> downstream) |
| Modifier and Type | Method and Description |
|---|---|
void |
close() |
static <RR extends io.vena.bosk.Entity> |
factory(com.mongodb.MongoClientSettings clientSettings,
MongoDriverSettings driverSettings,
BsonPlugin bsonPlugin) |
void |
flush() |
R |
initialRoot(java.lang.reflect.Type rootType) |
void |
refurbish()
Deserializes and re-serializes the entire bosk contents,
thus updating the database to match the current serialized format.
|
<T> void |
submitConditionalDeletion(io.vena.bosk.Reference<T> target,
io.vena.bosk.Reference<io.vena.bosk.Identifier> precondition,
io.vena.bosk.Identifier requiredValue) |
<T> void |
submitConditionalReplacement(io.vena.bosk.Reference<T> target,
T newValue,
io.vena.bosk.Reference<io.vena.bosk.Identifier> precondition,
io.vena.bosk.Identifier requiredValue) |
<T> void |
submitDeletion(io.vena.bosk.Reference<T> target) |
<T> void |
submitInitialization(io.vena.bosk.Reference<T> target,
T newValue) |
<T> void |
submitReplacement(io.vena.bosk.Reference<T> target,
T newValue) |
java.lang.String |
toString() |
public MongoDriver(io.vena.bosk.Bosk<R> bosk, com.mongodb.MongoClientSettings clientSettings, MongoDriverSettings driverSettings, BsonPlugin bsonPlugin, io.vena.bosk.BoskDriver<R> downstream)
public static <RR extends io.vena.bosk.Entity> io.vena.bosk.DriverFactory<RR> factory(com.mongodb.MongoClientSettings clientSettings,
MongoDriverSettings driverSettings,
BsonPlugin bsonPlugin)
public R initialRoot(java.lang.reflect.Type rootType) throws io.vena.bosk.exceptions.InvalidTypeException, java.io.IOException, java.lang.InterruptedException
initialRoot in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>io.vena.bosk.exceptions.InvalidTypeExceptionjava.io.IOExceptionjava.lang.InterruptedExceptionpublic <T> void submitReplacement(io.vena.bosk.Reference<T> target,
T newValue)
submitReplacement in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>public <T> void submitInitialization(io.vena.bosk.Reference<T> target,
T newValue)
submitInitialization in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>public <T> void submitDeletion(io.vena.bosk.Reference<T> target)
submitDeletion in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>public void flush()
throws java.io.IOException,
java.lang.InterruptedException
flush in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>java.io.IOExceptionjava.lang.InterruptedExceptionpublic <T> void submitConditionalReplacement(io.vena.bosk.Reference<T> target,
T newValue,
io.vena.bosk.Reference<io.vena.bosk.Identifier> precondition,
io.vena.bosk.Identifier requiredValue)
submitConditionalReplacement in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>public <T> void submitConditionalDeletion(io.vena.bosk.Reference<T> target,
io.vena.bosk.Reference<io.vena.bosk.Identifier> precondition,
io.vena.bosk.Identifier requiredValue)
submitConditionalDeletion in interface io.vena.bosk.BoskDriver<R extends io.vena.bosk.Entity>public void close()
public void refurbish()
Used to "upgrade" the database contents for schema evolution.
public java.lang.String toString()
toString in class java.lang.Object