addListener method
- required DataSourceListener listener,
- required DataType dataType,
- ParameterList? parameters,
Register a DataSourceListener to receive updates for a specific data type.
The listener's callbacks will be invoked with event-specific arguments. See DataSourceListener for the available callback signatures.
Parameters
listener: The DataSourceListener to register.dataType: The DataType to listen for.parameters: Optional ParameterList with subscription preferences.
Returns
- GemError.success when the listener was successfully registered.
- GemError.invalidInput if the
dataTypeis not available (check isDataTypeAvailable). - Other GemError values on failure.
See also:
- removeListener - Unregister a listener for a specific data type.
- removeListenerAllDataTypes - Unregister all listeners for a specific listener.
Implementation
GemError addListener({
required final DataSourceListener listener,
required final DataType dataType,
final ParameterList? parameters,
}) {
GemKitPlatform.instance.registerEventHandler(listener.id, listener);
final OperationResult resultString = objectMethod(
pointerId,
'DataSourceContainer',
'addListener',
args: <String, dynamic>{
'listener': listener.id,
'datatype': dataType.id,
if (parameters != null) 'preferences': parameters.pointerId,
},
);
return GemErrorExtension.fromCode(resultString['result']);
}