TODO in activefacts-api-0.9.3 vs TODO in activefacts-api-0.9.4
- old
+ new
@@ -1,5 +1,21 @@
Performance
+ Each object type (class) needs fast access to:
+ Its identifying roles
+ Its supertypes that have alternate identification
+ The roles it plays in identifying other object types
+ Each one-to-many role needs:
+ A method to derive a counterpart (RoleValues) key from a full key
+ Each class needs
+ An adapt() method to convert offered values to a full key
+ an assign_all method
+ that can perform "atomic" identity change
+ Constellation needs assert_instance that for a given class:
+ adapts all keys from identifying values
+ checks either non-existence or uniqueness and type of the identified object for all such keys
+ instantiates the object if previously non-existent
+ (instantiates role subtypes by mixing in if this instance did not exist but the class is mixed in another extant object)
+ assigns non-identifying values
Pre-define ObjectType accessor methods on constellation, rather than using method_missing
Role objects:
TEST: Access through class-level accessors