> >I need to have mutual dependencies between several of my
> components. That
> >is, ComponentA depends on ComponentB and ComponentB depends
> on ComponentA.
>
> hmm - is it possible to refactor this into a third Block? The
> reason I ask
> is because if mutual dependencies exist one of them will be
> passed to the
> other block in a uninitialized state which could cause subtle
> and serious
> problems.
I dunno. Think of my server as a queue/proxy. It has a block for incoming
connections (NetIn), a block for outgoing connections (NetOut), and a block
for processing/queueing the incoming packets (Queue).
Incoming packets (NetIn) must be placed in the Queue and sent on (NetOut).
A response may come back in via NetOut, which needs to be communicated back
to Queue (but not NetIn). So, my dependency graph matches the flow of data:
NetIn --> Queue <--> NetOut
I suppose I could consolidate NetIn, NetOut, and the logic portions of Queue
into one block, Net:
Net --> Queue
> >Specifying this relationship in assembly.xml causes BlockDAG
> to traverse
> >dependencies forever.
>
> ug - thats a bug ... ;)
Glad I could be of help! ;-)
> >Attached is a quick fix that I'm using to get around this
> (it keeps track of
> >already-traversed dependencies in a Hashtable). Might this
> cause other
> >problems? I don't yet have a complete understanding of Phoenix...
>
> I may try to solve the problem a different way - I was
> thinking I would
> throw an exception when a circular reference is discovered.
> Also I may pass
> in hashtable down chain as that way multiple threads could be
> traversing
> BlockDAG at the same time etc. Thoughts?
Huh?! Isn't BlockDAG run only once for the life of a server?
-John
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]