kieker-monitoring / kieker

Kieker's main repository
Apache License 2.0
70 stars 41 forks source link

[KIEKER-939] Resolve technology dependencies in Data Bridge? #883

Open rju opened 2 weeks ago

rju commented 2 weeks ago

JIRA Issue: KIEKER-939 Resolve technology dependencies in Data Bridge? Original Reporter: Andre van Hoorn


While working on KIEKER-1062 Done I was wondering why the following specific technologies are used:

As we are doing similar things in Kieker w/o these dependencis: Would be interested in what these are needed for.

Checklist:

rju commented 1 week ago

author rju -- Sat, 5 Apr 2014 19:21:24 +0200

The activemq-core is used by the embedded JMS server of the KDB. However, if someone does not use that connector the tool will run without it. The reflections jar is used for automatically loading the connectors. It might be possible to replace it by something else, I will confer on that with Nils Christian Ehmke. IMHO is the geronimo jar a dependency of activemq, but I have to check this first.

The activemq is also used in the tests to test the two JMS connectors.

rju commented 1 week ago

author André van Hoorn -- Mon, 7 Apr 2014 09:20:55 +0200

Replying to [rju|comment:1]:
> The activemq-core is used by the embedded JMS server of the KDB.

I see, makes sense.

> However, if someone does not use that connector the tool will run without it.
> The reflections jar is used for > automatically loading the connectors. It might be possible to replace
> it by something else, I will confer on that with Nils Christian Ehmke. IMHO is the geronimo jar a dependency of activemq,
> but I have to check this first.

OK.

> The activemq is also used in the tests to test the two JMS connectors.

OK. That's were I hoped to see the chance to remove the dependency because our JMS writer/reader tests also run with a fake JMS implementation instead of a concrete one.

rju commented 1 week ago

author rju -- Mon, 7 Apr 2014 11:28:43 +0200

I discussed the reflections-*.jar dependency with Nils Christian Ehmke and we concluded that we could replace most of it functionality by copying code from tests and other parts of the Kieker-WebGUI. However, we would not to be able to cover everything, and the code would be very complex. However, Nils Christian Ehmke would like to use the same library to solve the needs in the tests and WebGUI better. Therefore, we recommend that the library should be included as additional dependency.

rju commented 1 week ago

author rju -- Tue, 20 May 2014 12:18:00 +0200

In the remove-activeMQ-dependency-KIEK-939 branch, I've made the attempt to remove ActiveMQ as dependency and replace everything with the generic JMS facilities. This worked for both tests TestJMSClientConnector and TestJMSEmbeddedConnector, and the JMSClientConnector. However, it seams to be impossible to remove the dependency from the JMSEmbeddedConnector, as this connector creates an ActiveMQ-based JMS provider through the BrokerService class. The JMS specification does not provide any information on a general provider interface or factory. Therefore, ActiveMQ cannot be removed from the dependencies.

At present the tooling still uses ActiveMQ as JMS library. We could move that to the FakeJMS implementation for the JMSClientConnector test. For the connector with an embedded JMS provider we need another solution.

rju commented 1 week ago

author Jan Waller -- Thu, 26 Jun 2014 16:15:55 +0200

all unneccessary dependencies resolved