registerTypeHandler<T extends ExtendedType> static method
Used to register a ExtendedTypeHandler for type T
.
Implementation
static void registerTypeHandler<T extends ExtendedType>(
ExtendedTypeHandler<T> typeHandler) {
var typeName = typeHandler.getTypeName();
var typeID = typeHandler.getTypeID();
if (typeName.isEmpty || hasBlankChar(typeName)) {
throw StateError('Invalid ExtendedType name: $typeName');
}
if (typeID <= 0) throw StateError("ExtendedType ID can't be <= 0: $typeID");
if (typeHandlersRegistered.containsKey(typeName)) return;
if (typeHandlersRegisteredIDs.containsKey(typeID)) {
throw StateError(
'TypeID[$typeID] conflict: $typeHandler != ${typeHandlersRegisteredIDs[typeID]}');
}
typeHandlersRegistered[typeName] = typeHandler;
typeHandlersRegisteredIDs[typeID] = typeHandler;
}