Next: 7. Using Fnorb with Up: 6. Mapping for the Previous: 6.2 Configuring the BOA

#
6.3 Using the BOA

The BOA module defines the interface to the BOA itself. In Fnorb, the following BOA methods are available:

    class BOA:

        def create(self, object_key, intrep_id):
            """ Generate an object reference.

            This method creates an object reference containing the
            specified object key and for an interface of the specified
            type id.

            """

        def obj_is_ready(self, obj, impl):
            """ Connect an object reference to an implementation instance.

            This method `connects' an object reference with a Python
            implementation instance.  Note that the implementation will
            not receive any operation requests until the event loop is
            started.

            """

        def deactivate_obj(self, obj):
            """ Tell the BOA not to invoke any more requests for this object reference.

            This method prevents any further requests being passed on to
            the implementation connected to the specified object
            reference.

            """

The BOA also implements a Fnorb specific interface as follows:

        def _fnorb_mainloop(self):
            """ Start the Fnorb event loop.

            This method tells the BOA to start listening for operation
            requests.  It will not return unless the `_fnorb_quit' method
            is invoked from within an operation.

            """

        def fnorb_quit(self):
            """ Exit the Fnorb event loop.

            This method makes the BOA exit the event loop.  Currently, the
            BOA does not wait for active requests to complete so it is up
            to the application to make sure that the server only allows
            the shutdown to take place in appropriate places.

            """