service<Id, Data> method
Service<Id, Data>
service<Id, Data>(})
override
Creates a Service
instance that queries a given path on the server.
This expects that there is an Angel Service
mounted on the server.
In other words, all endpoints will return Data
, except for the root of
path
, which returns a List<Data>.
You can pass a custom deserializer
, which is typically necessary in cases where
dart:mirrors
does not exist.
Implementation
@override
client.Service<Id, Data> service<Id, Data>(String path,
{Type? type, client.AngelDeserializer<Data>? deserializer}) {
var uri = path.toString().replaceAll(_straySlashes, '');
return _services.putIfAbsent(uri,
() => _MockService<Id, Data>(this, uri, deserializer: deserializer))
as client.Service<Id, Data>;
}