insertObserver method
Adds the given observer
to the special group observer
.
If PolicySubject._id
is already a member of the group, the old value
gets overwritten. If there is no observer
group present, this method
will create one.
Implementation
void insertObserver(PolicySubject observer) {
if (!_groups.containsKey(observerGroupKey)) {
final Map<String, PolicyResource> resource = <String, PolicyResource>{
'thing:/': PolicyResource('thing:/',
grants: <PermissionType>{PermissionType.read})
};
insertGroup(PolicyGroup(observerGroupKey,
policySubjects: <String, PolicySubject>{observer.id: observer},
policyResources: resource));
} else {
_groups[observerGroupKey]!.subjects[observer.id] = observer;
}
}