getLockTrait static method

LockTrait getLockTrait(
  1. dynamic trait
)

Implementation

static LockTrait getLockTrait(trait) {
  try {
    final Set<Property> properties = {
      SupportsIsJammed(trait.properties.supportsIsJammed)
    };
    final Set<State> states = <State>{
      IsLocked(trait.state.isLocked.reported?.value),
      if (trait.properties.supportsIsJammed)
        IsJammed(trait.state.isJammed.reported?.value),
    };
    return LockTrait(states, properties);
  } on NoSuchMethodError {
    throw ArgumentError.value(trait, 'LockTrait', 'Invalid LockTrait');
  }
}