import 'dart:typed_data'; import 'package:vid/us/vid_us_data_reader.dart'; import 'package:vid/us/vid_us_data_writer.dart'; class VidUsApplication { late String _applicationId; late String _applicationOriginalId; late String _applicationName; late String _applicationCategoryName; late bool _isUserDefined; /// Gets the application's ID String get applicationId => _applicationId; /// Gets the OriginalId of the applciation. String get applicationOriginalId => _applicationOriginalId; /// Gets the application's name. String get applicationName => _applicationName; /// Gets the applciation's category name. String get applicationCategoryName => _applicationCategoryName; /// Gets if is user defined. bool get isUserDefined => _isUserDefined; VidUsApplication( String applicationId, String applicationOriginalId, String applicationName, String applicationCategoryName, bool isUserDefined) { _applicationId = applicationId; _applicationOriginalId = applicationOriginalId; _applicationName = applicationName; _applicationCategoryName = applicationCategoryName; _isUserDefined = isUserDefined; } ///Convert VidUsApplication to binary data. Uint8List toBytes() { var writer = VidUsDataWriter(); writer.writeString(_applicationId); writer.writeString(_applicationOriginalId); writer.writeString(_applicationName); writer.writeString(_applicationCategoryName); writer.writeBool(_isUserDefined); return writer.data; } ///Convert binary data to VidUsApplication. static VidUsApplication fromBytes(Uint8List bytes) { var reader = VidUsDataReader(bytes); var applicationId = reader.readString(); var applicationOriginalId = reader.readString(); var applicationName = reader.readString(); var applicationCategoryName = reader.readString(); var isUserDefined = reader.readBool(); return VidUsApplication(applicationId, applicationOriginalId, applicationName, applicationCategoryName, isUserDefined); } }