Adding the ability to interface with an AccessControlledValue as an IReadOnlyAccessControlledValue.
Also allowing TaskDrivers to use the interfaces for requiring generic data.
What is the current behaviour?
You'd have to manually restrict access to an AccessControlledValue.
TaskDrivers would require the concrete type to be added as generic data.
What is the new behaviour?
You can now just return the interface to restrict the type.
IAccessControlledValue allows for you to specify the AccessType and works the same as the concrete type.
IReadOnlyAccessControlledValue gives only read only access.
TaskDrivers will accept either interfaces, or the concrete type when RequireGenericDataForRead but will only accept IAccessControlledValue when RequireGenericDataForWrite or RequireGenericDataForExclusiveWrite. You cannot pass an IReadOnlyAccessControlledValue in.
What issues does this resolve?
173
What PRs does this depend on?
194
Does this introduce a breaking change?
[x] Yes - Not really a breaking change but code might have to change to call the read only functions instead.
Adding the ability to interface with an
AccessControlledValue
as anIReadOnlyAccessControlledValue
. Also allowing TaskDrivers to use the interfaces for requiring generic data.What is the current behaviour?
You'd have to manually restrict access to an
AccessControlledValue
. TaskDrivers would require the concrete type to be added as generic data.What is the new behaviour?
You can now just return the interface to restrict the type.
IAccessControlledValue
allows for you to specify theAccessType
and works the same as the concrete type.IReadOnlyAccessControlledValue
gives only read only access.TaskDrivers will accept either interfaces, or the concrete type when
RequireGenericDataForRead
but will only acceptIAccessControlledValue
whenRequireGenericDataForWrite
orRequireGenericDataForExclusiveWrite
. You cannot pass anIReadOnlyAccessControlledValue
in.What issues does this resolve?
173
What PRs does this depend on?
194
Does this introduce a breaking change?