2 Replies Latest reply on Jan 4, 2011 12:51 PM by Tom Cunningham

    Registry Development

    Tom Cunningham Master

      I've got a branch going for registry development, mainly incorporating JGroups for registering services and passing exchanges :

       

      https://github.com/cunningt/core/tree/jgroups-registry

       

      The branch includes a small demo that shows registration of services, unregistration, and very very basic exchange passing.    Note - a prerequisite to this is that multicast works, so make sure that if you have a software firewall running on your machine, turn it off/alter your permissions so that multicast works :

       

      Instructions :

      Open a terminal window

      cd core/registry

      ./demo.sh

       

      Open a second terminal window

      cd core/registry

      ./demo.sh

       

      In window 1, register a service

       

       

      [(r)egister/(u)nregister/(e)xchange <service>- r foo
      

       

       

      In window 2, register a service, create an exchange, unregister the service

       

       

      [(r)egister/(u)nregister/(e)xchange <service>- r bar
      [(r)egister/(u)nregister/(e)xchange <service>- e foo
      [(r)egister/(u)nregister/(e)xchange <service>- u bar
      
        • 1. Re: Registry Development
          Tom Fennelly Master

          Hey Tom.... can you outline the plans for how the registry will be used in SwitchYard.  What is it responsible for?  How will it be used etc?

          • 2. Re: Registry Development
            Tom Cunningham Master

            I'm just working on the runtime registry, so it's just an implementation of org.switchyard.spi.ServiceRegistry.

             

            I'm interested in :

             

            - the visibility of remote services in the local registry (i.e. a call to registry.getServices() or registry.getServices(QName serviceName) will return both local and remote services)

            - the ability to create an exchange for a remote service

            - the ability for the exchanges to send messages that are passed to the remote service

             

            There's  a number of different ways that could be implemented - I'm using  JGroups, but it could be done different  for SwitchYard.