ApiDocumentModel<T> class abstract

Class that can retrieve data from the RestAPI and store it as a document.

Basically, you get a Map as a response of RestAPI and use it by converting it. The data is converted using fromResponse and toRequest.

Use get in the load() method and post in the save() method as HTTP methods.

Inheritance
Implemented types
Implementers

Constructors

ApiDocumentModel(String endpoint, T initialValue, {Map<String, String> headers = const {}})
Class that can retrieve data from the RestAPI and store it as a document.

Properties

deleteEndpoint String
The endpoint to use when executing the Delete method.
no setter
deleteHeaders Map<String, String>
header when executing the Delete method.
no setter
disposed bool
True if the model is Disposed.
no setterinherited
endpoint String
API endpoints.
final
getEndpoint String
The endpoint to use when executing the Get method.
no setter
getHeaders Map<String, String>
header when executing the Get method.
no setter
hashCode int
The hash code for this object.
no setteroverride
hasListeners bool
Whether any listeners are currently registered.
no setterinherited
headers Map<String, String>
API Header.
final
isEmpty bool
Return true if data is empty.
no setterinherited
isNotEmpty bool
Return true if data is not empty.
no setteroverride
loaded bool
It becomes true after loadOnce is executed.
no setteroverride
loading Future<void>?
Returns itself after the load finishes.
no setteroverride
notifyOnChangeValue bool
If this value is true, the change will be notified when value itself is changed.
no setterinherited
postEndpoint String
The endpoint to use when executing the Post method.
no setter
postHeaders Map<String, String>
header when executing the Post method.
no setter
putEndpoint String
The endpoint to use when executing the Put method.
no setter
putHeaders Map<String, String>
header when executing the Put method.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
saving Future<void>?
Returns itself after the save/delete finishes.
no setteroverride
value ↔ T
The current value stored in this notifier.
getter/setter pairinherited

Methods

addListener(VoidCallback listener) → void
Register a closure to be called when the object changes.
inherited
delete() Future<void>
Deletes the document.
override
deleteRequest() Future<void>
The actual deleting process is done from the API when it is deleted.
dispose() → void
Discards any resources used by the object. After this is called, the object is not in a usable state and should be discarded (calls to addListener and removeListener will throw after the object is disposed).
inherited
fetch([bool listen = true]) Future<void>
Provides the best data acquisition method to implement during screen build.
override
filterOnLoad(DynamicMap loaded) DynamicMap
You can filter the loaded content when it is loaded.
filterOnSave(DynamicMap save) DynamicMap
You can filter the saving content when it is saving.
fromMap(DynamicMap map) → T
Creates a specific object from a given map.
inherited
fromResponse(String json) DynamicMap
Callback for converting to a map of objects for a response.
initState() → void
The method to be executed when initialization is performed.
inherited
load() Future<void>
Retrieves data and updates the data in the model.
loadOnce() Future<void>
If the data is empty, load is performed only once.
loadRequest() Future<void>
The actual loading process is done from the API when it is loaded.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
notifyListeners() → void
Call all the registered listeners.
inherited
onCatchResponse(dynamic response) → void
Callback to catch what to do with the response.
onDelete() Future<void>
Callback before the delete has been done.
onDidDelete() Future<void>
Callback after the delete has been done.
onDidLoad() Future<void>
Callback after the load has been done.
onDidSave() Future<void>
Callback after the save has been done.
onLoad() Future<void>
Callback before the load has been done.
onSave() Future<void>
Callback before the save has been done.
reload() Future<void>
Reload data and updates the data in the model.
override
removeListener(VoidCallback listener) → void
Remove a previously registered closure from the list of closures that are notified when the object changes.
inherited
save() Future<void>
Data stored in the model is stored in a database external to the app that is tied to the model.
override
saveRequest() Future<void>
The actual saving process is done from the API when it is saved.
toMap(T value) DynamicMap
Creates a DynamicMap from its own value.
inherited
toNotifier<V>(V converter(T value)) ValueNotifier<V>
Generates a value notifier.
inherited
toRequest(DynamicMap map) → dynamic
Callback for converting internal map data to request data.
toString() String
A string representation of this object.
inherited
transaction() DocumentTransactionBuilder
Generate a Transaction for this document.
override

Operators

operator ==(Object other) bool
The equality operator.
override