DurationTriggerProperty.fromCrawledProperty constructor

DurationTriggerProperty.fromCrawledProperty(
  1. CrawledProperty property
)

Implementation

factory DurationTriggerProperty.fromCrawledProperty(
    CrawledProperty property) {
  assert(
    property.name.toUpperCase() == "TRIGGER",
    "Received invalid property: ${property.name}",
  );

  return DurationTriggerProperty(
    DurationValue.fromCrawledStringValue(property.value).value,
    relationshipType: property.parameters
            .where(AlarmTriggerRelationshipParameter.testCrawledParameter)
            .isEmpty
        ? null
        : property.parameters
            .where(AlarmTriggerRelationshipParameter.testCrawledParameter)
            .map((e) =>
                AlarmTriggerRelationshipParameter.fromCrawledParameter(e))
            .first
            .type,
  );
}