ConnectToken.fromReader constructor
ConnectToken.fromReader(
- TeleportObjectReader reader
Implementation
factory ConnectToken.fromReader(TeleportObjectReader reader) {
final instance = ConnectToken();
TeleportField? field;
while ((field = reader.next()) != null) {
if (field!.isNull) continue;
switch (field.fieldId) {
case fieldIdServerSessionId: {
instance.serverSessionId = field.asString();
break;
}
case fieldIdContextType: {
instance.contextType = ContextType.fromValue(field.asInt32());
break;
}
case fieldIdUserType: {
instance.userType = UserType.fromValue(field.asInt32());
break;
}
case fieldIdPayloadType: {
instance.payloadType = PayloadType.fromValue(field.asInt32());
break;
}
case fieldIdIsInternal: {
instance.isInternal = field.asBool();
break;
}
case fieldIdIsSnapshot: {
instance.isSnapshot = field.asBool();
break;
}
case fieldIdDescription: {
instance.description = field.asString();
break;
}
case fieldIdUserId: {
instance.userId = field.asString();
break;
}
case fieldIdDeviceId: {
instance.deviceId = field.asString();
break;
}
case fieldIdProductId: {
instance.productId = field.asString();
break;
}
case fieldIdVersionId: {
instance.versionId = field.asString();
break;
}
case fieldIdInstallId: {
instance.installId = field.asString();
break;
}
case fieldIdLocale: {
instance.locale = field.asString();
break;
}
case fieldIdOpcodeGroupsFromServer: {
instance.opcodeGroupsFromServer = Opcode.fromValue(field.asInt32());
break;
}
case fieldIdOpcodeGroupsToServer: {
instance.opcodeGroupsToServer = Opcode.fromValue(field.asInt32());
break;
}
case fieldIdProtocolVersion: {
instance.protocolVersion = field.asInt32();
break;
}
case fieldIdHasInput: {
instance.hasInput = field.asBool();
break;
}
case fieldIdChannelLocale: {
instance.channelLocale = field.asString();
break;
}
case fieldIdEmbeddedSpaceId: {
instance.embeddedSpaceId = field.asString();
break;
}
case fieldIdAuthSessionId: {
instance.authSessionId = field.asString();
break;
}
case fieldIdReceiveAllMessages: {
instance.receiveAllMessages = field.asBool();
break;
}
case fieldIdUserAgent: {
instance.userAgent = field.asString();
break;
}
case fieldIdClientType: {
instance.clientType = ClientType.fromValue(field.asInt32());
break;
}
case fieldIdParameters: {
final dr = field.asDictionary();
final map = <String, String>{};
TeleportDictEntry? en;
while ((en = dr.next()) != null) {
final entry = en!;
map[entry.keyAsString()] = entry.valueAsField().asString();
}
instance.parameters = map;
break;
}
case fieldIdSdkType: {
instance.sdkType = SdkType.fromValue(field.asInt32());
break;
}
case fieldIdSdkCapability: {
instance.sdkCapability = field.asInt32();
break;
}
case fieldIdViewportWidth: {
instance.viewportWidth = field.asInt32();
break;
}
case fieldIdViewportHeight: {
instance.viewportHeight = field.asInt32();
break;
}
case fieldIdTheme: {
instance.theme = field.asString();
break;
}
case fieldIdTimezone: {
instance.timezone = field.asString();
break;
}
case fieldIdIsTouchDevice: {
instance.isTouchDevice = field.asBool();
break;
}
case fieldIdInitialPath: {
instance.initialPath = field.asString();
break;
}
case fieldIdStyleFormat: {
instance.styleFormat = StyleFormat.fromValue(field.asInt32());
break;
}
case fieldIdSupportsCompression: {
instance.supportsCompression = field.asBool();
break;
}
}
}
return instance;
}