ManagedObject<T> class
Null safety
An object that represents a database row.
This class must be subclassed. A subclass is declared for each table in a database. These subclasses create the data model of an application.
A managed object is declared in two parts, the subclass and its table definition.
class User extends ManagedObject<_User> implements _User {
String name;
}
class _User {
@primaryKey
int id;
@Column(indexed: true)
String email;
}
Table definitions are plain Dart objects that represent a database table. Each property is a column in the database.
A subclass of this type must implement its table definition and use it as the type argument of ManagedObject. Properties and methods declared in the subclass (also called the 'instance type') are not stored in the database.
See more documentation on defining a data model at http://conduit.io/docs/db/modeling_data/
- Inheritance
-
- Object
- Serializable
- ManagedObject
- Implementers
Constructors
Properties
- backing ↔ ManagedBacking
-
The persistent values of this object.
read / write
- entity ↔ ManagedEntity
-
The ManagedEntity this instance is described by.
read / write
- hashCode → int
-
The hash code for this object.
read-onlyinherited
- modelFieldIncludeIfNull → bool
-
latefinal
-
properties
↔ Map<
String?, ManagedPropertyDescription?> -
IMPROVEMENT: Cache of entity.properties to reduce property loading time
read / write
-
responseKeyProperties
↔ Map<
String?, ManagedPropertyDescription?> -
Cache of entity.properties using ResponseKey name as key, in case no ResponseKey is set then default property name is used as key
read / write
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
Methods
-
asMap(
) → Map< String, dynamic> -
Converts this instance into a serializable map.
override
-
documentSchema(
APIDocumentContext context) → APISchemaObject -
Returns an
APISchemaObject
describing this object's type.override -
hasValueForProperty(
String propertyName) → bool - Checks whether or not a property has been set in this instances' backing.
-
mapKeyName(
String propertyName) → String -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
override
-
read(
Map< String, dynamic> object, {Iterable<String> ? accept, Iterable<String> ? ignore, Iterable<String> ? reject, Iterable<String> ? require}) → void -
Reads values from
object
, after applying filters.inherited -
readFromMap(
Map< String, dynamic> object) → void -
Reads values from
object
.override -
removePropertiesFromBackingMap(
List< String> propertyNames) → void - Removes multiple properties from backing.
-
removePropertyFromBackingMap(
String? propertyName) → void - Removes a property from backing.
-
toString(
) → String -
A string representation of this object.
inherited
-
validate(
{Validating forEvent = Validating.insert}) → ValidationContext - Validates an object according to its property Validate metadata.
-
willInsert(
) → void - Callback to modify an object prior to inserting it with a Query.
-
willUpdate(
) → void - Callback to modify an object prior to updating it with a Query.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
-
operator [](
String? propertyName) → dynamic - Retrieves a value by property name from backing.
-
operator []=(
String? propertyName, dynamic value) → void - Sets a value by property name in backing.
Static Properties
- shouldAutomaticallyDocument → bool
-
read-only