You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2020/09/02 11:32:20 UTC

[karaf-decanter] branch master updated: [KARAF-6835] Remove process collector

This is an automated email from the ASF dual-hosted git repository.

jbonofre pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/karaf-decanter.git


The following commit(s) were added to refs/heads/master by this push:
     new 9bd38dd  [KARAF-6835] Remove process collector
     new f64b861  Merge pull request #190 from jbonofre/KARAF-6835
9bd38dd is described below

commit 9bd38dda9fb7cbf87d0d89ef0f4398e2010aa5de
Author: jbonofre <jb...@apache.org>
AuthorDate: Wed Sep 2 10:00:39 2020 +0200

    [KARAF-6835] Remove process collector
---
 assembly/src/main/feature/feature.xml              |  12 -
 collector/pom.xml                                  |   1 -
 collector/process/NOTICE                           |  57 -----
 collector/process/pom.xml                          | 103 --------
 ...apache.karaf.decanter.collector.process-jmx.cfg |  40 ----
 .../decanter/collector/process/BeanHarvester.java  | 115 ---------
 .../collector/process/JmxProcessCollector.java     | 163 -------------
 pom.xml                                            |   1 -
 tools-jar-wrapper/NOTICE                           |  57 -----
 tools-jar-wrapper/pom.xml                          | 259 ---------------------
 10 files changed, 808 deletions(-)

diff --git a/assembly/src/main/feature/feature.xml b/assembly/src/main/feature/feature.xml
index c70b91b..75fb633 100644
--- a/assembly/src/main/feature/feature.xml
+++ b/assembly/src/main/feature/feature.xml
@@ -178,18 +178,6 @@ org.apache.felix.eventadmin.IgnoreTimeout=org.apache.karaf.decanter.
         <bundle>mvn:org.apache.karaf.decanter.collector/org.apache.karaf.decanter.collector.socket/${project.version}</bundle>
     </feature>
     
-    <feature name="decanter-collector-process-core" version="${project.version}" description="Karaf Decanter JMX Process Collector core">
-        <feature>decanter-common</feature>
-        <feature>scheduler</feature>
-        <bundle>mvn:org.apache.karaf.decanter/tools-jar-wrapper/${project.version}</bundle>
-        <bundle>mvn:org.apache.karaf.decanter.collector/org.apache.karaf.decanter.collector.process/${project.version}</bundle>
-    </feature>
-    
-    <feature name="decanter-collector-process" version="${project.version}" description="Karaf Decanter JMX Process Collector">
-        <configfile finalname="/etc/org.apache.karaf.decanter.collector.process-jmx.cfg">mvn:org.apache.karaf.decanter.collector/org.apache.karaf.decanter.collector.process/${project.version}/cfg/process</configfile>
-        <feature>decanter-collector-process-core</feature>
-    </feature>
-
     <feature name="decanter-collector-mqtt" version="${project.version}" description="Karaf Decanter MQTT Collector">
         <feature>decanter-common</feature>
         <bundle dependency="true">mvn:org.eclipse.paho/org.eclipse.paho.client.mqttv3/${paho.version}</bundle>
diff --git a/collector/pom.xml b/collector/pom.xml
index 57de4f2..dbecfb1 100644
--- a/collector/pom.xml
+++ b/collector/pom.xml
@@ -49,7 +49,6 @@
         <module>log4j-socket</module>
         <module>mqtt</module>
         <module>oshi</module>
-        <!-- <module>process</module> -->
         <module>redis</module>
         <module>rest</module>
         <module>rest-servlet</module>
