| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
primarily colocates the current session and execution layers to facilitate implementing the new session layer that will now encompass this behaviour.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@630934 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
| |
- Using SessionManager::Observer
- Better ais test setup, only need to be member of ais group.
- Update cluster_client
- SessionState holds handler chains.
- Cluster frames include next handler ptr.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@617582 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
| |
src/qpid/Plugin.h - added doxygen
src/qpid/Url.cpp,.h - cache string rep, op==, istream/ostream ops.
src/qpid/broker/Broker.h,.cpp - removed getUrl()
src/qpid/cluster/Cluster.h,.cpp - use Url class
src/qpid/cluster/ClusterPlugin.cpp - added --url configuration.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@617533 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@616507 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
| |
D src/qpid/framing/ChannelAdapter.cpp
D src/qpid/framing/ChannelAdapter.h
D src/qpid/framing/HandlerUpdater.h
D src/tests/BrokerChannelTest.cpp
D src/tests/MockChannel.h
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@616353 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The attached patch provides support for plugin modules in the C++ broker.
- Plugins are supported (--load <lib>, --load-dir <dir> options provided)
- Command options may be extended by plugins.
- A workaround was added to make config-file parsing tolerant of unregistered options.
- Store-specific options were removed so they can be supplied by a plugin
- A pre-log facility was introduced so log messages can be generated prior to the initialization of the logging module.
File-by-file details:
M cpp/src/qpidd.cpp
Added support for loadable plugin modules. This involves a
two-phased handling of command line/config options. Phase-1
determines which modules to load and phase-2 is based on all of
the command-line options supplied by qpidd and the loaded
plugins.
M cpp/src/Makefile.am
Added dependency for boost_filesystem library.
M cpp/src/qpid/Plugin.h
Added 'earlyInitialize' method. Plugins are now initialized at
two points: earlyInitialize is called prior to broker
initialization and initialize is called at the end of broker
init. This allows modules like the store to be hooked in early
and other modules to be able to assume that the broker target is
fully functional.
M cpp/src/qpid/cluster/ClusterPlugin.cpp
Added stub for the new pure-virtual earlyInitialize method.
M cpp/src/qpid/Options.h
M cpp/src/qpid/Options.cpp
Added 'allowUnknown' option in the parse method. This is needed
in phase-1 command processing when there are options for
not-yet-loaded plugin modules.
Because the stable version of boost does not permit 'allowUnknown'
for config files, a workaround has been implemented in this module
to pre-filter the config file text removing lines that represent
unknown options.
M cpp/src/qpid/broker/Broker.h
M cpp/src/qpid/broker/Broker.cpp
Removed all store-specific command options. Updated logic to
allow the store to be a plugin module.
M cpp/src/qpid/broker/DtxManager.h
M cpp/src/qpid/broker/DtxManager.cpp
M cpp/src/qpid/broker/QueueRegistry.h
M cpp/src/qpid/broker/QueueRegistry.cpp
Changed API to these classes such that the store is no longer
supplied in the constructor but is supplied later, before any
operations are called for.
M cpp/src/qpid/broker/MessageStoreModule.h
M cpp/src/qpid/broker/MessageStoreModule.cpp
This module is still needed to provide "exception transfer"
service. It was changed to not load the store module but rather
use the already-loaded plugin store.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@611823 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@585137 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
| |
- Update ClassifierHandler to use Visitor rather than map.
- Replace heap allocation in cluster classes with boost::optional.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@571246 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Wiring (declare/delete/bind) is replicated via AIS.
- TestOptions includes all logging options.
- Logger automatically parses env vars so logging can be enabled
for any program linked with libqpidcommon e.g. by setting QPID_TRACE=1.
* src/qpid/cluster/SessionManager.cpp: Handle frames from cluster
- Forward to BrokerAdapter for execution.
- Suppress responses in proxy.
* src/tests/TestOptions.h (Options): Logging options, --help option.
* src/qpid/client/ClientConnection.cpp: Removed log initialization.
Logs are initialized either in TestOptions or automatically from env vars,
e.g. QPID_TRACE,
* src/qpid/QpidError.h (class QpidError): Initialize Exception in
constructor so messages can be logged.
* src/qpid/framing/ChannelAdapter.h: Made send() virtual.
* src/tests/Cluster_child.cpp: UUID corrected.
* src/qpid/broker/Broker.cpp: Pass chains to updater by ref.
* src/qpid/Options.cpp (parse): Fix log settings from environment.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@559171 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
- Connect cluster handlers into broker handler chains.
- Progress on wiring replication.
* src/tests/cluster.mk: Temporarily disabled Cluster test.
* src/tests/Cluster.h, cpp, Cluster_child.cpp: Updated to use UUIDs.
* src/qpidd.cpp:
- Load optional libs (cluster)
- Include plugin config in options.parse.
* src/qpid/cluster/SessionManager.h:
- Create sessions, update handler chains (as HandlerUpdater)
- Handle frames from cluster.
* src/qpid/cluster/ClusterPlugin.h, .cpp:
- renamed from ClusterPluginProvider
- Create and connect Cluster and SessionManager.
- Register SessionManager as HandlerUpdater.
* src/qpid/cluster/Cluster.h, .cpp: Refactor as SessionFrameHandler.
* src/qpid/broker/Connection.cpp: Apply HandlerUpdaters.
* src/qpid/broker/Broker.h, .cpp:
- Initialize plugins
- Apply HandlerUpdaters
* src/qpid/Plugin.h, .cpp: Simplified plugin framework.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@557788 13f79535-47bb-0310-9956-ffa450edef68
|