BeDeviceParameter.fromXML constructor

BeDeviceParameter.fromXML(
  1. String xmlSTR
)

Implementation

factory BeDeviceParameter.fromXML(String xmlSTR) {
  final document = XmlDocument.parse(xmlSTR);

  XmlElement? vendorModelInfoElement =
      document.firstChild!.getElement("vendorModelInfo");
  XmlElement? ipAndPortElement = document.firstChild!.getElement("ipAndPort");
  XmlElement? statusElement = document.firstChild!.getElement("beStatus");

  VendorModelInfo vendorModelInfo =
      VendorModelInfo.fromXML(vendorModelInfoElement!.toXmlString());
  IpAndPort ipAndPort = IpAndPort.fromXML(ipAndPortElement!.toXmlString());
  BeStatus status = BeStatus.fromXML(statusElement!.toXmlString());

  String duration = document.firstChild!.attributes
      .firstWhere((element) => element.name.toString() == "duration")
      .value;
  String volume = document.firstChild!.attributes
      .firstWhere((element) => element.name.toString() == "volume")
      .value;
  String pitch = document.firstChild!.attributes
      .firstWhere((element) => element.name.toString() == "pitch")
      .value;
  return BeDeviceParameter(
      vendorModelInfo: vendorModelInfo,
      ipAndPort: ipAndPort,
      status: status,
      duration: duration,
      pitch: pitch,
      volume: volume);
}