diff --git a/collector/process/NOTICE b/collector/process/NOTICE
deleted file mode 100644
index 4e4af9e..0000000
--- a/collector/process/NOTICE
+++ /dev/null
@@ -1,57 +0,0 @@
-Apache Karaf Decanter
-Copyright 2015-2019 The Apache Software Foundation
-
-I. Included Software
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-Licensed under the Apache License 2.0.
-
-This product includes software developed at
-Elastic (https://www.elastic.co/).
-Licensed under the Apache License 2.0.
-
-This product includes software developed at
-OrientDB (http://orientdb.com).
-Licensed under the Apache License 2.0.
-
-II. Used Software
-
-This product uses software developed at
-The OSGi Alliance (http://www.osgi.org/).
-Copyright (c) OSGi Alliance (2000, 2010).
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-OPS4J (http://www.ops4j.org/).
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-SLF4J (http://www.slf4j.org/).
-Licensed under the MIT License.
-
-This product uses software developed at
-JUnit (http://www.junit.org/).
-Licensed under the Eclipse Public License 1.0.
-
-This product uses software developed at
-Redis (http://www.redis.io).
-Licensed under the BSD license.
-
-This product uses software developed at
-Dropwizard (http://www.dropwizard.io).
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-searchbox.io (https://github.com/searchbox-io)
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-MongoDB (https://www.mongodb.com/)
-Licensed under the Apache License 2.0.
-
-III. License Summary
-- Apache License 2.0
-- MIT License
-- Eclipse Public License 1.0
-- BSD License
diff --git a/collector/process/pom.xml b/collector/process/pom.xml
deleted file mode 100644
index 5c76eaf..0000000
--- a/collector/process/pom.xml
+++ /dev/null
@@ -1,103 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-	<!-- Licensed to the Apache Software Foundation (ASF) under one or more 
-		contributor license agreements. See the NOTICE file distributed with this 
-		work for additional information regarding copyright ownership. The ASF licenses 
-		this file to You under the Apache License, Version 2.0 (the "License"); you 
-		may not use this file except in compliance with the License. You may obtain 
-		a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless 
-		required by applicable law or agreed to in writing, software distributed 
-		under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES 
-		OR CONDITIONS OF ANY KIND, either express or implied. See the License for 
-		the specific language governing permissions and limitations under the License. -->
-
-	<modelVersion>4.0.0</modelVersion>
-
-	<parent>
-		<groupId>org.apache.karaf.decanter</groupId>
-		<artifactId>collector</artifactId>
-		<version>2.6.0-SNAPSHOT</version>
-		<relativePath>../pom.xml</relativePath>
-	</parent>
-
-	<groupId>org.apache.karaf.decanter.collector</groupId>
-	<artifactId>org.apache.karaf.decanter.collector.process</artifactId>
-	<packaging>bundle</packaging>
-	<name>Apache Karaf :: Decanter :: Collector :: Process</name>
-
-	<dependencies>
-        <dependency>
-            <groupId>org.apache.karaf.decanter.collector</groupId>
-            <artifactId>org.apache.karaf.decanter.collector.utils</artifactId>
-        </dependency>
-	</dependencies>
-
-	<build>
-		<plugins>
-            <plugin>
-                <groupId>org.apache.felix</groupId>
-                <artifactId>maven-bundle-plugin</artifactId>
-                <inherited>true</inherited>
-                <extensions>true</extensions>
-                <configuration>
-                    <obrRepository>NONE</obrRepository>
-                    <instructions>
-                        <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
-                        <Export-Package>!*</Export-Package>
-                        <Import-Package>
-                            *
-                        </Import-Package>
-                        <Private-Package>
-                            org.apache.karaf.decanter.collector.process,
-                            org.apache.karaf.decanter.collector.utils
-                        </Private-Package>
-                        <_dsannotations>*</_dsannotations>
-                    </instructions>
-                </configuration>
-            </plugin>
-			<plugin>
-				<groupId>org.codehaus.mojo</groupId>
-				<artifactId>build-helper-maven-plugin</artifactId>
-				<executions>
-					<execution>
-						<phase>package</phase>
-						<goals>
-							<goal>attach-artifact</goal>
-						</goals>
-						<configuration>
-							<artifacts>
-								<artifact>
-									<file>src/main/cfg/org.apache.karaf.decanter.collector.process-jmx.cfg</file>
-									<type>cfg</type>
-									<classifier>process</classifier>
-								</artifact>
-							</artifacts>
-						</configuration>
-					</execution>
-				</executions>
-			</plugin>
-		</plugins>
-	</build>
-
-	<profiles>
-		<profile>
-			<id>default-tools.jar</id>
-			<activation>
-				<property>
-					<name>java.vendor</name>
-					<value>Oracle Corporation</value>
-				</property>
-			</activation>
-			<dependencies>
-				<dependency>
-					<groupId>com.sun</groupId>
-					<artifactId>tools</artifactId>
-					<version>1.8.0</version>
-					<scope>system</scope>
-					<systemPath>${java.home}/../lib/tools.jar</systemPath>
-				</dependency>
-			</dependencies>
-		</profile>
-	</profiles>
-</project>
diff --git a/collector/process/src/main/cfg/org.apache.karaf.decanter.collector.process-jmx.cfg b/collector/process/src/main/cfg/org.apache.karaf.decanter.collector.process-jmx.cfg
deleted file mode 100644
index 47c3137..0000000
--- a/collector/process/src/main/cfg/org.apache.karaf.decanter.collector.process-jmx.cfg
+++ /dev/null
@@ -1,40 +0,0 @@
-################################################################################
-#
-#    Licensed to the Apache Software Foundation (ASF) under one or more
-#    contributor license agreements.  See the NOTICE file distributed with
-#    this work for additional information regarding copyright ownership.
-#    The ASF licenses this file to You under the Apache License, Version 2.0
-#    (the "License"); you may not use this file except in compliance with
-#    the License.  You may obtain a copy of the License at
-#
-#       http://www.apache.org/licenses/LICENSE-2.0
-#
-#    Unless required by applicable law or agreed to in writing, software
-#    distributed under the License is distributed on an "AS IS" BASIS,
-#    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-#    See the License for the specific language governing permissions and
-#    limitations under the License.
-#
-################################################################################
-
-#
-# Decanter Local Process JMX collector configuration
-#
-
-# Name/type of the JMX collection
-type=process-jmx
-
-# URL of the JMX MBeanServer.
-# local keyword means the local platform MBeanServer or you can specify to full JMX URL
-# like service:jmx:rmi:///jndi/rmi://hostname:port/karaf-instance
-process=test.Test
-
-# Object name filter to use. Instead of harvesting all MBeans, you can select only
-# some MBeans matching the object name filter
-object.name=org.apache.activemq:*
-
-# You can add any custom field that the collector will "forward" to the dispatcher
-# For instance:
-#
-# my=stuff
-#
diff --git a/collector/process/src/main/java/org/apache/karaf/decanter/collector/process/BeanHarvester.java b/collector/process/src/main/java/org/apache/karaf/decanter/collector/process/BeanHarvester.java
deleted file mode 100644
index f0bbb8e..0000000
--- a/collector/process/src/main/java/org/apache/karaf/decanter/collector/process/BeanHarvester.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.karaf.decanter.collector.process;
-
-import java.net.UnknownHostException;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Set;
-
-import javax.management.MBeanAttributeInfo;
-import javax.management.MBeanServerConnection;
-import javax.management.ObjectName;
-import javax.management.openmbean.CompositeData;
-import javax.management.openmbean.CompositeDataSupport;
-import javax.management.openmbean.CompositeType;
-import javax.management.openmbean.TabularData;
-import javax.management.openmbean.TabularDataSupport;
-import javax.management.openmbean.TabularType;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-class BeanHarvester {
-    private final static Logger LOGGER = LoggerFactory.getLogger(BeanHarvester.class);
-    private MBeanServerConnection connection;
-    private String type;
-    
-    BeanHarvester(MBeanServerConnection connection, String type) throws UnknownHostException {
-        this.connection = connection;
-        this.type = type;
-    }
-
-    Map<String, Object> harvestBean(ObjectName name) throws Exception {
-        MBeanAttributeInfo[] attributes = connection.getMBeanInfo(name).getAttributes();
-        Map<String, Object> data = new HashMap<>();
-        data.put("type", type);
-        data.put("ObjectName", name.toString());
-
-        for (MBeanAttributeInfo attribute : attributes) {
-            try {
-                Object attributeObject = connection.getAttribute(name, attribute.getName());
-                if (attributeObject instanceof String) {
-                    data.put(attribute.getName(), (String) attributeObject);
-                } else if (attributeObject instanceof ObjectName) {
-                    data.put(attribute.getName(), ((ObjectName) attributeObject).toString());
-                } else if (attributeObject instanceof CompositeDataSupport || attributeObject instanceof CompositeData) {
-                    CompositeData cds = (CompositeData) attributeObject;
-                    CompositeType compositeType = cds.getCompositeType();
-                    Set<String> keySet = compositeType.keySet();
-                    Map<String, Object> composite = new HashMap<String, Object>();
-                    for (String key : keySet) {
-                        Object cdsObject = cds.get(key);
-                        composite.put(key, cdsObject);
-                    }
-                    data.put(attribute.getName(), composite);
-                } else if (attributeObject instanceof Long
-                        || attributeObject instanceof Integer
-                        || attributeObject instanceof Boolean
-                        || attributeObject instanceof Float
-                        || attributeObject instanceof Double) {
-                    data.put(attribute.getName(), attributeObject);
-                } else if (attributeObject instanceof TabularDataSupport || attributeObject instanceof TabularData) {
-                    TabularData tds = (TabularData) attributeObject;
-                    TabularType tabularType = tds.getTabularType();
-                    CompositeType compositeType = tabularType.getRowType();
-                    Collection<?> values = tds.values();
-                    ArrayList<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
-                    for (Object value : values) {
-                        CompositeDataSupport cds = (CompositeDataSupport) value;
-                        Set<String> keySet = compositeType.keySet();
-                        Map<String, Object> composite = new HashMap<String, Object>();
-                        list.add(composite);
-                        for (String key : keySet) {
-                            Object cdsObject = cds.get(key);
-                            composite.put(key, cdsObject);
-                        }
-                    }
-                    data.put(attribute.getName(), list);
-                } else if (attributeObject instanceof Object[]) {
-                    data.put(attribute.getName(), (Object[]) attributeObject);
-                } else if (attributeObject instanceof long[]) {
-                    data.put(attribute.getName(), (long[]) attributeObject);
-                } else if (attributeObject instanceof String[]) {
-                    data.put(attribute.getName(), (String[]) attributeObject);
-                } else if (attributeObject instanceof int[]) {
-                    data.put(attribute.getName(), (int[]) attributeObject);
-                } else {
-                    data.put(attribute.getName(), attributeObject.toString());
-                }
-            } catch (SecurityException se) {
-                LOGGER.error("SecurityException: ", se);
-            } catch (Exception e) {
-                LOGGER.debug("Could not read attribute " + name.toString() + " " + attribute.getName());
-            }
-
-        }
-        return data;
-    }
-}
diff --git a/collector/process/src/main/java/org/apache/karaf/decanter/collector/process/JmxProcessCollector.java b/collector/process/src/main/java/org/apache/karaf/decanter/collector/process/JmxProcessCollector.java
deleted file mode 100644
index 8b82693..0000000
--- a/collector/process/src/main/java/org/apache/karaf/decanter/collector/process/JmxProcessCollector.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.karaf.decanter.collector.process;
-
-import java.io.File;
-import java.util.Dictionary;
-import java.util.Hashtable;
-import java.util.Map;
-import java.util.Set;
-
-import javax.management.MBeanServerConnection;
-import javax.management.MalformedObjectNameException;
-import javax.management.ObjectName;
-import javax.management.remote.JMXConnector;
-import javax.management.remote.JMXConnectorFactory;
-import javax.management.remote.JMXServiceURL;
-
-import org.apache.karaf.decanter.collector.utils.PropertiesPreparator;
-import org.osgi.service.component.ComponentContext;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.Reference;
-import org.osgi.service.event.Event;
-import org.osgi.service.event.EventAdmin;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-import com.sun.tools.attach.VirtualMachine;
-import com.sun.tools.attach.VirtualMachineDescriptor;
-
-/**
- * Decanter JMX Local Process Pooling Collector
- */
-@Component(
-        name = "org.apache.karaf.decanter.collector.process",
-        immediate = true,
-        property = {"decanter.collector.name=process",
-                "scheduler.period:Long=60",
-                "scheduler.concurrent:Boolean=false",
-                "scheduler.name=decanter-collector-process"}
-)
-public class JmxProcessCollector implements Runnable {
-
-    @Reference
-    public EventAdmin dispatcher;
-
-    private final static Logger LOGGER = LoggerFactory.getLogger(JmxProcessCollector.class);
-
-    private String type;
-    private String process;
-    private String objectName;
-
-    private Dictionary<String, Object> properties;
-
-    @SuppressWarnings("unchecked")
-    public void activate(ComponentContext context) {
-        properties = context.getProperties();
-        String type = getProperty(properties, "type", "process-jmx");
-        String process = getProperty(properties, "process", null);
-        String objectName = getProperty(properties, "object.name", null);
-        Dictionary<String, String> serviceProperties = new Hashtable<String, String>();
-        serviceProperties.put("decanter.collector.name", type);
-        this.type = type;
-        this.process = process;
-        this.objectName = objectName;
-    }
-
-    private String getProperty(Dictionary<String, Object> properties, String key, String defaultValue) {
-        return (properties.get(key) != null) ? (String) properties.get(key) : defaultValue;
-    }
-
-    @Override
-    public void run() {
-        LOGGER.debug("Karaf Decanter JMX Local Process Collector starts harvesting {}...", type);
-
-        JMXConnector connector = null;
-        MBeanServerConnection connection = null;
-
-        String host = null;
-        if (process == null) {
-            LOGGER.error("Can't connect to MBeanServer on local process, as not declared");
-            return;
-        } else {
-            try {
-                for (final VirtualMachineDescriptor descriptor : VirtualMachine.list()) {
-                    if (descriptor.displayName().contains(process)) {
-                        VirtualMachine vm = VirtualMachine.attach(descriptor.id());
-                        String connectorAddr = vm.getAgentProperties()
-                                .getProperty("com.sun.management.jmxremote.localConnectorAddress");
-                        if (connectorAddr == null) {
-                            String agent = vm.getSystemProperties().getProperty("java.home") + File.separator + "lib"
-                                    + File.separator + "management-agent.jar";
-                            vm.loadAgent(agent);
-                            connectorAddr = vm.getAgentProperties()
-                                    .getProperty("com.sun.management.jmxremote.localConnectorAddress");
-                        }
-                        JMXServiceURL serviceURL = new JMXServiceURL(connectorAddr);
-                        connector = JMXConnectorFactory.connect(serviceURL);
-                        connection = connector.getMBeanServerConnection();
-                    }
-                }
-
-            } catch (Exception e) {
-                LOGGER.error("Can't connect to given Process {}", process);
-            }
-        }
-
-        if (connection == null) {
-            LOGGER.debug("MBean connection is null, nothing to do");
-            return;
-        }
-
-        try {
-            String karafName = System.getProperty("karaf.name");
-            BeanHarvester harvester = new BeanHarvester(connection, type);
-            Set<ObjectName> names = connection.queryNames(getObjectName(objectName), null);
-            for (ObjectName name : names) {
-                try {
-                    Map<String, Object> data = harvester.harvestBean(name);
-
-                    PropertiesPreparator.prepare(data, properties);
-
-                    Event event = new Event("decanter/collect/jmx/" + type + "/" + getTopic(name), data);
-                    dispatcher.postEvent(event);
-                } catch (Exception e) {
-                    LOGGER.warn("Can't read MBean {} ({})", name, type, e);
-                }
-            }
-        } catch (Exception e) {
-            LOGGER.warn("Can't query object name from {} ({}) {}", process, type, objectName);
-        }
-
-        try {
-            connector.close();
-        } catch (Exception e) {
-            LOGGER.trace("Can't close JMX connector", e);
-        }
-
-        LOGGER.debug("Karaf Decanter  JMX Local Process Collector harvesting {} done", type);
-    }
-
-    private ObjectName getObjectName(String objectName) throws MalformedObjectNameException {
-        return objectName == null ? null : new ObjectName(objectName);
-    }
-
-    private String getTopic(ObjectName name) {
-        return name.getDomain().replace(".", "/").replace(" ", "_");
-    }
-
-}
diff --git a/pom.xml b/pom.xml
index 12bb26a..24d51e3 100644
--- a/pom.xml
+++ b/pom.xml
@@ -59,7 +59,6 @@
         <module>marshaller</module>
         <module>parser</module>
         <module>alerting</module>
-        <module>tools-jar-wrapper</module>
         <module>manual</module>
         <module>assembly</module>
     </modules>
diff --git a/tools-jar-wrapper/NOTICE b/tools-jar-wrapper/NOTICE
deleted file mode 100644
index 4e4af9e..0000000
--- a/tools-jar-wrapper/NOTICE
+++ /dev/null
@@ -1,57 +0,0 @@
-Apache Karaf Decanter
-Copyright 2015-2019 The Apache Software Foundation
-
-I. Included Software
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
-Licensed under the Apache License 2.0.
-
-This product includes software developed at
-Elastic (https://www.elastic.co/).
-Licensed under the Apache License 2.0.
-
-This product includes software developed at
-OrientDB (http://orientdb.com).
-Licensed under the Apache License 2.0.
-
-II. Used Software
-
-This product uses software developed at
-The OSGi Alliance (http://www.osgi.org/).
-Copyright (c) OSGi Alliance (2000, 2010).
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-OPS4J (http://www.ops4j.org/).
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-SLF4J (http://www.slf4j.org/).
-Licensed under the MIT License.
-
-This product uses software developed at
-JUnit (http://www.junit.org/).
-Licensed under the Eclipse Public License 1.0.
-
-This product uses software developed at
-Redis (http://www.redis.io).
-Licensed under the BSD license.
-
-This product uses software developed at
-Dropwizard (http://www.dropwizard.io).
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-searchbox.io (https://github.com/searchbox-io)
-Licensed under the Apache License 2.0.
-
-This product uses software developed at
-MongoDB (https://www.mongodb.com/)
-Licensed under the Apache License 2.0.
-
-III. License Summary
-- Apache License 2.0
-- MIT License
-- Eclipse Public License 1.0
-- BSD License
diff --git a/tools-jar-wrapper/pom.xml b/tools-jar-wrapper/pom.xml
deleted file mode 100644
index 73a36cb..0000000
--- a/tools-jar-wrapper/pom.xml
+++ /dev/null
@@ -1,259 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
-	<!--
-
-        Licensed to the Apache Software Foundation (ASF) under one or more
-        contributor license agreements.  See the NOTICE file distributed with
-        this work for additional information regarding copyright ownership.
-        The ASF licenses this file to You under the Apache License, Version 2.0
-        (the "License"); you may not use this file except in compliance with
-        the License.  You may obtain a copy of the License at
-
-           http://www.apache.org/licenses/LICENSE-2.0
-
-        Unless required by applicable law or agreed to in writing, software
-        distributed under the License is distributed on an "AS IS" BASIS,
-        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-        See the License for the specific language governing permissions and
-        limitations under the License.
-    -->
-
-	<modelVersion>4.0.0</modelVersion>
-
-	<parent>
-		<groupId>org.apache.karaf</groupId>
-		<artifactId>decanter</artifactId>
-		<version>2.6.0-SNAPSHOT</version>
-		<relativePath>../pom.xml</relativePath>
-	</parent>
-	
-	<groupId>org.apache.karaf.decanter</groupId>
-	<artifactId>tools-jar-wrapper</artifactId>
-	<packaging>bundle</packaging>
-	
-	<name>Apache Karaf :: Decanter :: Tools Jar Wrapper</name>
-
-	<build>
-		<plugins>
-			<plugin>
-				<groupId>org.apache.felix</groupId>
-				<artifactId>maven-bundle-plugin</artifactId>
-				<extensions>true</extensions>
-				<configuration>
-					<obrRepository>NONE</obrRepository>
-					<instructions>
-						<Export-Package>
-							com.sun.codemodel.internal;version="0.0.0",
-							com.sun.codemodel.internal.fmt;version="0.0.0",
-							com.sun.codemodel.internal.util;version="0.0.0",
-							com.sun.codemodel.internal.writer;version="0.0.0",
-							com.sun.istack.internal.tools;version="0.0.0",
-							com.sun.jarsigner;version="0.0.0",
-							com.sun.javadoc;version="0.0.0",
-							com.sun.jdi;version="0.0.0",
-							com.sun.jdi.connect;version="0.0.0",
-							com.sun.jdi.connect.spi;version="0.0.0",
-							com.sun.jdi.event;version="0.0.0",
-							com.sun.jdi.request;version="0.0.0",
-							com.sun.source.doctree;version="0.0.0",
-							com.sun.source.tree;version="0.0.0",
-							com.sun.source.util;version="0.0.0",
-							com.sun.tools.attach;version="0.0.0",
-							com.sun.tools.attach.spi;version="0.0.0",
-							com.sun.tools.classfile;version="0.0.0",
-							com.sun.tools.corba.se.idl;version="0.0.0",
-							com.sun.tools.corba.se.idl.constExpr;version="0.0.0",
-							com.sun.tools.corba.se.idl.som.cff;version="0.0.0",
-							com.sun.tools.corba.se.idl.som.idlemit;version="0.0.0",
-							com.sun.tools.corba.se.idl.toJavaPortable;version="0.0.0",
-							com.sun.tools.doclets;version="0.0.0",
-							com.sun.tools.doclets.formats.html;version="0.0.0",
-							com.sun.tools.doclets.formats.html.markup;version="0.0.0",
-							com.sun.tools.doclets.formats.html.resources;version="0.0.0",
-							com.sun.tools.doclets.internal.toolkit;version="0.0.0",
-							com.sun.tools.doclets.internal.toolkit.builders;version="0.0.0",
-							com.sun.tools.doclets.internal.toolkit.resources;version="0.0.0",
-							com.sun.tools.doclets.internal.toolkit.taglets;version="0.0.0",
-							com.sun.tools.doclets.internal.toolkit.util;version="0.0.0",
-							com.sun.tools.doclets.internal.toolkit.util.links;version="0.0.0",
-							com.sun.tools.doclets.standard;version="0.0.0",
-							com.sun.tools.doclint;version="0.0.0",
-							com.sun.tools.doclint.resources;version="0.0.0",
-							com.sun.tools.example.debug.expr;version="0.0.0",
-							com.sun.tools.example.debug.tty;version="0.0.0",
-							com.sun.tools.extcheck;version="0.0.0",
-							com.sun.tools.hat;version="0.0.0",
-							com.sun.tools.hat.internal.model;version="0.0.0",
-							com.sun.tools.hat.internal.oql;version="0.0.0",
-							com.sun.tools.hat.internal.parser;version="0.0.0",
-							com.sun.tools.hat.internal.server;version="0.0.0",
-							com.sun.tools.hat.internal.util;version="0.0.0",
-							com.sun.tools.hat.resources;version="0.0.0",
-							com.sun.tools.internal.jxc;version="0.0.0",
-							com.sun.tools.internal.jxc.ap;version="0.0.0",
-							com.sun.tools.internal.jxc.api;version="0.0.0",
-							com.sun.tools.internal.jxc.api.impl.j2s;version="0.0.0",
-							com.sun.tools.internal.jxc.gen.config;version="0.0.0",
-							com.sun.tools.internal.jxc.model.nav;version="0.0.0",
-							com.sun.tools.internal.ws;version="0.0.0",
-							com.sun.tools.internal.ws.api;version="0.0.0",
-							com.sun.tools.internal.ws.api.wsdl;version="0.0.0",
-							com.sun.tools.internal.ws.processor;version="0.0.0",
-							com.sun.tools.internal.ws.processor.generator;version="0.0.0",
-							com.sun.tools.internal.ws.processor.model;version="0.0.0",
-							com.sun.tools.internal.ws.processor.model.exporter;version="0.0.0",
-							com.sun.tools.internal.ws.processor.model.java;version="0.0.0",
-							com.sun.tools.internal.ws.processor.model.jaxb;version="0.0.0",
-							com.sun.tools.internal.ws.processor.modeler;version="0.0.0",
-							com.sun.tools.internal.ws.processor.modeler.annotation;version="0.0.0",
-							com.sun.tools.internal.ws.processor.modeler.wsdl;version="0.0.0",
-							com.sun.tools.internal.ws.processor.util;version="0.0.0",
-							com.sun.tools.internal.ws.resources;version="0.0.0",
-							com.sun.tools.internal.ws.spi;version="0.0.0",
-							com.sun.tools.internal.ws.util;version="0.0.0",
-							com.sun.tools.internal.ws.util.xml;version="0.0.0",
-							com.sun.tools.internal.ws.wscompile;version="0.0.0",
-							com.sun.tools.internal.ws.wscompile.plugin.at_generated;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.document;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.document.http;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.document.jaxws;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.document.mime;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.document.schema;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.document.soap;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.framework;version="0.0.0",
-							com.sun.tools.internal.ws.wsdl.parser;version="0.0.0",
-							com.sun.tools.internal.xjc;version="0.0.0",
-							com.sun.tools.internal.xjc.addon.accessors;version="0.0.0",
-							com.sun.tools.internal.xjc.addon.at_generated;version="0.0.0",
-							com.sun.tools.internal.xjc.addon.code_injector;version="0.0.0",
-							com.sun.tools.internal.xjc.addon.episode;version="0.0.0",
-							com.sun.tools.internal.xjc.addon.locator;version="0.0.0",
-							com.sun.tools.internal.xjc.addon.sync;version="0.0.0",
-							com.sun.tools.internal.xjc.api;version="0.0.0",
-							com.sun.tools.internal.xjc.api.impl.s2j;version="0.0.0",
-							com.sun.tools.internal.xjc.api.util;version="0.0.0",
-							com.sun.tools.internal.xjc.generator.annotation.spec;version="0.0.0",
-							com.sun.tools.internal.xjc.generator.bean;version="0.0.0",
-							com.sun.tools.internal.xjc.generator.bean.field;version="0.0.0",
-							com.sun.tools.internal.xjc.generator.util;version="0.0.0",
-							com.sun.tools.internal.xjc.model;version="0.0.0",
-							com.sun.tools.internal.xjc.model.nav;version="0.0.0",
-							com.sun.tools.internal.xjc.outline;version="0.0.0",
-							com.sun.tools.internal.xjc.reader;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.dtd;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.dtd.bindinfo;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.gbind;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.internalizer;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.relaxng;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.xmlschema;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.xmlschema.bindinfo;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.xmlschema.ct;version="0.0.0",
-							com.sun.tools.internal.xjc.reader.xmlschema.parser;version="0.0.0",
-							com.sun.tools.internal.xjc.runtime;version="0.0.0",
-							com.sun.tools.internal.xjc.util;version="0.0.0",
-							com.sun.tools.internal.xjc.writer;version="0.0.0",
-							com.sun.tools.javac;version="0.0.0",
-							com.sun.tools.javac.api;version="0.0.0",
-							com.sun.tools.javac.code;version="0.0.0",
-							com.sun.tools.javac.comp;version="0.0.0",
-							com.sun.tools.javac.file;version="0.0.0",
-							com.sun.tools.javac.jvm;version="0.0.0",
-							com.sun.tools.javac.main;version="0.0.0",
-							com.sun.tools.javac.model;version="0.0.0",
-							com.sun.tools.javac.nio;version="0.0.0",
-							com.sun.tools.javac.parser;version="0.0.0",
-							com.sun.tools.javac.processing;version="0.0.0",
-							com.sun.tools.javac.resources;version="0.0.0",
-							com.sun.tools.javac.services;version="0.0.0",
-							com.sun.tools.javac.sym;version="0.0.0",
-							com.sun.tools.javac.tree;version="0.0.0",
-							com.sun.tools.javac.util;version="0.0.0",
-							com.sun.tools.javadoc;version="0.0.0",
-							com.sun.tools.javadoc.api;version="0.0.0",
-							com.sun.tools.javadoc.resources;version="0.0.0",
-							com.sun.tools.javah;version="0.0.0",
-							com.sun.tools.javah.resources;version="0.0.0",
-							com.sun.tools.javap;version="0.0.0",
-							com.sun.tools.javap.resources;version="0.0.0",
-							com.sun.tools.jdeps;version="0.0.0",
-							com.sun.tools.jdeps.resources;version="0.0.0",
-							com.sun.tools.jdi;version="0.0.0",
-							com.sun.tools.jdi.resources;version="0.0.0",
-							com.sun.tools.script.shell;version="0.0.0",
-							com.sun.xml.internal.dtdparser;version="0.0.0",
-							com.sun.xml.internal.dtdparser.resources;version="0.0.0",
-							com.sun.xml.internal.rngom.ast.builder;version="0.0.0",
-							com.sun.xml.internal.rngom.ast.om;version="0.0.0",
-							com.sun.xml.internal.rngom.ast.util;version="0.0.0",
-							com.sun.xml.internal.rngom.binary;version="0.0.0",
-							com.sun.xml.internal.rngom.binary.visitor;version="0.0.0",
-							com.sun.xml.internal.rngom.digested;version="0.0.0",
-							com.sun.xml.internal.rngom.dt;version="0.0.0",
-							com.sun.xml.internal.rngom.dt.builtin;version="0.0.0",
-							com.sun.xml.internal.rngom.nc;version="0.0.0",
-							com.sun.xml.internal.rngom.parse;version="0.0.0",
-							com.sun.xml.internal.rngom.parse.compact;version="0.0.0",
-							com.sun.xml.internal.rngom.parse.host;version="0.0.0",
-							com.sun.xml.internal.rngom.parse.xml;version="0.0.0",
-							com.sun.xml.internal.rngom.util;version="0.0.0",
-							com.sun.xml.internal.rngom.xml.sax;version="0.0.0",
-							com.sun.xml.internal.rngom.xml.util;version="0.0.0",
-							com.sun.xml.internal.xsom;version="0.0.0",
-							com.sun.xml.internal.xsom.impl;version="0.0.0",
-							com.sun.xml.internal.xsom.impl.parser;version="0.0.0",
-							com.sun.xml.internal.xsom.impl.parser.state;version="0.0.0",
-							com.sun.xml.internal.xsom.impl.scd;version="0.0.0",
-							com.sun.xml.internal.xsom.impl.util;version="0.0.0",
-							com.sun.xml.internal.xsom.parser;version="0.0.0",
-							com.sun.xml.internal.xsom.util;version="0.0.0",
-							com.sun.xml.internal.xsom.visitor;version="0.0.0",
-							org.relaxng.datatype;version="0.0.0",
-							org.relaxng.datatype.helpers;version="0.0.0",
-							sun.applet;version="0.0.0",
-							sun.applet.resources;version="0.0.0",
-							sun.jvmstat.monitor;version="0.0.0",
-							sun.jvmstat.monitor.event;version="0.0.0",
-							sun.jvmstat.monitor.remote;version="0.0.0",
-							sun.jvmstat.perfdata.monitor;version="0.0.0",
-							sun.jvmstat.perfdata.monitor.protocol.file;version="0.0.0",
-							sun.jvmstat.perfdata.monitor.protocol.local;version="0.0.0",
-							sun.jvmstat.perfdata.monitor.protocol.rmi;version="0.0.0",
-							sun.jvmstat.perfdata.monitor.v1_0;version="0.0.0",
-							sun.jvmstat.perfdata.monitor.v2_0;version="0.0.0",
-							sun.jvmstat.perfdata.resources;version="0.0.0",
-							sun.rmi.rmic;version="0.0.0",
-							sun.rmi.rmic.iiop;version="0.0.0",
-							sun.rmi.rmic.newrmic;version="0.0.0",
-							sun.rmi.rmic.newrmic.jrmp;version="0.0.0",
-							sun.rmi.rmic.resources;version="0.0.0",
-							sun.security.tools.jarsigner;version="0.0.0",
-							sun.tools.asm;version="0.0.0",
-							sun.tools.attach;version="0.0.0",
-							sun.tools.jar;version="0.0.0",
-							sun.tools.jar.resources;version="0.0.0",
-							sun.tools.java;version="0.0.0",
-							sun.tools.javac;version="0.0.0",
-							sun.tools.javac.resources;version="0.0.0",
-							sun.tools.jcmd;version="0.0.0",
-							sun.tools.jinfo;version="0.0.0",
-							sun.tools.jmap;version="0.0.0",
-							sun.tools.jps;version="0.0.0",
-							sun.tools.jstack;version="0.0.0",
-							sun.tools.jstat;version="0.0.0",
-							sun.tools.jstat.resources;version="0.0.0",
-							sun.tools.jstatd;version="0.0.0",
-							sun.tools.native2ascii;version="0.0.0",
-							sun.tools.native2ascii.resources;version="0.0.0",
-							sun.tools.serialver;version="0.0.0",
-							sun.tools.serialver.resources;version="0.0.0",
-							sun.tools.tree;version="0.0.0",
-							sun.tools.util;version="0.0.0"
-						</Export-Package>
-						<Bundle-ClassPath>external:$java.home$/../lib/tools.jar</Bundle-ClassPath>
-					</instructions>
-				</configuration>
-			</plugin>
-		</plugins>
-	</build>
-</project>
\ No newline at end of file