SerializeModel

ceramic.Entity → tracker.SerializeModel (Class)
Implements: ceramic.Component

Utility to serialize a model object (and its children) continuously and efficiently

Static Members

loadFromData(model: Model, data: String, ?hotReload: Bool = false): Bool
Name Type Default
model Model
data String
hotReload Bool false
Returns
Bool

Instance Members

checkInterval: Float

compactInterval: Float

destroyModelOnUntrack: Bool

serializedMap: Map

model: Model

entity: Model

initializerName: String

compact(?done: Function): Void

Recompute the whole object tree instead of appending. This will untrack every object not on the model anymore and generate a new changeset with the whole serialized object tree.

Name Type Default
done Function (optional)

synchronize(): Void

Synchronize (expected to be called at regular intervals or when something important needs to be serialized)


new(): Void

Events

@event changeset(changeset: SerializeChangeset)

Triggered when serialized data is updated. If append is true, the given string should be appended to the existing one.

Name Type
changeset SerializeChangeset
onChangeset(owner, handler) onceChangeset(owner, handler) offChangeset(?handler) listensChangeset()

Private Members

trackedModels: Map

willCleanDestroyedTrackedModels: Bool

dirtyModels: Map

canCompact: Bool

dirty: Bool

emitChangeset(changeset: SerializeChangeset): Void

Triggered when serialized data is updated. If append is true, the given string should be appended to the existing one.

Name Type
changeset SerializeChangeset

bindAsComponent(): Void

track(model: Model): Void
Name Type
model Model

untrack(model: Model): Void
Name Type
model Model

trackedModelDestroyed(_: ceramic.Entity): Void
Name Type
_ ceramic.Entity

cleanTrackingFromPrevSerializedMap(prevSerializedMap: Map): Void
Name Type
prevSerializedMap Map

modelDirty(model: Model, fromSerializedField: Bool): Void
Name Type
model Model
fromSerializedField Bool

explicitModelDirty(model: Model): Void
Name Type
model Model

compactIfNeeded(): Void

serializeModel(model: Model, toAppend: Array<AnonStruct>): Void
Name Type
model Model
toAppend Array

setEntity(entity: ceramic.Entity): Void
Name Type
entity ceramic.Entity

getEntity(): ceramic.Entity
Returns
ceramic.Entity

Metadata

Name Parameters
:build ceramic.macros.ComponentMacro.build()
:autoBuild ceramic.macros.ComponentMacro.build()
:build ceramic.macros.EntityMacro.buildForCompletion()
:autoBuild ceramic.macros.EntityMacro.buildForCompletion()
:build tracker.macros.EventsMacro.build()
:autoBuild tracker.macros.EventsMacro.build()