getEntityHandler<T> method
EntityHandler<T> ?
getEntityHandler<T>({
- T? obj,
- Type? type,
- String? typeName,
- EntityHandler? knownEntityHandler,
Implementation
EntityHandler<T>? getEntityHandler<T>(
{T? obj,
Type? type,
String? typeName,
EntityHandler? knownEntityHandler}) {
if (T == O && isValidEntityType<T>()) {
return this as EntityHandler<T>;
}
if (obj != null) {
if (obj is EntityReference) {
if (obj.type == O && isValidEntityType<O>()) {
return this as EntityHandler<T>;
} else {
var entityHandler = obj.entityHandler;
if (entityHandler is EntityHandler<T>) {
return entityHandler;
}
}
} else if (obj.runtimeType == O && isValidEntityType<O>()) {
return this as EntityHandler<T>;
}
}
if (type != null && type == O && isValidEntityType<O>()) {
return this as EntityHandler<T>;
}
if (typeName != null && this.typeName == typeName) {
return this as EntityHandler<T>;
}
return knownEntityHandler?.getEntityHandler<T>(
obj: obj, type: type, typeName: typeName) ??
provider.getEntityHandler<T>(obj: obj, type: type);
}