From 0c3915efa26937f1403e7af4f65226e0f470f5d9 Mon Sep 17 00:00:00 2001 From: Robert Gemmell Date: Mon, 5 Mar 2012 15:38:36 +0000 Subject: QPID-3882: remove the unused experimental info plugin git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1297090 13f79535-47bb-0310-9956-ffa450edef68 --- .../broker-plugins/experimental/info/MANIFEST.MF | 16 -- .../experimental/info/build.properties | 31 --- .../broker-plugins/experimental/info/build.xml | 39 --- .../main/java/org/apache/qpid/info/Activator.java | 212 ---------------- .../main/java/org/apache/qpid/info/AppInfo.java | 96 ------- .../src/main/java/org/apache/qpid/info/Info.java | 143 ----------- .../java/org/apache/qpid/info/InfoService.java | 30 --- .../java/org/apache/qpid/info/InfoServiceImpl.java | 66 ----- .../main/java/org/apache/qpid/info/SystemInfo.java | 95 ------- .../java/org/apache/qpid/info/util/HttpPoster.java | 130 ---------- .../org/apache/qpid/info/util/IniFileReader.java | 193 -------------- .../java/org/apache/qpid/info/util/SoapClient.java | 155 ------------ .../java/org/apache/qpid/info/util/XMLWriter.java | 102 -------- .../apache/qpid/info/systest/InfoPluginTest.java | 277 --------------------- .../org/apache/qpid/info/test/HttpPosterTest.java | 107 -------- .../apache/qpid/info/test/InfoServiceImplTest.java | 63 ----- .../org/apache/qpid/info/test/InfoServlet.java | 57 ----- .../java/org/apache/qpid/info/test/InfoTest.java | 114 --------- .../apache/qpid/info/test/IniFileReaderTest.java | 137 ---------- .../org/apache/qpid/info/test/SoapClientTest.java | 209 ---------------- .../org/apache/qpid/info/test/SystemInfoTest.java | 57 ----- .../org/apache/qpid/info/test/XMLWriterTest.java | 133 ---------- qpid/java/build.deps | 7 - qpid/java/lib/jetty-6.1.14.jar | Bin 516429 -> 0 bytes qpid/java/lib/jetty-servlet-tester-6.1.14.jar | Bin 9206 -> 0 bytes qpid/java/lib/jetty-util-6.1.14.jar | Bin 163122 -> 0 bytes qpid/java/lib/servlet-api.jar | Bin 88224 -> 0 bytes 27 files changed, 2469 deletions(-) delete mode 100644 qpid/java/broker-plugins/experimental/info/MANIFEST.MF delete mode 100644 qpid/java/broker-plugins/experimental/info/build.properties delete mode 100644 qpid/java/broker-plugins/experimental/info/build.xml delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Activator.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Info.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoService.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoServiceImpl.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/SystemInfo.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/HttpPoster.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/IniFileReader.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/SoapClient.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/XMLWriter.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/systest/InfoPluginTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/HttpPosterTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServiceImplTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServlet.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/IniFileReaderTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SoapClientTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SystemInfoTest.java delete mode 100644 qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/XMLWriterTest.java delete mode 100644 qpid/java/lib/jetty-6.1.14.jar delete mode 100644 qpid/java/lib/jetty-servlet-tester-6.1.14.jar delete mode 100644 qpid/java/lib/jetty-util-6.1.14.jar delete mode 100644 qpid/java/lib/servlet-api.jar diff --git a/qpid/java/broker-plugins/experimental/info/MANIFEST.MF b/qpid/java/broker-plugins/experimental/info/MANIFEST.MF deleted file mode 100644 index f213104d8d..0000000000 --- a/qpid/java/broker-plugins/experimental/info/MANIFEST.MF +++ /dev/null @@ -1,16 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: QpidPlugin -Bundle-SymbolicName: qpid_info_plugin;singleton:=true -Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt -Bundle-Version: 1.0.0 -Bundle-Activator: org.apache.qpid.info.Activator -Import-Package: org.apache.qpid.server.configuration, - org.osgi.framework, - org.apache.qpid.common, - org.apache.qpid.server.registry -Bundle-RequiredExecutionEnvironment: JavaSE-1.6 -Bundle-ClassPath: . -Bundle-ActivationPolicy: lazy -Export-Package: org.apache.qpid.info;uses:="org.osgi.framework" - diff --git a/qpid/java/broker-plugins/experimental/info/build.properties b/qpid/java/broker-plugins/experimental/info/build.properties deleted file mode 100644 index bdbbe1c2af..0000000000 --- a/qpid/java/broker-plugins/experimental/info/build.properties +++ /dev/null @@ -1,31 +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. -# -source.. = src/ -output.. = bin/ -bin.includes = META-INF/,\ - .,\ - plugin.xml,\ - lib/eventTrackerClient-2.7.0.jar,\ - lib/commons-logging-1.0.4.jar -src.includes = src/,\ - plugin.xml,\ - lib/,\ - build.properties,\ - bin/,\ - META-INF/ diff --git a/qpid/java/broker-plugins/experimental/info/build.xml b/qpid/java/broker-plugins/experimental/info/build.xml deleted file mode 100644 index 8f91adc5ff..0000000000 --- a/qpid/java/broker-plugins/experimental/info/build.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Activator.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Activator.java deleted file mode 100644 index 037fad0979..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Activator.java +++ /dev/null @@ -1,212 +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.qpid.info; - -import org.osgi.framework.BundleActivator; -import org.osgi.framework.BundleContext; - -import org.apache.qpid.info.util.HttpPoster; -import org.apache.qpid.info.util.IniFileReader; -import org.apache.qpid.info.util.SoapClient; - -import java.io.File; -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.Properties; - -/** The Activator class for the OSGI info service */ -public class Activator implements BundleActivator -{ - - private final List _soapPropList = Arrays.asList("soap.hostname", - "soap.port", "soap.path", "soap.action", "soap.envelope"); - - private final List _httpPropList = Arrays.asList("http.url", - "http.envelope"); - - private InfoServiceImpl _service = null; - - private BundleContext _ctx = null; - - /** - * Start bundle method - * - * @param ctx the bundle context - */ - public void start(BundleContext ctx) throws Exception - { - if (null != ctx) - { - _ctx = ctx; - _service = new InfoServiceImpl(); - ctx.registerService(InfoService.class.getName(), _service, null); - - new Thread(new Runnable() - { - public void run() - { - sendInfo("STARTUP"); - } - }).start(); - } - } - - /** - * Stop the bundle method - * - * @param ctx the bundle context - */ - public void stop(BundleContext ctx) throws Exception - { - sendInfo("SHUTDOWN"); - } - - /** - * Sends the information message - * - * @param action label that identifies if we are starting up or shutting down - */ - private void sendInfo(String action) - { - if ((null == _ctx) && (null == _service)) - { - // invalid state - return; - } - - IniFileReader ifr = new IniFileReader(); - try - { - String QPID_HOME = System.getProperty("QPID_HOME"); - String cfgFilePath = QPID_HOME + File.separator + "etc" - + File.separator + "qpidinfo.ini"; - ifr.load(cfgFilePath); - } - catch (Throwable ex) - { - // drop everything to be silent - return; - } - - // Only send Messages if we have some sections. - if (ifr.getSections().size() != 0) - { - Info> info = _service.invoke(action); - String protocol = ifr.getSections().get("").getProperty("protocol"); - sendMessages(protocol, ifr, info); - } - } - - /** - * Sends all the messages configured in the properties file - * - * @param protocol indicates what protocol to be used: http and soap implemented - * for now - * @param ifr an instance of IniFileReader class - * @param info an instance of an Info object, encapsulating the information - * we want to send - */ - private void sendMessages(String protocol, IniFileReader ifr, - Info> info) - { - if (null != protocol) - { - // Set the global properties first (as they are the defaults) - Properties defaultProps = ifr.getSections().get(""); - if (protocol.toLowerCase().startsWith("http")) - { - for (String section : ifr.getSections().keySet()) - { - // Skip the defaults - if (section.equals("")) - { - continue; - } - Properties props = new Properties(); - props.putAll(defaultProps); - props.putAll(ifr.getSections().get(section)); - if (isValid(protocol, props)) - { - new HttpPoster(props, info.toXML()).run(); - } - } - - } - else if (protocol.toLowerCase().startsWith("soap")) - { - for (String section : ifr.getSections().keySet()) - { - Properties props = new Properties(); - props.putAll(defaultProps); - props.putAll(ifr.getSections().get(section)); - if (isValid(protocol, props)) - { - new SoapClient(info.toMap(), props).sendSOAPMessage(); - } - } - } - } - } - - /** - * Checks if the properties for a specified protocol are valid - * - * @param protocol String representing the protocol - * @param props The properties associate with the specified protocol - * @return boolean - */ - private boolean isValid(String protocol, Properties props) - { - if (null == protocol) - { - return false; - } - String value = ""; - if (protocol.toLowerCase().startsWith("http")) - { - for (String prop : _httpPropList) - { - if (null == props.get(prop)) - { - return false; - } - } - return true; - } - - if (protocol.toLowerCase().startsWith("soap")) - { - for (String prop : _soapPropList) - { - value = props.getProperty(prop); - if (null == value) - { - return false; - } - } - return true; - } - return false; - } -} // end class - diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java deleted file mode 100644 index 3b03e2d680..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/AppInfo.java +++ /dev/null @@ -1,96 +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.qpid.info; - -import org.apache.qpid.common.QpidProperties; -import org.apache.qpid.server.configuration.ServerConfiguration; -import org.apache.qpid.server.registry.ApplicationRegistry; - -import java.util.Arrays; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Properties; -import java.util.TreeMap; - -/** AppInfo class is gathering application specific information */ -public class AppInfo -{ - - private static final List appProps = Arrays.asList("QPID_HOME", - "QPID_WORK"); - - private static Map appInfoMap = new TreeMap(); - - private AppInfo() - { - } - - /** - * getInfo method retrieves a key-value map for specific application properties - * - * @return Map - */ - public static Map getInfo() - { - - // Gather the selected app props - Properties sysprops = System.getProperties(); - String propName; - for (Iterator> it = sysprops.entrySet() - .iterator(); it.hasNext();) - { - Entry en = it.next(); - propName = en.getKey().toString(); - if (appProps.indexOf(propName) >= 0) - { - appInfoMap.put(propName, en.getValue().toString()); - } - } - - ServerConfiguration sc; - try - { - sc = ApplicationRegistry.getInstance().getConfiguration(); - if (null != sc) - { - appInfoMap.put("jmxport", sc.getJMXPortRegistryServer() + ""); - appInfoMap.put("port", sc.getPorts().toString()); - appInfoMap.put("version", QpidProperties.getReleaseVersion()); - appInfoMap.put("vhosts", "standalone"); - appInfoMap.put("KeystorePath", sc.getConnectorKeyStorePath()); - appInfoMap.put("PluginDirectory", sc.getPluginDirectory()); - appInfoMap.put("KeyManagerFactoryAlgorithm", sc.getConnectorKeyManagerFactoryAlgorithm()); - appInfoMap.put("QpidWork", sc.getQpidWork()); - appInfoMap.put("Bind", sc.getBind()); - } - } - catch (Exception e) - { - // drop everything to be silent - } - return appInfoMap; - - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Info.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Info.java deleted file mode 100644 index 2fb9382526..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/Info.java +++ /dev/null @@ -1,143 +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. - * - */ - -/** - * - * @author sorin - * - * Info object - */ - -package org.apache.qpid.info; - -import org.apache.qpid.info.util.XMLWriter; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; -import java.util.Properties; - -/** - * The Info class encapsulates all the information we are collecting - * and it is able to render it in different data representations - */ -public class Info> -{ - private T _info; - - /** - * Constructor. - * - * @param info instantiates the object with a Map - */ - public Info(T info) - { - _info = info; - } - - @Override - public String toString() - { - String result = ""; - for (Iterator it = _info.keySet().iterator(); it.hasNext();) - { - String str = it.next(); - result += str + "=" + _info.get(str).toString() + "\n"; - } - return result; - } - - /** - * Renders Info map to a property object - * - * @return A Properties object representing the Info map - */ - public Properties toProps() - { - Properties props = new Properties(); - if (null == _info) - { - return null; - } - for (Iterator it = _info.keySet().iterator(); it.hasNext();) - { - String key = it.next(); - props.put(key, _info.get(key)); - } - return props; - } - - /** - * Renders Info map to a StringBuffer - * - * @return A StringBuffer object representing the Info map - */ - public StringBuffer toStringBuffer() - { - StringBuffer sb = new StringBuffer(); - for (Iterator it = _info.keySet().iterator(); it.hasNext();) - { - String str = it.next(); - sb.append(str + "=" + _info.get(str).toString() + "\n"); - } - return sb; - } - - /** - * Renders Info map to a StringBuffer containing an XML string - * - * @return A StringBuffer object containing an XML representation of the Info map - */ - public StringBuffer toXML() - { - XMLWriter xw = new XMLWriter(new StringBuffer()); - xw.writeXMLHeader(); - Map attr = new HashMap(); - xw.writeOpenTag("qpidinfo", attr); - String key; - for (Iterator it = _info.keySet().iterator(); it.hasNext();) - { - attr.clear(); - key = it.next(); - xw.writeTag(key, attr, _info.get(key).toString()); - } - xw.writeCloseTag("qpidinfo"); - return xw.getXML(); - } - - /** - * Renders Info map to a HashMap - * - * @return A HashMap object representing the Info map - */ - public HashMap toMap() - { - String key; - HashMap infoMap = new HashMap(); - for (Iterator it = _info.keySet().iterator(); it.hasNext();) - { - key = it.next(); - infoMap.put(key, _info.get(key).toString()); - } - return infoMap; - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoService.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoService.java deleted file mode 100644 index 2804dfb1b4..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoService.java +++ /dev/null @@ -1,30 +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. - * - */ - - /** - * Interface exposing the service methods - */ - package org.apache.qpid.info; - - public interface InfoService - { - public Info invoke(String action); - } diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoServiceImpl.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoServiceImpl.java deleted file mode 100644 index 08caa794fa..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/InfoServiceImpl.java +++ /dev/null @@ -1,66 +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. - * - */ - -/** - * - * @author sorin - * - * Implementation for Info service - */ - -package org.apache.qpid.info; - -import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Map; -import java.util.SortedMap; -import java.util.TreeMap; - - -public class InfoServiceImpl implements InfoService -{ - - private SortedMap infoMap = new TreeMap(); - - /** - * invoke method collects all the information from System and Application - * and encapsulates them in an Info object - * @return An instance of an Info object - */ - public Info> invoke(String action) - { - // Record the action (STARTUP/SHUTDOWN) - infoMap.put("action",action); - - // Record the current time stamp - SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSZ"); - infoMap.put("time", sdf.format(Calendar.getInstance().getTime())); - - // Add the system specific properties - infoMap.putAll(SystemInfo.getInfo()); - - // Add the application specific properties - infoMap.putAll(AppInfo.getInfo()); - - return new Info>(infoMap); - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/SystemInfo.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/SystemInfo.java deleted file mode 100644 index cf370d7384..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/SystemInfo.java +++ /dev/null @@ -1,95 +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.qpid.info; - -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.util.Arrays; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Map.Entry; -import java.util.Properties; -import java.util.TreeMap; - -/** - * Collector for system specific information - */ -public class SystemInfo -{ - - private static Map sysInfoMap = new TreeMap(); - - private static final List sysProps = Arrays.asList( - "java.class.path", "java.home", "java.vm.name", "java.vm.vendor", - "java.vm.version", "java.class.version", "java.runtime.version", - "os.arch", "os.name", "os.version", "sun.arch.data.model", - "user.home", "user.dir", "user.name", "user.timezone"); - - private SystemInfo() - { - } - - /** - * getInfo collects all the properties specified in sysprops list - * @return A Map - */ - public static Map getInfo() - { - - // Get the hostname - try - { - InetAddress addr = InetAddress.getLocalHost(); - String hostname = addr.getHostName(); - sysInfoMap.put("hostname", hostname); - sysInfoMap.put("ip", addr.getHostAddress()); - } - catch (UnknownHostException e) - { - // drop everything to be silent - } - // Get the runtime info - sysInfoMap.put("CPUCores", Runtime.getRuntime().availableProcessors() - + ""); - sysInfoMap.put("Maximum_Memory", Runtime.getRuntime().maxMemory() + ""); - sysInfoMap.put("Free_Memory", Runtime.getRuntime().freeMemory() + ""); - - // Gather the selected system props - Properties sysprops = System.getProperties(); - String propName; - for (Iterator> it = sysprops.entrySet() - .iterator(); it.hasNext();) - { - Entry en = it.next(); - propName = en.getKey().toString(); - if (sysProps.indexOf(propName) >= 0) - { - sysInfoMap.put(propName, en.getValue().toString()); - } - } - - return sysInfoMap; - - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/HttpPoster.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/HttpPoster.java deleted file mode 100644 index 3526e01374..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/HttpPoster.java +++ /dev/null @@ -1,130 +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.qpid.info.util; - -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.net.InetAddress; -import java.net.URL; -import java.net.URLConnection; -import java.net.UnknownHostException; -import java.util.ArrayList; -import java.util.Hashtable; -import java.util.Iterator; -import java.util.List; -import java.util.Properties; - -/** - * - * An simple Http post class for qpid info service - */ -public class HttpPoster implements Runnable -{ - private final String _url; - - private final Hashtable _header; - - private final List _response = new ArrayList(); - - private final StringBuffer _buf; - - /** - * Constructor - * - * @param props Properties containing the URL - * @param buf Buffer containing the message to be posted - */ - public HttpPoster(Properties props, StringBuffer buf) - { - _buf = buf; - if (null != props) - { - _url = props.getProperty("http.url"); - _header = new Hashtable(); - try - { - String hostname = InetAddress.getLocalHost().getHostName(); - _header.put("hostname", hostname); - } - catch (UnknownHostException e) - { - // Silently ignoring the error ;) - } - } - else - { - _url = null; - _header = null; - } - } - - /** Posts the message from the _buf StringBuffer to the http server */ - public void run() - { - if (null == _url) - { - return; - } - String line; - URL urlDest; - URLConnection urlConn; - try - { - urlDest = new URL(_url); - urlConn = urlDest.openConnection(); - urlConn.setDoOutput(true); - urlConn.setUseCaches(false); - for (Iterator it = _header.keySet().iterator(); it.hasNext();) - { - String prop = it.next(); - urlConn.setRequestProperty(prop, _header.get(prop)); - } - OutputStreamWriter wr = - new OutputStreamWriter(urlConn.getOutputStream()); - wr.write(_buf.toString()); - wr.flush(); - // Get the response - BufferedReader rd = new BufferedReader(new InputStreamReader( - urlConn.getInputStream())); - while ((line = rd.readLine()) != null) - { - _response.add(line); - } - } - catch (Exception ex) - { - // Silently ignoring the error ;) - } - } - - /** - * Retrieves the response from the http server - * - * @return List response received from the http server - */ - public List get_response() - { - return _response; - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/IniFileReader.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/IniFileReader.java deleted file mode 100644 index 60a025d322..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/IniFileReader.java +++ /dev/null @@ -1,193 +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.qpid.info.util; - -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; -import java.util.Properties; - -/** - * This class is simple implementation of an ini file reader. It expects a - * file with the following structure: - * - * ; global values, can be overwritten in sections - * key1=value1 - * key2=value2 - * - * [Section1] - * key1=value1_new ; overwriting the global key1 - * key3=value3 - * key4=value4 - * - * [Section2] - * key5=value5 - * key6=value6 - * key7=value7 - * - * Note: Commentaries are preceded by ; or # and are supported throughout - * A commentary line at the end of section is interpreted as - * a section end marker - * - * A structure (section name, associated properties) - * is generated as a result of processing the ini file. - */ -public class IniFileReader -{ - private final Map _sections; - - private final String COMMENT_SEMICOLON = ";"; - - private final String COMMENT_HASH = "#"; - - enum State - { - IN_SECTION, OFF_SECTION, GLOBAL - } - - /* - * IniFileReader constructor - */ - - public IniFileReader() - { - _sections = new HashMap(); - } - - /** - * Cleans up the after comments or the empty spaces/tabs surrounding the given string - * - * @param str The String to be cleaned - * - * @return String Cleanup Version - */ - private String cleanUp(String str) - { - if (str.contains(COMMENT_SEMICOLON)) - { - str = str.substring(0, str.indexOf(COMMENT_SEMICOLON)); - } - if (str.contains(COMMENT_HASH)) - { - str = str.substring(0, str.indexOf(COMMENT_HASH)); - } - return str.trim(); - } - - /** - * Loads and parses the ini file with the full path specified in the argument - * - * @param fileName Full path to the ini file - * - * @throws IllegalArgumentException If the file cannot be processed - */ - public void load(String fileName) throws IllegalArgumentException - { - if (!new File(fileName).isFile()) - { - throw new IllegalArgumentException("File: " + fileName + " does not exist or cannot be read."); - } - State state = State.GLOBAL; - String line; - Properties sectionProps = new Properties(); - String sectionName = ""; - try - { - BufferedReader in = new BufferedReader(new FileReader(fileName)); - while ((line = in.readLine()) != null) - { - String str = cleanUp(line); - - // Did we get a section header? - if (str.startsWith("[")) - { - if (!str.endsWith("]")) - { - // Index of 1 to skip '[' - throw new IllegalArgumentException(str.substring(1) - + " is not closed"); - } - - // We encountered a new section header - if (state != State.IN_SECTION) - { - _sections.put(sectionName, sectionProps); - sectionProps = new Properties(); - sectionName = str.replace("[", "").replace("]", "") - .trim(); - state = State.IN_SECTION; - } - } - - // Any other line tested separately, ignore if out of a section - // and add if in section - if (str.length() == 0) - { - // We encountered a commented or an empty line, both cases - // mean we are off the section - if (state == State.IN_SECTION) - { - _sections.put(sectionName, sectionProps); - state = State.OFF_SECTION; - } - } - else - { - // proper line, add it to the props - if (state != State.OFF_SECTION) - { - if (str.contains("=")) - { - int ix = str.indexOf("="); - sectionProps.put(str.substring(0, ix).trim(), str - .substring(ix + 1).trim()); - } - } - } - } - in.close(); - } - catch (IOException e) - { - _sections.clear(); - return; - } - if (state != State.OFF_SECTION) - { - _sections.put(sectionName, sectionProps); - } - } - - /** - * Getter for the Sections Map - * - * @return Map The parsed content of the ini file in this structure - */ - public Map getSections() - { - return _sections; - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/SoapClient.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/SoapClient.java deleted file mode 100644 index 0f66085fc3..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/SoapClient.java +++ /dev/null @@ -1,155 +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. - * - */ -/** - * - * @author sorin - * - * An simple SOAP client for qpid info service - */ -package org.apache.qpid.info.util; - -import java.io.BufferedWriter; -import java.io.OutputStreamWriter; -import java.net.InetAddress; -import java.net.Socket; -import java.util.HashMap; -import java.util.Properties; - -public class SoapClient -{ - - private final StringBuffer _xmlData; - - private final Properties _destprops; - - private final String _hostname; - - private final int _port; - - private final String _urlpath; - - private final String _soapenvelope; - - private final String _soapaction; - - private final StringBuffer _soapMessage = new StringBuffer(); - - - public SoapClient(HashMap map, Properties destprops) - { - _destprops = destprops; - _hostname = (String) _destprops.get("soap.hostname"); - _port = Integer.parseInt((String) _destprops.get("soap.port")); - _urlpath = (String) destprops.get("soap.path"); - _soapenvelope = (String) destprops.get("soap.envelope"); - _soapaction = (String) destprops.get("soap.action"); - _xmlData = new StringBuffer(_soapenvelope); - replaceVariables(map); - } - - public StringBuffer getXMLData() - { - return _xmlData; - } - - public StringBuffer getSoapMessage() { - return _soapMessage; - } - - public String getSoapEnvelope() { - return _soapenvelope; - } - - /** - * Clears and sets new XML data - * @param sb the new data to set - */ - public void setXMLData(StringBuffer sb) - { - _xmlData.delete(0, _xmlData.length()); - _xmlData.append(sb); - } - - - public void replaceVariables(HashMap vars) - { - int ix = 0; - for (String var : vars.keySet()) - { - while ((ix = _xmlData.indexOf("@" + var.toUpperCase())) >= 0) - { - _xmlData.replace(ix, ix + 1 + var.length(), vars.get(var)); - } - } - } - - public void replaceVariables(Properties varProps) - { - if (varProps == null) - { - return; - } - int ix = 0; - for (Object var : varProps.keySet()) - { - while ((ix = _xmlData.indexOf("@" + var)) >= 0) - { - _xmlData.replace(ix, ix + 1 + var.toString().length(), varProps - .get(var).toString()); - } - } - } - - - public void sendSOAPMessage() - { - - try - { - InetAddress addr = InetAddress.getByName(_hostname); - Socket sock = new Socket(addr, _port); - StringBuffer sb = new StringBuffer(); - sb.append("POST " + _urlpath + " HTTP/1.1\r\n"); - sb.append("Host: " + _hostname + ":" + _port + "\r\n"); - sb.append("Content-Length: " + _xmlData.length() + "\r\n"); - sb.append("Content-Type: text/xml; charset=\"utf-8\"\r\n"); - sb.append("SOAPAction: \"urn:"+ _soapaction +"\"\r\n"); - sb.append("User-Agent: Axis2\r\n"); - sb.append("\r\n"); - // Send header - BufferedWriter wr = new BufferedWriter(new OutputStreamWriter(sock - .getOutputStream(), "UTF-8")); - synchronized(_soapMessage) { - _soapMessage.setLength(0); - _soapMessage.append(sb); - _soapMessage.append(_xmlData); - } - // Send data - wr.write(_soapMessage.toString()); - wr.flush(); - wr.close(); - - } catch (Exception ex) - { - // Drop any exception - } - } -} diff --git a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/XMLWriter.java b/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/XMLWriter.java deleted file mode 100644 index 6bea9d2ac0..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/main/java/org/apache/qpid/info/util/XMLWriter.java +++ /dev/null @@ -1,102 +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.qpid.info.util; - -import java.util.Map; - -/** - * - * Naive and rudimentary XML writer - * It has methods to write the header, a tag with attributes - * and values. It escapes the XML special characters - */ -public class XMLWriter -{ - - private final StringBuffer _sb; - - private final String INDENT = " "; - - public XMLWriter(StringBuffer sb) - { - _sb = sb; - } - - public StringBuffer getXML() - { - return _sb; - } - - public void writeXMLHeader() - { - _sb.append("\n"); - } - - public void writeTag(String tagName, Map attributes, - String value) - { - writeOpenTag(tagName, attributes); - writeValue(value); - writeCloseTag(tagName); - } - - public void writeOpenTag(String tagName, Map attributes) - { - _sb.append("<").append(tagName); - if (null == attributes) - { - _sb.append(">\n"); - return; - } - for (String key : attributes.keySet()) - { - _sb.append(" ").append(key + "=\"" + attributes.get(key) + "\""); - } - _sb.append(">\n"); - - } - - private void writeValue(String val) - { - _sb.append(INDENT).append(escapeXML(val) + "\n"); - } - - public void writeCloseTag(String tagName) - { - _sb.append("\n"); - } - - private String escapeXML(String xmlStr) - { - if (null == xmlStr) - { - return null; - } - xmlStr = xmlStr.replaceAll("&", "&"); - xmlStr = xmlStr.replace("<", "<"); - xmlStr = xmlStr.replace(">", ">"); - xmlStr = xmlStr.replace("\"", """); - xmlStr = xmlStr.replace("'", "'"); - return xmlStr; - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/systest/InfoPluginTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/systest/InfoPluginTest.java deleted file mode 100644 index 9f38ab253d..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/systest/InfoPluginTest.java +++ /dev/null @@ -1,277 +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.qpid.info.systest; - -import org.apache.qpid.test.utils.QpidBrokerTestCase; - -import java.io.BufferedReader; -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStreamReader; -import java.net.ServerSocket; -import java.net.Socket; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.CountDownLatch; -import java.util.concurrent.TimeUnit; - -public class InfoPluginTest extends QpidBrokerTestCase -{ - private String QPID_HOME = null; - - private ServerSocket _server = null; - - private int _port; - - private static final String CR = System.getProperty("line.separator"); - - private static final String FS = File.separator; - - private final String _cfgRelPath = "etc" + FS + "qpidinfo.ini"; - - private File _tmpCfgFile; - - private final String _soapEnvelopeHead = ""; - - private final String _soapEnvelopeTail = ""; - - private String _soapMessage1 = "@ACTION" + "-" + "@VERSION"; - - private String _soapMessage2 = "@VERSION" + "-" + "@ACTION"; - - private CountDownLatch _latch = new CountDownLatch(2); - - private final List> _recv = new ArrayList>(); - - private Thread _socketAcceptor; - - public void setUp() throws Exception - { - QPID_HOME = System.getProperty("QPID_HOME"); - if (QPID_HOME != null) - { - System.out.println("QPID_HOME=" + QPID_HOME); - } - else - { - fail("QPID_HOME not set"); - } - - startSoapServer(); - // Must start the server first to identify a free port. - createConfigFile(); - } - - public void tearDown() throws Exception - { - System.out.println("*** Stopping socket server..."); - _socketAcceptor.join(2000); - - System.out.println("*** Deleting the config file..."); - if (_tmpCfgFile.isFile()) - { - _tmpCfgFile.delete(); - } - super.tearDown(); - } - - private void createConfigFile() - { - try - { - _tmpCfgFile = new File(QPID_HOME + FS + _cfgRelPath); - _tmpCfgFile.deleteOnExit(); - if (_tmpCfgFile.isFile()) - { - _tmpCfgFile.delete(); - } - assertTrue("Unable to create file.", _tmpCfgFile.createNewFile()); - assertTrue(_tmpCfgFile.isFile()); - FileWriter fwriter = new FileWriter(_tmpCfgFile); - BufferedWriter writer = new BufferedWriter(fwriter); - writer.write("protocol=soap"); - writer.write(CR); - writer.write("soap.hostname=localhost"); - writer.write(CR); - writer.write("soap.port=" + _port); - writer.write(CR); - writer.write(CR); - writer.write("[MSG1]"); - writer.write(CR); - writer.write("soap.path=/info1"); - writer.write(CR); - writer.write("soap.action=submitinfo1"); - writer.write(CR); - writer.write("soap.envelope=" + _soapEnvelopeHead + _soapMessage1 - + _soapEnvelopeTail); - writer.write(CR); - writer.write(CR); - writer.write("[MSG2]"); - writer.write(CR); - writer.write("soap.path=/info2"); - writer.write(CR); - writer.write("soap.action=submitinfo2"); - writer.write(CR); - writer.write("soap.envelope=" + _soapEnvelopeHead + _soapMessage2 - + _soapEnvelopeTail); - writer.write(CR); - writer.write(CR); - writer.close(); - assertTrue("Config file size is zero", _tmpCfgFile.length() > 0); - } - catch (IOException e) - { - fail("Unable to create the qpidinfo.properties due to: " - + e.getMessage()); - } - } - - private void startSoapServer() throws Exception - { - try - { - _server = new ServerSocket(0); - _port = _server.getLocalPort(); - assertTrue("Server not yet bound.", _port != -1); - - assertNotNull("SocketServer is null", _server); - } - catch (Exception ex) - { - fail("Unable to start the socket server due to: " + ex.getMessage()); - } - - _socketAcceptor = new Thread() - { - public void run() - { - while (true) - { - try - { - Socket socket = _server.accept(); - new ConnectionHandler(socket); - } - catch (IOException e) - { - fail("Error opening the socket in accept mode"); - } - } - } - }; - _socketAcceptor.start(); - System.out.println("*** Socket server started..."); - } - - class ConnectionHandler implements Runnable - { - private Socket _socket; - - public ConnectionHandler(Socket socket) - { - _socket = socket; - Thread t = new Thread(this); - t.start(); - } - - public void run() - { - System.out.println("*** Connection handler running..."); - List buf = new ArrayList(); - String line; - try - { - BufferedReader br = new BufferedReader(new InputStreamReader( - _socket.getInputStream())); - assertNotNull(br); - while ((line = br.readLine()) != null) - { - buf.add(line); - } - br.close(); - System.out.println("*** Received buffer: " + buf); - synchronized (_recv) - { - _recv.add(buf); - } - - System.out.println("*** Latch countdown"); - _latch.countDown(); - } - catch (Exception ex) - { - ex.printStackTrace(); - fail("Exception while reading from the socket"); - } - - } - - } - - public void testInfoPlugin() throws Exception - { - //Start the broker - super.setUp(); - if (!_latch.await(10, TimeUnit.SECONDS)) - { - fail("Timeout awaiting for the latch, upon startup"); - } - - validateResponses("STARTUP"); - - _recv.clear(); - _latch = new CountDownLatch(2); - - stopBroker(); - - if (!_latch.await(10, TimeUnit.SECONDS)) - { - fail("Timeout awaiting for the latch, upon shutdown"); - } - - validateResponses("SHUTDOWN"); - - } - - /** - * Check the responses from the server to ensure they contain the required messages. - * @param action String to match for the SHUTDOWN or STARTUP action. - */ - private void validateResponses(String action) - { - assertTrue("Received less than 2 messages", _recv.size() > 1); - - // Message 1 - assertTrue("Message does not contain Host: localhost:" + _port + "\n" + _recv.get(0), _recv.get(0).contains("Host: localhost:" + _port)); - assertTrue("Message does not contain: User-Agent: Axis2 " + "\n" + _recv.get(0), _recv.get(0).contains("User-Agent: Axis2")); - assertTrue("Message does not contain: SOAPAction: \"urn:submitinfo\"" + "\n" + _recv.get(0).get(4), _recv.get(0).get(4).startsWith("SOAPAction: \"urn:submitinfo")); - assertTrue("Message does not contain '" + action + "' in the soap envelope" + "\n" + _recv.get(0).get(7), _recv.get(0).get(7).contains(action)); - - // Message 2 - assertTrue("Message does not contain Host: localhost:" + _port + "\n" + _recv.get(1), _recv.get(1).contains("Host: localhost:" + _port)); - assertTrue("Message does not contain: User-Agent: Axis2 " + "\n" + _recv.get(1), _recv.get(1).contains("User-Agent: Axis2")); - assertTrue("Message does not contain: SOAPAction: \"urn:submitinfo\"" + "\n" + _recv.get(1).get(4), _recv.get(1).get(4).startsWith("SOAPAction: \"urn:submitinfo")); - assertTrue("Message does not contain '" + action + "' in the soap envelope" + "\n" + _recv.get(1).get(7), _recv.get(1).get(7).contains(action)); - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/HttpPosterTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/HttpPosterTest.java deleted file mode 100644 index 0adb543fd4..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/HttpPosterTest.java +++ /dev/null @@ -1,107 +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.qpid.info.test; - -import junit.framework.TestCase; -import org.mortbay.jetty.testing.ServletTester; - -import org.apache.qpid.info.util.HttpPoster; - -import java.util.List; -import java.util.Properties; - -/* - * This test verifies that the plugin posts correctly to a webserver - * We use an embedded jetty container to mimic the webserver - */ -public class HttpPosterTest extends TestCase -{ - - private ServletTester tester; - - private String baseURL; - - private final String contextPath = "/info"; - - /* - * This method generates a dummy HttpPoster with a dummy body containing a - * single line. The url we are posting to can be controlled by the parameter - * url - * - * @param url - */ - private HttpPoster getHttpPoster(String url) - { - StringBuffer sb = new StringBuffer("test=TEST"); - Properties props = new Properties(); - props.put("http.url", url); - return new HttpPoster(props, sb); - } - - /* - * (non-Javadoc) - * - * @see junit.framework.TestCase#setUp() - */ - protected void setUp() throws Exception - { - tester = new ServletTester(); - tester.setContextPath("/"); - tester.addServlet(InfoServlet.class, contextPath); - baseURL = tester.createSocketConnector(true); - tester.start(); - } - - /* - * (non-Javadoc) - * - * @see junit.framework.TestCase#tearDown() - */ - protected void tearDown() throws Exception - { - super.tearDown(); - tester.stop(); - } - - /* - * This test is posting a string to an embedded Jetty Servlet and captures - * the response message. If the servlet receives the message ok, it will - * print Ok. A failure test is following where we post to a non-existent URL - */ - public void testHttpPoster() throws Exception - { - // Test HttpPoster posts correctly to the servlet - HttpPoster hp = getHttpPoster(baseURL + contextPath); - assertNotNull(hp); - hp.run(); - List response = hp.get_response(); - assertTrue(response.size() > 0); - assertEquals("OK
", response.get(0).toString()); - - // Failure Test - hp = getHttpPoster("http://localhost/nonexistent"); - hp.run(); - response = hp.get_response(); - assertTrue(response.size() == 0); - - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServiceImplTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServiceImplTest.java deleted file mode 100644 index 1e0b6ccccc..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServiceImplTest.java +++ /dev/null @@ -1,63 +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.qpid.info.test; - -import junit.framework.TestCase; - -import org.apache.qpid.info.Info; -import org.apache.qpid.info.InfoServiceImpl; - -import java.util.Arrays; -import java.util.List; -import java.util.Map; -import java.util.Properties; - -/* - * This test verifies the invoke() method for the info service making sure that the parameters are returned - */ -public class InfoServiceImplTest extends TestCase -{ - - private InfoServiceImpl _isi = null; - - @SuppressWarnings("unchecked") - public void testInvoke() - { - _isi = new InfoServiceImpl(); - assertNotNull(_isi); - Info> info = (Info>) _isi - .invoke("START"); - assertNotNull(info); - Properties props = info.toProps(); - assertNotNull(props); - List infoProps = Arrays.asList("java.class.path", - "java.vm.name", "java.class.version", "os.arch", "os.name", - "os.version", "sun.arch.data.model", "user.dir", "user.name", - "user.timezone"); - for (String tag : infoProps) - { - assertNotNull("Info.toProps() does not have the property: " + tag, - props.getProperty(tag)); - } - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServlet.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServlet.java deleted file mode 100644 index 07fc371bad..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoServlet.java +++ /dev/null @@ -1,57 +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.qpid.info.test; - -import javax.servlet.GenericServlet; -import javax.servlet.ServletException; -import javax.servlet.ServletRequest; -import javax.servlet.ServletResponse; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.PrintWriter; - -/* - * This is a servlet used by the embedded Jetty to be able to receive http post - * from the info plugin - */ - -public class InfoServlet extends GenericServlet -{ - private static final long serialVersionUID = 1L; - - @Override - public void service(ServletRequest request, ServletResponse response) - throws ServletException, IOException - { - String line; - BufferedReader in = request.getReader(); - while ((line = in.readLine()) != null) - { - System.out.println(line); - } - response.setContentType("text/html"); - PrintWriter out = response.getWriter(); - out.println("OK
\n"); - System.out.println("ServletResponse: OK"); - } - -} \ No newline at end of file diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoTest.java deleted file mode 100644 index d154757058..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/InfoTest.java +++ /dev/null @@ -1,114 +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.qpid.info.test; - -import junit.framework.TestCase; - -import org.apache.qpid.info.Info; - -import java.util.HashMap; -import java.util.Properties; - -/* - * This test verifies the toString(), toProps(), toXML() and toStringBuffer() methods of the Info object - * - */ -public class InfoTest extends TestCase -{ - private HashMap _infoPayLoad = null; - - private Info> _info = null; - - protected void setUp() throws Exception - { - super.setUp(); - _infoPayLoad = new HashMap(); - _infoPayLoad.put("test", "Test"); - _info = new Info>(_infoPayLoad); - } - - /* - * Test the conversion toString() of the Info object - */ - public void testToString() - { - assertNotNull("toString() returned null", _info.toString()); - assertEquals("toString() did not return the proper string", - "test=Test\n", _info.toString()); - } - - /* - * Test the conversion toProps() of the Info object - */ - public void testToProps() - { - Properties props = new Properties(); - props.put("test", "Test"); - assertNotNull("toProperties() returned null", _info.toProps()); - assertEquals("toProperties not returned the proper object", props, _info - .toProps()); - } - - /* - * Test the conversion toStringBuffer() of the Info object - */ - public void testToStringBuffer() - { - StringBuffer sb = new StringBuffer("test=Test\n"); - assertNotNull(_info.toStringBuffer()); - assertEquals(sb.toString(), _info.toStringBuffer().toString()); - } - - /* - * Test conversion toXML() of the info object - */ - public void testToXML() - { - String INDENT = " "; - StringBuffer sb = new StringBuffer(); - sb.append("\n"); - sb.append("\n"); - sb.append("\n"); - sb.append(INDENT + "Test\n"); - sb.append("\n"); - sb.append("\n"); - assertEquals("toString() does not return the proper string", _info - .toXML().toString(), sb.toString()); - } - - /* - * Test the conversion toMap() of the Info object - */ - public void testToMap() - { - HashMap thm = _info.toMap(); - assertFalse("toMap() returned empty map", thm.isEmpty()); - assertEquals("testToMap did not returned 1", 1, thm.size()); - assertTrue("toMap() returned a map not containing expected key: test", - thm.containsKey("test")); - assertTrue( - "toMap() returned a map not containing the value for key test: Test", - thm.containsValue("Test")); - - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/IniFileReaderTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/IniFileReaderTest.java deleted file mode 100644 index bae1d7bd2a..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/IniFileReaderTest.java +++ /dev/null @@ -1,137 +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.qpid.info.test; - -import junit.framework.TestCase; - -import org.apache.qpid.info.util.IniFileReader; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileWriter; -import java.io.IOException; -import java.util.Map; -import java.util.Properties; - -/** - * Test the Loading of the ini file reader by first writing - * out a correct ini file. - */ -public class IniFileReaderTest extends TestCase -{ - - public void testLoad() - { - IniFileReader ifr = new IniFileReader(); - File iniFile = null; - try - { - iniFile = File.createTempFile("temp", "ini"); - iniFile.deleteOnExit(); - BufferedWriter writer = new BufferedWriter(new FileWriter(iniFile)); - writer.write("# Global Comment1\n"); - writer.write("globalprop1=globalval1\n"); - writer.write("globalprop2=globalval2\n"); - writer.write("\n"); - writer.write("[Section1] # Comment on Section\n"); - writer.write("key1=val1 # Comment on Value\n"); - writer.write("key2=val2\n"); - writer.write("\n"); - writer.write("#Section2 Comment\n"); - writer.write("[Section2]\n"); - writer.write("key3=val3\n"); - writer.write("key4=val4\n"); - writer.write("key5=val5\n"); - writer.write("\n"); - writer.write("[Section3]\n"); - writer.write("key6=val6\n"); - writer.write("key7=val7\n"); - writer.write("\n"); - writer.close(); - } - catch (IOException e) - { - e.printStackTrace(); - fail("Unable to create temporary File"); - } - ifr.load(iniFile.getAbsolutePath()); - Map sections = ifr.getSections(); - assertNotNull("Sections not null", sections); - assertEquals("Have 4 sections", sections.keySet().size(), 4); - assertTrue("Get globalprop1", sections.get("").getProperty("globalprop1").equals("globalval1")); - assertTrue("Get globalprop2", sections.get("").getProperty("globalprop2").equals("globalval2")); - assertNotNull("Section1 not null", sections.get("Section1")); - assertEquals("Section1 has 2 properties", sections.get("Section1").size(), 2); - assertTrue("Section1 key1 has val1", sections.get("Section1").getProperty("key1").equals("val1")); - assertTrue("Section1 key2 has val2", sections.get("Section1").getProperty("key2").equals("val2")); - assertEquals("Section2 has 3 properties", sections.get("Section2").size(), 3); - assertTrue("Section2 key3 has val3", sections.get("Section2").getProperty("key3").equals("val3")); - assertTrue("Section2 key4 has val4", sections.get("Section2").getProperty("key4").equals("val4")); - assertTrue("Section2 key5 has val5", sections.get("Section2").getProperty("key5").equals("val5")); - assertEquals("Section3 has 2 properties", sections.get("Section3").size(), 2); - assertTrue("Section3 key6 has val6", sections.get("Section3").getProperty("key6").equals("val6")); - assertTrue("Section3 key7 has val7", sections.get("Section3").getProperty("key7").equals("val7")); - } - - /** - * Test to ensure that the loading of a file with an unclosed section header - * fails to parse. - * - * Section needs to be fully enclosed in square brackets '[]' - */ - public void testIncompleteSection1Load() - { - IniFileReader ifr = new IniFileReader(); - File iniFile = null; - try - { - iniFile = File.createTempFile(getName(), "ini"); - iniFile.deleteOnExit(); - BufferedWriter writer = new BufferedWriter(new FileWriter(iniFile)); - writer.write("# Global Comment1\n"); - writer.write("globalprop1=globalval1\n"); - writer.write("globalprop2=globalval2\n"); - writer.write("\n"); - writer.write("[Section1\n"); // Note '[Section1' not complete - writer.write("key1=val1\n"); - writer.write("key2=val2\n"); - writer.write("\n"); - writer.close(); - } - catch (IOException e) - { - e.printStackTrace(); - fail("Unable to create temporary File"); - } - try - { - ifr.load(iniFile.getAbsolutePath()); - fail("File should fail to parse"); - } - catch (IllegalArgumentException iae) - { - assertEquals("Incorrect Exception", "Section1 is not closed", iae.getMessage()); - } - - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SoapClientTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SoapClientTest.java deleted file mode 100644 index ffb7a910b8..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SoapClientTest.java +++ /dev/null @@ -1,209 +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.qpid.info.test; - -import junit.framework.TestCase; - -import org.apache.qpid.info.util.SoapClient; - -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; -import java.net.ServerSocket; -import java.net.Socket; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Properties; - -public class SoapClientTest extends TestCase -{ - - private int _port; - - private final String _hostName = "localhost"; - - private final String _urlPath = "/testSoap"; - - private ServerSocket _server = null; - - /* - * Generate a soap client from a custom URL, hostname, port and soap context - * path to be derived - */ - private SoapClient getSoapClient() - { - Properties destprops = new Properties(); - destprops.setProperty("soap.hostname", _hostName); - destprops.setProperty("soap.port", _port + ""); - destprops.setProperty("soap.urlpath", _urlPath); - destprops.setProperty("soap.envelope", "@IP"); - destprops.setProperty("soap.action", "send"); - HashMap soapmap = new HashMap(); - soapmap.put("IP", "127.0.0.1"); - return new SoapClient(soapmap, destprops); - } - - /* - * A connection handler class that verifies the correct message is received - * - */ - class ConnectionHandler implements Runnable - { - private Socket socket; - - public ConnectionHandler(Socket socket) - { - this.socket = socket; - Thread t = new Thread(this); - t.start(); - } - - public void run() - { - String line; - final List response = new ArrayList(); - try - { - BufferedReader br = new BufferedReader(new InputStreamReader( - socket.getInputStream())); - assertNotNull(br); - while ((line = br.readLine()) != null) - { - response.add(line); - } - br.close(); - } - catch (Exception ex) - { - ex.printStackTrace(); - fail("Exception while reading from the socket"); - } - assertTrue(response.contains("127.0.0.1")); - assertTrue(response.contains("SOAPAction: \"urn:send\"")); - assertTrue(response - .contains("Content-Type: text/xml; charset=\"utf-8\"")); - assertTrue(response.contains("Host: localhost" + _port)); - assertTrue(response.contains("User-Agent: Axis2")); - } - - } - - /* - * Test that the SOAP client sends the expected data to the socket We mock a - * simple SOAP envelope: 127.0.0.1 - */ - public void testSoapClient() throws Exception - { - // - try - { - _server = new ServerSocket(0); - _port = _server.getLocalPort(); - assertTrue("Server is not yet bound to a port", _port != -1); - assertNotNull(_server); - } - catch (Exception ex) - { - ex.printStackTrace(); - fail("Unable to start the socket server"); - } - - Thread _socketAcceptor = new Thread() - { - public void run() - { - try - { - Socket socket = _server.accept(); - new ConnectionHandler(socket); - } - catch (IOException e) - { - e.printStackTrace(); - } - } - }; - _socketAcceptor.start(); - // Sleep for 1 second to allow the ServerSocket readiness - Thread.sleep(1000); - SoapClient sc = getSoapClient(); - assertNotNull(sc); - sc.sendSOAPMessage(); - - _socketAcceptor.join(2000); - - assertFalse("Socket Acceptor not stopped.", _socketAcceptor.isAlive()); - } - - /** - * Test SoapClient correctly clears previously set values - */ - public void testSoapClientXMLData() - { - SoapClient sc = getSoapClient(); - - StringBuffer initial = new StringBuffer("Initial Value"); - - sc.setXMLData(initial); - - assertEquals("getXMLData is not set with initial value", - initial.toString(), sc.getXMLData().toString()); - - - StringBuffer sb = new StringBuffer(""); - sc.setXMLData(sb); - assertEquals(sc.getXMLData().length(), sb.length()); - assertEquals("getXMLData does not return the same StringBuffer set by setXMLData", - sb.toString(), sc.getXMLData().toString()); - } - - /** - * Test that variable replacement is performed on the soap.envelope. - * Create dummy soap message and validate that the variable have been replaced. - */ - public void testReplaceVariablesMap() - { - Properties props = new Properties(); - // Add dummy values as required to create a soap message - props.setProperty("soap.hostname", _hostName); - props.setProperty("soap.port", "0"); - props.setProperty("soap.urlpath", _urlPath); - props.setProperty("soap.action", "send"); - - /// The envelope is what we care about - props.setProperty("soap.envelope", "@IP:@PORT"); - HashMap soapmap = new HashMap(); - - /// Variables that should be replaced. - final String ip = "127.0.0.1"; - soapmap.put("IP", ip); - final String port = "8080"; - soapmap.put("PORT", port); - - SoapClient sc = new SoapClient(soapmap, props); - assertNotNull("SoapClient is null", sc); - - assertTrue("Replace variables did not work as expected", ("" + ip + ":" + port + "").equals(sc.getXMLData().toString())); - } - -} diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SystemInfoTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SystemInfoTest.java deleted file mode 100644 index 6f138f5605..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/SystemInfoTest.java +++ /dev/null @@ -1,57 +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.qpid.info.test; - -import junit.framework.TestCase; - -import org.apache.qpid.info.SystemInfo; - -import java.util.Arrays; -import java.util.List; -import java.util.Map; - -/** Test the SystemInfo component */ -public class SystemInfoTest extends TestCase -{ - - /** - * Ensure the list of required properties are returned by the - * SystemInfo.getInfo call - */ - public void testGetInfo() - { - Map sysInfoMap = SystemInfo.getInfo(); - assertNotNull("SystemInfo.getInfo() returned null", sysInfoMap); - List sysInfoProps = Arrays.asList( - "java.class.path", - "java.vm.name", "java.class.version", "os.arch", "os.name", - "os.version", "sun.arch.data.model", "user.dir", "user.name", - "user.timezone", "hostname", "ip", "CPUCores", "Maximum_Memory", - "Free_Memory"); - - for (String tag : sysInfoProps) - { - assertNotNull("Map does not contain the tag: " + tag, sysInfoMap.get(tag)); - } - } - -} \ No newline at end of file diff --git a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/XMLWriterTest.java b/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/XMLWriterTest.java deleted file mode 100644 index d23c16f60e..0000000000 --- a/qpid/java/broker-plugins/experimental/info/src/test/java/org/apache/qpid/info/test/XMLWriterTest.java +++ /dev/null @@ -1,133 +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.qpid.info.test; - -import junit.framework.TestCase; - -import org.apache.qpid.info.util.XMLWriter; - -import java.util.HashMap; - -/* - * This test verifies the XML writer custom class operations - */ - -public class XMLWriterTest extends TestCase -{ - - private XMLWriter xw = null; - - /** Test constructor arg is returned via getXML() */ - public void testXMLWriter() - { - StringBuffer input = new StringBuffer("Test"); - xw = new XMLWriter(input); - assertNotNull("XMLWriter could not instantiate", xw); - assertEquals("XMLWriter.getXML() failed", input, xw.getXML()); - } - - /** Test header generation */ - public void testWriteXMLHeader() - { - xw = new XMLWriter(new StringBuffer()); - assertNotNull(xw); - xw.writeXMLHeader(); - assertEquals("XMLWriter.writeXMLHeader(...) failed", "\n", xw.getXML().toString()); - } - - /** Test tag created and written correctly */ - public void testWriteTag() - { - String INDENT = " "; - xw = new XMLWriter(new StringBuffer()); - assertNotNull("XMLWriter could not instantiate", xw); - xw.writeTag("test", new HashMap(), "TEST"); - assertEquals("XMLWriter.writeTag(...) failed", "\n" + INDENT + "TEST\n" + "\n", xw.getXML() - .toString()); - } - - /** Test tag created and written correctly */ - public void testWriteTagWithNullAttribute() - { - String INDENT = " "; - xw = new XMLWriter(new StringBuffer()); - assertNotNull("XMLWriter could not instantiate", xw); - xw.writeTag("test", null, "TEST"); - assertEquals("XMLWriter.writeTag(...) failed", "\n" + INDENT + "TEST\n" + "\n", xw.getXML() - .toString()); - } - - /** Test tag created and written correctly with attribute */ - public void testWriteTagWithAttribute() - { - String INDENT = " "; - xw = new XMLWriter(new StringBuffer()); - assertNotNull("XMLWriter could not instantiate", xw); - HashMap attr = new HashMap(); - attr.put("id", "1"); - - xw.writeTag("test", attr, "TEST"); - assertEquals("XMLWriter.writeTag(...) failed", "\n" + INDENT + "TEST\n" + "\n", xw.getXML() - .toString()); - } - - /** Test open tag with an empty attribute map. Just creates an open tag */ - public void testWriteOpenTag() - { - xw = new XMLWriter(new StringBuffer()); - assertNotNull(xw); - HashMap attr = new HashMap(); - xw.writeOpenTag("test", attr); - assertEquals("XMLWriter.writeOpenTag(...) failed", "\n", xw.getXML().toString()); - } - - /** Test open tag with a null attribute map. Just creates an open tag */ - public void testNullAtrributeOnTag() - { - xw = new XMLWriter(new StringBuffer()); - assertNotNull(xw); - xw.writeOpenTag("test", null); - assertEquals("XMLWriter.writeOpenTag(...) failed", "\n", xw.getXML().toString()); - } - - /** Test that setting an attribute value on the tag is correctly outputted. */ - public void testAtrributeOnTag() - { - xw = new XMLWriter(new StringBuffer()); - assertNotNull(xw); - HashMap attr = new HashMap(); - - attr.put("id", "1"); - xw.writeOpenTag("test1", attr); - assertEquals("XMLWriter.writeOpenTag(...) failed", "\n", xw.getXML().toString()); - } - - /** Test Close Tag is correctly written */ - public void testWriteCloseTag() - { - xw = new XMLWriter(new StringBuffer()); - assertNotNull(xw); - xw.writeCloseTag("test"); - assertEquals("\n", xw.getXML().toString()); - } - -} diff --git a/qpid/java/build.deps b/qpid/java/build.deps index 1531bdfb4b..baf263e6a7 100644 --- a/qpid/java/build.deps +++ b/qpid/java/build.deps @@ -43,11 +43,6 @@ slf4j-log4j=lib/slf4j-log4j12-1.6.1.jar xalan=lib/xalan-2.7.0.jar -jetty=lib/jetty-6.1.14.jar -jetty-util=lib/jetty-util-6.1.14.jar -jetty-servlet-tester=lib/jetty-servlet-tester-6.1.14.jar -servlet-api=lib/servlet-api.jar - felix-main=lib/org.apache.felix.main-2.0.5.jar felix.libs=${felix-main} @@ -65,7 +60,6 @@ broker-plugins.libs=${felix.libs} ${log4j} ${commons-configuration.libs} junit-toolkit.libs=${log4j} ${junit} ${slf4j-api} test.libs=${slf4j-log4j} ${junit-toolkit.libs} -testkit.libs=${log4j} ibm-icu=lib/com.ibm.icu_3.8.1.v20080530.jar ecl-core-jface=lib/org.eclipse.jface_3.4.1.M20080827-2000.jar @@ -134,7 +128,6 @@ testkit.test.libs=${test.libs} systests.libs=${test.libs} broker-plugins.test.libs=${test.libs} -broker-plugins-experimental-info.test.libs=${test.libs} ${servlet-api} ${jetty} ${jetty-util} ${jetty-servlet-tester} management-eclipse-plugin.test.libs=${test.libs} management-common.test.libs=${test.libs} diff --git a/qpid/java/lib/jetty-6.1.14.jar b/qpid/java/lib/jetty-6.1.14.jar deleted file mode 100644 index 3e67d1e19e..0000000000 Binary files a/qpid/java/lib/jetty-6.1.14.jar and /dev/null differ diff --git a/qpid/java/lib/jetty-servlet-tester-6.1.14.jar b/qpid/java/lib/jetty-servlet-tester-6.1.14.jar deleted file mode 100644 index c6d7c66f4a..0000000000 Binary files a/qpid/java/lib/jetty-servlet-tester-6.1.14.jar and /dev/null differ diff --git a/qpid/java/lib/jetty-util-6.1.14.jar b/qpid/java/lib/jetty-util-6.1.14.jar deleted file mode 100644 index 7acc988655..0000000000 Binary files a/qpid/java/lib/jetty-util-6.1.14.jar and /dev/null differ diff --git a/qpid/java/lib/servlet-api.jar b/qpid/java/lib/servlet-api.jar deleted file mode 100644 index e3b61e0079..0000000000 Binary files a/qpid/java/lib/servlet-api.jar and /dev/null differ -- cgit v1.2.1