You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Components View

At package level, QMan is composed by 4 core packages illustrated in the picture below :

Package configuration

This package contains all configuration entities / items shared between all QMan components.
Those includes both configuration items that are directly under the user control and not-public items used internally to configurate (sub) components.
As you can see, the configuration package is a central grouping of components that serve the remaining three modules.

Package domain

Package jmx

Contains all services that are part of QMan JMX adapter. A special note should be done for this package because even from the picture is not clear, the JMX core could be used independently from the WSDM adapter.
That means this package contains all services and interfaces needed for expose a Qpid management domain model using JMX.
That fits a management scenario where there's a java agent layer that wants to monitor / instrument / manage one or more remote brokers.
Each managed entity will have its own JMX representation as an MBean with common and specific features (depending on the resource type).
JMX interfaces and entities are detailed here

Package wsdm

Components that belong to this package enable QMan interfaces to be exposed using WS-DM / HTTP. As part of that, this package contains

  • standard JEE Web components (Servlets and Context Listeners).
  • WS-DM specific components

Note that this is an additional layer over the previous JMX core so the basically the same considerations apply management resources (in this case we call them WS-Resources).

QManLifecycleManager

Simply speaking, we could say that the whole WSDM Layer acts as a facade of the JMX Adapter, so it should be able to control the lifecycle of a that adapter. This component is a web component that (as the name suggests) provides a lifecycle management (startup & shutdown) of a JMX adapter instance.

WsDmAdapter

An HTTP Servlet that listens for incoming WS-DM / HTTP requests and dispatches those requests to the appropriate handler.

QMan

A front controller of the JMX instrumentation layer exposed itself for management (as an MBean).

QManWsResource

QMan object representation of a WS-Resource. A WS-Resource is a composition of a management resource and a Web service through which the resource can be accessed.

QManWsAdapter

A static WS-Resource that acts as a controller / facade of QMan WS-DM management domain model. Basically it provides the following features :

  • WS-Resource creation : When a new resource is built on JMX layer, it builds the corresponding WS-Resource representation (WS-Resource instance, WSDL, RMD and capabilities)
  • WS-Resource deletion : When a resource is deleted on JMX layer (i.e. a connection that has been closed, a session that has been destroyed), it deletes the corresponding WS-Resource
  • Notifications : Acting as a notification producer, each time a WS-Resource is created / destroyed a dedicated message is published on a lifecycle topic.

SubscriptionManager

A WS-Resource that enables QMan notifications. It provides operations that allow a requestor to query and manipulate subscription resources that it manages. For example it is possible (on requestor side) to pause and resume a subscription.

MBeanWSResource

This is the interface that all QMan WS-Resources have. Although a concrete implementation of this interface is built at runtime, it indicates that the resources will have a common set of features (attribute retrieveal, operation invocation).

Other WS interfaces

The other interfaces on the diagram simply enumerates all the WS-DM interfaces that will be implemented by the QMan WS-Resources. More information about those interfaces are found here .

  • No labels