My understanding is that events are raised asynchronously by various
components. Every component will be notified when every event (that it has
registered a handler for) is raised. So what ordering are we referring to?
Is it the components that are ordered? And a particular event will go to the
first component, and then the second (if the first component's handler
returns CONTINUE), and so on. This logic follows an event as it is passed
from one component to another.

nox.xml lists 8 events, and a various number of filters for each. At least
some of the filters sound like component names. For example Flow_in_event
has filters: sepl_enforcer, routing, sample_routing, normal_routing, and
flow_cache. Are these the names of the components that Flow_in_event will be
sent to, and in this order?

But how does this file handle new events defined by other components?

Thank you. I have a lot more to learn.


On Tue, Feb 16, 2010 at 1:32 PM, kk yap <[email protected]> wrote:

> Hi Ashish,
>
> I will try to document what I understand in the doxygen when I find some
> time.
>
> For now, in brevity, the Disposition is defined in include/event.hh:
>  enum Disposition { CONTINUE, STOP };
>
> Events are passed in order of the list listed in nox.xml, i.e.,
> components will receive the events in that order.  If a previous
> component return STOP, the event is not seen by the latter components.
>  The alternative is CONTINUE, which is the common case.  Then, the
> latter components will receive the events.
>
> Hope I am being clear here.
>
> Regards
> KK
>
>
> On 16 February 2010 10:22, Ashish Agarwal <[email protected]> wrote:
> > Okay I kind of understand that, although I don't see this defined in
> > nox.xml. This file just lists some events and provides filters for each
> (but
> > what's a filter?).
> > In nox_main.cc, there are the beginnings of a doxygen manual describing
> the
> > NOX Programming Model, but it just has section titles right now. This is
> > exactly what I need. Is this documentation completed in any later branch?
> >
> > On Tue, Feb 16, 2010 at 12:12 PM, Kyriakos Zarifis <
> [email protected]>
> > wrote:
> >>
> >> Hey,
> >>
> >> without being sure, if I recall Dispositions are what components return
> >> with regards to the handling of an incoming event.. For example CONTINUE
> >> would push the event to be handled by the next component, and STOP would
> >> stop the forwarding of the event along the handler chain. This chain is
> >> defined in nox.xml
> >>
> >> I might be wrong, so someone else can correct me
> >>
> >> On Tue, Feb 16, 2010 at 9:03 AM, Ashish Agarwal <[email protected]>
> >> wrote:
> >>>
> >>> Hi. What is a Disposition? I don't find a class definition for this
> >>> within the NOX source code.
> >>> I'm trying to understand NOX's design overall. I've read the white
> paper,
> >>> but the NOX manual says that unfortunately NOX's internal design is not
> well
> >>> documented. Is that still the case, or is there some documentation I
> haven't
> >>> found? Or is the source code the only source of information?
> >>> Thank you.
> >>>
> >>> _______________________________________________
> >>> nox-dev mailing list
> >>> [email protected]
> >>> http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
> >>>
> >>
> >
> >
> > _______________________________________________
> > nox-dev mailing list
> > [email protected]
> > http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org
> >
> >
>
_______________________________________________
nox-dev mailing list
[email protected]
http://noxrepo.org/mailman/listinfo/nox-dev_noxrepo.org

Reply via email to