PortInstance.fromJson constructor

PortInstance.fromJson(
  1. Map<String, dynamic> json,
  2. Map<String, PortPrototype> portPrototypes
)

Implementation

factory PortInstance.fromJson(
  Map<String, dynamic> json,
  Map<String, PortPrototype> portPrototypes,
) {
  if (!portPrototypes.containsKey(json['idName'].toString())) {
    throw Exception('Port prototype not found');
  }

  final prototype = portPrototypes[json['idName'].toString()]!;

  final instance = PortInstance(
    prototype: prototype,
    state: PortState.fromJson(json['state'] ?? {}),
  );

  List<dynamic> v = [];
  if (json['links'] is List<dynamic>) {
    v = json['links'];
  }
  instance.links = (v).map((linkJson) => Link.fromJson(linkJson)).toSet();

  return instance;
}