getObjectBoxModel function
ModelDefinition
getObjectBoxModel()
Returns the ObjectBox model definition for this project for use with obx.Store.new.
Implementation
obx_int.ModelDefinition getObjectBoxModel() {
final model = obx_int.ModelInfo(
entities: _entities,
lastEntityId: const obx_int.IdUid(8, 2356961977798202534),
lastIndexId: const obx_int.IdUid(3, 735436971837042211),
lastRelationId: const obx_int.IdUid(0, 0),
lastSequenceId: const obx_int.IdUid(0, 0),
retiredEntityUids: const [],
retiredIndexUids: const [],
retiredPropertyUids: const [4248118904091022656],
retiredRelationUids: const [],
modelVersion: 5,
modelVersionParserMinimum: 5,
version: 1,
);
final bindings = <Type, obx_int.EntityDefinition>{
DbContactList: obx_int.EntityDefinition<DbContactList>(
model: _entities[0],
toOneRelations: (DbContactList object) => [],
toManyRelations: (DbContactList object) => {},
getId: (DbContactList object) => object.dbId,
setId: (DbContactList object, int id) {
object.dbId = id;
},
objectToFB: (DbContactList object, fb.Builder fbb) {
final pubKeyOffset = fbb.writeString(object.pubKey);
final contactsOffset = fbb.writeList(
object.contacts.map(fbb.writeString).toList(growable: false),
);
final contactRelaysOffset = fbb.writeList(
object.contactRelays.map(fbb.writeString).toList(growable: false),
);
final petnamesOffset = fbb.writeList(
object.petnames.map(fbb.writeString).toList(growable: false),
);
final followedTagsOffset = fbb.writeList(
object.followedTags.map(fbb.writeString).toList(growable: false),
);
final followedCommunitiesOffset = fbb.writeList(
object.followedCommunities
.map(fbb.writeString)
.toList(growable: false),
);
final followedEventsOffset = fbb.writeList(
object.followedEvents.map(fbb.writeString).toList(growable: false),
);
final sourcesOffset = fbb.writeList(
object.sources.map(fbb.writeString).toList(growable: false),
);
fbb.startTable(12);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, pubKeyOffset);
fbb.addOffset(2, contactsOffset);
fbb.addOffset(3, contactRelaysOffset);
fbb.addOffset(4, petnamesOffset);
fbb.addOffset(5, followedTagsOffset);
fbb.addOffset(6, followedCommunitiesOffset);
fbb.addOffset(7, followedEventsOffset);
fbb.addInt64(8, object.createdAt);
fbb.addInt64(9, object.loadedTimestamp);
fbb.addOffset(10, sourcesOffset);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final pubKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final contactsParam = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 8, []);
final object =
DbContactList(pubKey: pubKeyParam, contacts: contactsParam)
..dbId = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
4,
0,
)
..contactRelays = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 10, [])
..petnames = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 12, [])
..followedTags = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 14, [])
..followedCommunities = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 16, [])
..followedEvents = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 18, [])
..createdAt = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
20,
0,
)
..loadedTimestamp = const fb.Int64Reader().vTableGetNullable(
buffer,
rootOffset,
22,
)
..sources = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 24, []);
return object;
},
),
DbMetadata: obx_int.EntityDefinition<DbMetadata>(
model: _entities[1],
toOneRelations: (DbMetadata object) => [],
toManyRelations: (DbMetadata object) => {},
getId: (DbMetadata object) => object.dbId,
setId: (DbMetadata object, int id) {
object.dbId = id;
},
objectToFB: (DbMetadata object, fb.Builder fbb) {
final pubKeyOffset = fbb.writeString(object.pubKey);
final nameOffset = object.name == null
? null
: fbb.writeString(object.name!);
final displayNameOffset = object.displayName == null
? null
: fbb.writeString(object.displayName!);
final pictureOffset = object.picture == null
? null
: fbb.writeString(object.picture!);
final bannerOffset = object.banner == null
? null
: fbb.writeString(object.banner!);
final websiteOffset = object.website == null
? null
: fbb.writeString(object.website!);
final aboutOffset = object.about == null
? null
: fbb.writeString(object.about!);
final nip05Offset = object.nip05 == null
? null
: fbb.writeString(object.nip05!);
final lud16Offset = object.lud16 == null
? null
: fbb.writeString(object.lud16!);
final lud06Offset = object.lud06 == null
? null
: fbb.writeString(object.lud06!);
final splitDisplayNameWordsOffset = object.splitDisplayNameWords == null
? null
: fbb.writeList(
object.splitDisplayNameWords!
.map(fbb.writeString)
.toList(growable: false),
);
final splitNameWordsOffset = object.splitNameWords == null
? null
: fbb.writeList(
object.splitNameWords!
.map(fbb.writeString)
.toList(growable: false),
);
fbb.startTable(16);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, pubKeyOffset);
fbb.addOffset(2, nameOffset);
fbb.addOffset(3, displayNameOffset);
fbb.addOffset(4, pictureOffset);
fbb.addOffset(5, bannerOffset);
fbb.addOffset(6, websiteOffset);
fbb.addOffset(7, aboutOffset);
fbb.addOffset(8, nip05Offset);
fbb.addOffset(9, lud16Offset);
fbb.addOffset(10, lud06Offset);
fbb.addInt64(11, object.updatedAt);
fbb.addInt64(12, object.refreshedTimestamp);
fbb.addOffset(13, splitDisplayNameWordsOffset);
fbb.addOffset(14, splitNameWordsOffset);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final pubKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final nameParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 8);
final displayNameParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 10);
final splitNameWordsParam = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGetNullable(buffer, rootOffset, 32);
final splitDisplayNameWordsParam = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGetNullable(buffer, rootOffset, 30);
final pictureParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 12);
final bannerParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 14);
final websiteParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 16);
final aboutParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 18);
final nip05Param = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 20);
final lud16Param = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 22);
final lud06Param = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 24);
final updatedAtParam = const fb.Int64Reader().vTableGetNullable(
buffer,
rootOffset,
26,
);
final refreshedTimestampParam = const fb.Int64Reader()
.vTableGetNullable(buffer, rootOffset, 28);
final object = DbMetadata(
pubKey: pubKeyParam,
name: nameParam,
displayName: displayNameParam,
splitNameWords: splitNameWordsParam,
splitDisplayNameWords: splitDisplayNameWordsParam,
picture: pictureParam,
banner: bannerParam,
website: websiteParam,
about: aboutParam,
nip05: nip05Param,
lud16: lud16Param,
lud06: lud06Param,
updatedAt: updatedAtParam,
refreshedTimestamp: refreshedTimestampParam,
)..dbId = const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
return object;
},
),
DbNip01Event: obx_int.EntityDefinition<DbNip01Event>(
model: _entities[2],
toOneRelations: (DbNip01Event object) => [],
toManyRelations: (DbNip01Event object) => {},
getId: (DbNip01Event object) => object.dbId,
setId: (DbNip01Event object, int id) {
object.dbId = id;
},
objectToFB: (DbNip01Event object, fb.Builder fbb) {
final nostrIdOffset = fbb.writeString(object.nostrId);
final pubKeyOffset = fbb.writeString(object.pubKey);
final contentOffset = fbb.writeString(object.content);
final sigOffset = fbb.writeString(object.sig);
final sourcesOffset = fbb.writeList(
object.sources.map(fbb.writeString).toList(growable: false),
);
final dbTagsOffset = fbb.writeList(
object.dbTags.map(fbb.writeString).toList(growable: false),
);
fbb.startTable(11);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, nostrIdOffset);
fbb.addOffset(2, pubKeyOffset);
fbb.addInt64(3, object.createdAt);
fbb.addInt64(4, object.kind);
fbb.addOffset(5, contentOffset);
fbb.addOffset(6, sigOffset);
fbb.addBool(7, object.validSig);
fbb.addOffset(8, sourcesOffset);
fbb.addOffset(9, dbTagsOffset);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final pubKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 8, '');
final kindParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
12,
0,
);
final dbTagsParam = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 22, []);
final contentParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 14, '');
final createdAtParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
10,
0,
);
final object =
DbNip01Event(
pubKey: pubKeyParam,
kind: kindParam,
dbTags: dbTagsParam,
content: contentParam,
createdAt: createdAtParam,
)
..dbId = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
4,
0,
)
..nostrId = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '')
..sig = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 16, '')
..validSig = const fb.BoolReader().vTableGetNullable(
buffer,
rootOffset,
18,
)
..sources = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 20, []);
return object;
},
),
DbTag: obx_int.EntityDefinition<DbTag>(
model: _entities[3],
toOneRelations: (DbTag object) => [],
toManyRelations: (DbTag object) => {},
getId: (DbTag object) => object.id,
setId: (DbTag object, int id) {
object.id = id;
},
objectToFB: (DbTag object, fb.Builder fbb) {
final keyOffset = fbb.writeString(object.key);
final valueOffset = fbb.writeString(object.value);
final markerOffset = object.marker == null
? null
: fbb.writeString(object.marker!);
final elementsOffset = fbb.writeList(
object.elements.map(fbb.writeString).toList(growable: false),
);
fbb.startTable(6);
fbb.addInt64(0, object.id);
fbb.addOffset(1, keyOffset);
fbb.addOffset(2, valueOffset);
fbb.addOffset(3, markerOffset);
fbb.addOffset(4, elementsOffset);
fbb.finish(fbb.endTable());
return object.id;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final keyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final valueParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 8, '');
final markerParam = const fb.StringReader(
asciiOptimization: true,
).vTableGetNullable(buffer, rootOffset, 10);
final elementsParam = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 12, []);
final object = DbTag(
key: keyParam,
value: valueParam,
marker: markerParam,
elements: elementsParam,
)..id = const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
return object;
},
),
DbNip05: obx_int.EntityDefinition<DbNip05>(
model: _entities[4],
toOneRelations: (DbNip05 object) => [],
toManyRelations: (DbNip05 object) => {},
getId: (DbNip05 object) => object.dbId,
setId: (DbNip05 object, int id) {
object.dbId = id;
},
objectToFB: (DbNip05 object, fb.Builder fbb) {
final pubKeyOffset = fbb.writeString(object.pubKey);
final nip05Offset = fbb.writeString(object.nip05);
final relaysOffset = fbb.writeList(
object.relays.map(fbb.writeString).toList(growable: false),
);
fbb.startTable(8);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, pubKeyOffset);
fbb.addOffset(2, nip05Offset);
fbb.addBool(3, object.valid);
fbb.addInt64(5, object.networkFetchTime);
fbb.addOffset(6, relaysOffset);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final pubKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final nip05Param = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 8, '');
final validParam = const fb.BoolReader().vTableGet(
buffer,
rootOffset,
10,
false,
);
final networkFetchTimeParam = const fb.Int64Reader().vTableGetNullable(
buffer,
rootOffset,
14,
);
final relaysParam = const fb.ListReader<String>(
fb.StringReader(asciiOptimization: true),
lazy: false,
).vTableGet(buffer, rootOffset, 16, []);
final object = DbNip05(
pubKey: pubKeyParam,
nip05: nip05Param,
valid: validParam,
networkFetchTime: networkFetchTimeParam,
relays: relaysParam,
)..dbId = const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
return object;
},
),
DbUserRelayList: obx_int.EntityDefinition<DbUserRelayList>(
model: _entities[5],
toOneRelations: (DbUserRelayList object) => [],
toManyRelations: (DbUserRelayList object) => {},
getId: (DbUserRelayList object) => object.dbId,
setId: (DbUserRelayList object, int id) {
object.dbId = id;
},
objectToFB: (DbUserRelayList object, fb.Builder fbb) {
final pubKeyOffset = fbb.writeString(object.pubKey);
final relaysJsonOffset = fbb.writeString(object.relaysJson);
fbb.startTable(6);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, pubKeyOffset);
fbb.addInt64(2, object.createdAt);
fbb.addInt64(3, object.refreshedTimestamp);
fbb.addOffset(4, relaysJsonOffset);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final pubKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final relaysJsonParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 12, '');
final createdAtParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
8,
0,
);
final refreshedTimestampParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
10,
0,
);
final object = DbUserRelayList(
pubKey: pubKeyParam,
relaysJson: relaysJsonParam,
createdAt: createdAtParam,
refreshedTimestamp: refreshedTimestampParam,
)..dbId = const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
return object;
},
),
DbRelaySet: obx_int.EntityDefinition<DbRelaySet>(
model: _entities[6],
toOneRelations: (DbRelaySet object) => [],
toManyRelations: (DbRelaySet object) => {},
getId: (DbRelaySet object) => object.dbId,
setId: (DbRelaySet object, int id) {
object.dbId = id;
},
objectToFB: (DbRelaySet object, fb.Builder fbb) {
final idOffset = fbb.writeString(object.id);
final nameOffset = fbb.writeString(object.name);
final pubKeyOffset = fbb.writeString(object.pubKey);
final directionOffset = fbb.writeString(object.direction);
final relaysMapJsonOffset = fbb.writeString(object.relaysMapJson);
fbb.startTable(9);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, idOffset);
fbb.addOffset(2, nameOffset);
fbb.addOffset(3, pubKeyOffset);
fbb.addInt64(4, object.relayMinCountPerPubkey);
fbb.addOffset(5, directionOffset);
fbb.addOffset(6, relaysMapJsonOffset);
fbb.addBool(7, object.fallbackToBootstrapRelays);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final idParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final nameParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 8, '');
final pubKeyParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 10, '');
final relayMinCountPerPubkeyParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
12,
0,
);
final directionParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 14, '');
final relaysMapJsonParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 16, '');
final fallbackToBootstrapRelaysParam = const fb.BoolReader().vTableGet(
buffer,
rootOffset,
18,
false,
);
final object = DbRelaySet(
id: idParam,
name: nameParam,
pubKey: pubKeyParam,
relayMinCountPerPubkey: relayMinCountPerPubkeyParam,
direction: directionParam,
relaysMapJson: relaysMapJsonParam,
fallbackToBootstrapRelays: fallbackToBootstrapRelaysParam,
)..dbId = const fb.Int64Reader().vTableGet(buffer, rootOffset, 4, 0);
return object;
},
),
DbFilterFetchedRangeRecord:
obx_int.EntityDefinition<DbFilterFetchedRangeRecord>(
model: _entities[7],
toOneRelations: (DbFilterFetchedRangeRecord object) => [],
toManyRelations: (DbFilterFetchedRangeRecord object) => {},
getId: (DbFilterFetchedRangeRecord object) => object.dbId,
setId: (DbFilterFetchedRangeRecord object, int id) {
object.dbId = id;
},
objectToFB: (DbFilterFetchedRangeRecord object, fb.Builder fbb) {
final filterHashOffset = fbb.writeString(object.filterHash);
final relayUrlOffset = fbb.writeString(object.relayUrl);
fbb.startTable(6);
fbb.addInt64(0, object.dbId);
fbb.addOffset(1, filterHashOffset);
fbb.addOffset(2, relayUrlOffset);
fbb.addInt64(3, object.rangeStart);
fbb.addInt64(4, object.rangeEnd);
fbb.finish(fbb.endTable());
return object.dbId;
},
objectFromFB: (obx.Store store, ByteData fbData) {
final buffer = fb.BufferContext(fbData);
final rootOffset = buffer.derefObject(0);
final filterHashParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 6, '');
final relayUrlParam = const fb.StringReader(
asciiOptimization: true,
).vTableGet(buffer, rootOffset, 8, '');
final rangeStartParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
10,
0,
);
final rangeEndParam = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
12,
0,
);
final object =
DbFilterFetchedRangeRecord(
filterHash: filterHashParam,
relayUrl: relayUrlParam,
rangeStart: rangeStartParam,
rangeEnd: rangeEndParam,
)
..dbId = const fb.Int64Reader().vTableGet(
buffer,
rootOffset,
4,
0,
);
return object;
},
),
};
return obx_int.ModelDefinition(model, bindings);
}