There is a restriction in the current implementation that forces all
DataObjects in a graph to belong to the same DataFactory. I'm not convinced
we need this. Currently if you create a DataObject (do1) from a DataFactory
(df1) and then set that as a property on DataObject (do2) that was created
from DataFactory (df2) the code:

  1. Iterates over all the types and properties of do1 recursively
  checking that the types are defined in df2
  2. Iterates through all the instance properties of do1 (recursively
  for props that are DOs) changing the DataFacory of each to df2
  3. burns the cpu out while doing this
  4. crashes as there are many bugs in this logic

While looking into a fix for this I think the easiest solution is to just
not have the restriction at all. The only check that is necessary is that
the Type of do1 matches the Type of the property being set on do2. do1 still
remembers that its DataFactory is df1.This "appears" to work but I'm sure
some corner cases may turn up that require fixing.

Am I missing something obvious here?

Cheers,

--
Pete

Reply via email to