activemq-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From djen...@apache.org
Subject svn commit: r645288 [4/7] - in /activemq/branches/activemq-4.1: ./ activemq-console/src/main/resources/META-INF/ activemq-core/ activemq-core/src/main/java/org/apache/activemq/transport/discovery/rendezvous/ activemq-core/src/main/resources/META-INF/ a...
Date Sun, 06 Apr 2008 19:21:24 GMT
Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/JmDNS.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/JmDNS.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/JmDNS.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java?rev=645288&view=auto
==============================================================================
--- activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java (added)
+++ activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java Sun Apr  6 12:21:18 2008
@@ -0,0 +1,99 @@
+///Copyright 2003-2005 Arthur van Hoff, Rick Blair
+//Licensed under Apache License version 2.0
+//Original license LGPL
+
+package org.apache.activemq.jmdns;
+
+import java.util.EventObject;
+import java.util.logging.Logger;
+
+/**
+ * ServiceEvent.
+ *
+ * @author Werner Randelshofer, Rick Blair
+ * @version %I%, %G%
+ */
+public class ServiceEvent extends EventObject
+{
+    private static Logger logger = Logger.getLogger(ServiceEvent.class.toString());
+    /**
+     * The type name of the service.
+     */
+    private String type;
+    /**
+     * The instance name of the service. Or null, if the event was
+     * fired to a service type listener.
+     */
+    private String name;
+    /**
+     * The service info record, or null if the service could be be resolved.
+     * This is also null, if the event was fired to a service type listener.
+     */
+    private ServiceInfo info;
+
+    /**
+     * Creates a new instance.
+     *
+     * @param source the JmDNS instance which originated the event.
+     * @param type   the type name of the service.
+     * @param name   the instance name of the service.
+     * @param info   the service info record, or null if the service could be be resolved.
+     */
+    public ServiceEvent(JmDNS source, String type, String name, ServiceInfo info)
+    {
+        super(source);
+        this.type = type;
+        this.name = name;
+        this.info = info;
+    }
+
+    /**
+     * Returns the JmDNS instance which originated the event.
+     */
+    public JmDNS getDNS()
+    {
+        return (JmDNS) getSource();
+    }
+
+    /**
+     * Returns the fully qualified type of the service.
+     */
+    public String getType()
+    {
+        return type;
+    }
+
+    /**
+     * Returns the instance name of the service.
+     * Always returns null, if the event is sent to a service type listener.
+     */
+    public String getName()
+    {
+        return name;
+    }
+
+    /**
+     * Returns the service info record, or null if the service could not be
+     * resolved.
+     * Always returns null, if the event is sent to a service type listener.
+     */
+    public ServiceInfo getInfo()
+    {
+        return info;
+    }
+
+    public String toString()
+    {
+        StringBuffer buf = new StringBuffer();
+        buf.append("<" + getClass().getName() + "> ");
+        buf.append(super.toString());
+        buf.append(" name ");
+        buf.append(getName());
+        buf.append(" type ");
+        buf.append(getType());
+        buf.append(" info ");
+        buf.append(getInfo());
+        return buf.toString();
+    }
+
+}

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceEvent.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java?rev=645288&view=auto
==============================================================================
--- activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java (added)
+++ activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java Sun Apr  6 12:21:18 2008
@@ -0,0 +1,659 @@
+//Copyright 2003-2005 Arthur van Hoff, Rick Blair
+//Licensed under Apache License version 2.0
+//Original license LGPL
+
+package org.apache.activemq.jmdns;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.net.InetAddress;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.TimerTask;
+import java.util.Vector;
+import java.util.logging.Logger;
+
+/**
+ * JmDNS service information.
+ *
+ * @version %I%, %G%
+ * @author	Arthur van Hoff, Jeff Sonstein, Werner Randelshofer
+ */
+public class ServiceInfo implements DNSListener
+{
+    private static Logger logger = Logger.getLogger(ServiceInfo.class.toString());
+    public final static byte[] NO_VALUE = new byte[0];
+    JmDNS dns;
+    
+    // State machine
+    /**
+     * The state of this service info.
+     * This is used only for services announced by JmDNS.
+     * <p/>
+     * For proper handling of concurrency, this variable must be
+     * changed only using methods advanceState(), revertState() and cancel().
+     */
+    private DNSState state = DNSState.PROBING_1;
+
+    /**
+     * Task associated to this service info.
+     * Possible tasks are JmDNS.Prober, JmDNS.Announcer, JmDNS.Responder,
+     * JmDNS.Canceler.
+     */
+    TimerTask task;
+
+    String type;
+    private String name;
+    String server;
+    int port;
+    int weight;
+    int priority;
+    byte text[];
+    Hashtable props;
+    InetAddress addr;
+
+
+    /**
+     * Construct a service description for registrating with JmDNS.
+     *
+     * @param type fully qualified service type name, such as <code>_http._tcp.local.</code>.
+     * @param name unqualified service instance name, such as <code>foobar</code>
+     * @param port the local port on which the service runs
+     * @param text string describing the service
+     */
+    public ServiceInfo(String type, String name, int port, String text)
+    {
+        this(type, name, port, 0, 0, text);
+    }
+
+    /**
+     * Construct a service description for registrating with JmDNS.
+     *
+     * @param type     fully qualified service type name, such as <code>_http._tcp.local.</code>.
+     * @param name     unqualified service instance name, such as <code>foobar</code>
+     * @param port     the local port on which the service runs
+     * @param weight   weight of the service
+     * @param priority priority of the service
+     * @param text     string describing the service
+     */
+    public ServiceInfo(String type, String name, int port, int weight, int priority, String text)
+    {
+        this(type, name, port, weight, priority, (byte[]) null);
+        try
+        {
+            ByteArrayOutputStream out = new ByteArrayOutputStream(text.length());
+            writeUTF(out, text);
+            this.text = out.toByteArray();
+        }
+        catch (IOException e)
+        {
+            throw new RuntimeException("unexpected exception: " + e);
+        }
+    }
+
+    /**
+     * Construct a service description for registrating with JmDNS. The properties hashtable must
+     * map property names to either Strings or byte arrays describing the property values.
+     *
+     * @param type     fully qualified service type name, such as <code>_http._tcp.local.</code>.
+     * @param name     unqualified service instance name, such as <code>foobar</code>
+     * @param port     the local port on which the service runs
+     * @param weight   weight of the service
+     * @param priority priority of the service
+     * @param props    properties describing the service
+     */
+    public ServiceInfo(String type, String name, int port, int weight, int priority, Hashtable props)
+    {
+        this(type, name, port, weight, priority, new byte[0]);
+        if (props != null)
+        {
+            try
+            {
+                ByteArrayOutputStream out = new ByteArrayOutputStream(256);
+                for (Enumeration e = props.keys(); e.hasMoreElements();)
+                {
+                    String key = (String) e.nextElement();
+                    Object val = props.get(key);
+                    ByteArrayOutputStream out2 = new ByteArrayOutputStream(100);
+                    writeUTF(out2, key);
+                    if (val instanceof String)
+                    {
+                        out2.write('=');
+                        writeUTF(out2, (String) val);
+                    }
+                    else
+                    {
+                        if (val instanceof byte[])
+                        {
+                            out2.write('=');
+                            byte[] bval = (byte[]) val;
+                            out2.write(bval, 0, bval.length);
+                        }
+                        else
+                        {
+                            if (val != NO_VALUE)
+                            {
+                                throw new IllegalArgumentException("invalid property value: " + val);
+                            }
+                        }
+                    }
+                    byte data[] = out2.toByteArray();
+                    out.write(data.length);
+                    out.write(data, 0, data.length);
+                }
+                this.text = out.toByteArray();
+            }
+            catch (IOException e)
+            {
+                throw new RuntimeException("unexpected exception: " + e);
+            }
+        }
+    }
+
+    /**
+     * Construct a service description for registrating with JmDNS.
+     *
+     * @param type     fully qualified service type name, such as <code>_http._tcp.local.</code>.
+     * @param name     unqualified service instance name, such as <code>foobar</code>
+     * @param port     the local port on which the service runs
+     * @param weight   weight of the service
+     * @param priority priority of the service
+     * @param text     bytes describing the service
+     */
+    public ServiceInfo(String type, String name, int port, int weight, int priority, byte text[])
+    {
+        this.type = type;
+        this.name = name;
+        this.port = port;
+        this.weight = weight;
+        this.priority = priority;
+        this.text = text;
+    }
+
+    /**
+     * Construct a service record during service discovery.
+     */
+    ServiceInfo(String type, String name)
+    {
+        if (!type.endsWith("."))
+        {
+            throw new IllegalArgumentException("type must be fully qualified DNS name ending in '.': " + type);
+        }
+
+        this.type = type;
+        this.name = name;
+    }
+
+    /**
+     * During recovery we need to duplicate service info to reregister them
+     */
+    ServiceInfo(ServiceInfo info)
+    {
+        if (info != null)
+        {
+            this.type = info.type;
+            this.name = info.name;
+            this.port = info.port;
+            this.weight = info.weight;
+            this.priority = info.priority;
+            this.text = info.text;
+        }
+    }
+
+    /**
+     * Fully qualified service type name, such as <code>_http._tcp.local.</code> .
+     */
+    public String getType()
+    {
+        return type;
+    }
+
+    /**
+     * Unqualified service instance name, such as <code>foobar</code> .
+     */
+    public String getName()
+    {
+        return name;
+    }
+
+    /**
+     * Sets the service instance name.
+     *
+     * @param name unqualified service instance name, such as <code>foobar</code>
+     */
+    void setName(String name)
+    {
+        this.name = name;
+    }
+
+    /**
+     * Fully qualified service name, such as <code>foobar._http._tcp.local.</code> .
+     */
+    public String getQualifiedName()
+    {
+        return name + "." + type;
+    }
+
+    /**
+     * Get the name of the server.
+     */
+    public String getServer()
+    {
+        return server;
+    }
+
+    /**
+     * Get the host address of the service (ie X.X.X.X).
+     */
+    public String getHostAddress()
+    {
+        return (addr != null ? addr.getHostAddress() : "");
+    }
+
+    public InetAddress getAddress()
+    {
+        return addr;
+    }
+
+    /**
+     * Get the InetAddress of the service.
+     */
+    public InetAddress getInetAddress()
+    {
+        return addr;
+    }
+
+    /**
+     * Get the port for the service.
+     */
+    public int getPort()
+    {
+        return port;
+    }
+
+    /**
+     * Get the priority of the service.
+     */
+    public int getPriority()
+    {
+        return priority;
+    }
+
+    /**
+     * Get the weight of the service.
+     */
+    public int getWeight()
+    {
+        return weight;
+    }
+
+    /**
+     * Get the text for the serivce as raw bytes.
+     */
+    public byte[] getTextBytes()
+    {
+        return text;
+    }
+
+    /**
+     * Get the text for the service. This will interpret the text bytes
+     * as a UTF8 encoded string. Will return null if the bytes are not
+     * a valid UTF8 encoded string.
+     */
+    public String getTextString()
+    {
+        if ((text == null) || (text.length == 0) || ((text.length == 1) && (text[0] == 0)))
+        {
+            return null;
+        }
+        return readUTF(text, 0, text.length);
+    }
+
+    /**
+     * Get the URL for this service. An http URL is created by
+     * combining the address, port, and path properties.
+     */
+    public String getURL()
+    {
+        return getURL("http");
+    }
+
+    /**
+     * Get the URL for this service. An URL is created by
+     * combining the protocol, address, port, and path properties.
+     */
+    public String getURL(String protocol)
+    {
+        String url = protocol + "://" + getAddress() + ":" + getPort();
+        String path = getPropertyString("path");
+        if (path != null)
+        {
+            if (path.indexOf("://") >= 0)
+            {
+                url = path;
+            }
+            else
+            {
+                url += path.startsWith("/") ? path : "/" + path;
+            }
+        }
+        return url;
+    }
+
+    /**
+     * Get a property of the service. This involves decoding the
+     * text bytes into a property list. Returns null if the property
+     * is not found or the text data could not be decoded correctly.
+     */
+    public synchronized byte[] getPropertyBytes(String name)
+    {
+        return (byte[]) getProperties().get(name);
+    }
+
+    /**
+     * Get a property of the service. This involves decoding the
+     * text bytes into a property list. Returns null if the property
+     * is not found, the text data could not be decoded correctly, or
+     * the resulting bytes are not a valid UTF8 string.
+     */
+    public synchronized String getPropertyString(String name)
+    {
+        byte data[] = (byte[]) getProperties().get(name);
+        if (data == null)
+        {
+            return null;
+        }
+        if (data == NO_VALUE)
+        {
+            return "true";
+        }
+        return readUTF(data, 0, data.length);
+    }
+
+    /**
+     * Enumeration of the property names.
+     */
+    public Enumeration getPropertyNames()
+    {
+        Hashtable props = getProperties();
+        return (props != null) ? props.keys() : new Vector().elements();
+    }
+
+    /**
+     * Write a UTF string with a length to a stream.
+     */
+    void writeUTF(OutputStream out, String str) throws IOException
+    {
+        for (int i = 0, len = str.length(); i < len; i++)
+        {
+            int c = str.charAt(i);
+            if ((c >= 0x0001) && (c <= 0x007F))
+            {
+                out.write(c);
+            }
+            else
+            {
+                if (c > 0x07FF)
+                {
+                    out.write(0xE0 | ((c >> 12) & 0x0F));
+                    out.write(0x80 | ((c >> 6) & 0x3F));
+                    out.write(0x80 | ((c >> 0) & 0x3F));
+                }
+                else
+                {
+                    out.write(0xC0 | ((c >> 6) & 0x1F));
+                    out.write(0x80 | ((c >> 0) & 0x3F));
+                }
+            }
+        }
+    }
+
+    /**
+     * Read data bytes as a UTF stream.
+     */
+    String readUTF(byte data[], int off, int len)
+    {
+        StringBuffer buf = new StringBuffer();
+        for (int end = off + len; off < end;)
+        {
+            int ch = data[off++] & 0xFF;
+            switch (ch >> 4)
+            {
+                case 0:
+                case 1:
+                case 2:
+                case 3:
+                case 4:
+                case 5:
+                case 6:
+                case 7:
+                    // 0xxxxxxx
+                    break;
+                case 12:
+                case 13:
+                    if (off >= len)
+                    {
+                        return null;
+                    }
+                    // 110x xxxx   10xx xxxx
+                    ch = ((ch & 0x1F) << 6) | (data[off++] & 0x3F);
+                    break;
+                case 14:
+                    if (off + 2 >= len)
+                    {
+                        return null;
+                    }
+                    // 1110 xxxx  10xx xxxx  10xx xxxx
+                    ch = ((ch & 0x0f) << 12) | ((data[off++] & 0x3F) << 6) | (data[off++] & 0x3F);
+                    break;
+                default:
+                    if (off + 1 >= len)
+                    {
+                        return null;
+                    }
+                    // 10xx xxxx,  1111 xxxx
+                    ch = ((ch & 0x3F) << 4) | (data[off++] & 0x0f);
+                    break;
+            }
+            buf.append((char) ch);
+        }
+        return buf.toString();
+    }
+
+    synchronized Hashtable getProperties()
+    {
+        if ((props == null) && (text != null))
+        {
+            Hashtable props = new Hashtable();
+            int off = 0;
+            while (off < text.length)
+            {
+                // length of the next key value pair
+                int len = text[off++] & 0xFF;
+                if ((len == 0) || (off + len > text.length))
+                {
+                    props.clear();
+                    break;
+                }
+                // look for the '='
+                int i = 0;
+                for (; (i < len) && (text[off + i] != '='); i++)
+                {
+                    ;
+                }
+
+                // get the property name
+                String name = readUTF(text, off, i);
+                if (name == null)
+                {
+                    props.clear();
+                    break;
+                }
+                if (i == len)
+                {
+                    props.put(name, NO_VALUE);
+                }
+                else
+                {
+                    byte value[] = new byte[len - ++i];
+                    System.arraycopy(text, off + i, value, 0, len - i);
+                    props.put(name, value);
+                    off += len;
+                }
+            }
+            this.props = props;
+        }
+        return props;
+    }
+    
+    // REMIND: Oops, this shouldn't be public!
+    /**
+     * JmDNS callback to update a DNS record.
+     */
+    public void updateRecord(JmDNS jmdns, long now, DNSRecord rec)
+    {
+        if ((rec != null) && !rec.isExpired(now))
+        {
+            switch (rec.type)
+            {
+                case DNSConstants.TYPE_A:		// IPv4
+                case DNSConstants.TYPE_AAAA:	// IPv6 FIXME [PJYF Oct 14 2004] This has not been tested
+                    if (rec.name.equals(server))
+                    {
+                        addr = ((DNSRecord.Address) rec).getAddress();
+
+                    }
+                    break;
+                case DNSConstants.TYPE_SRV:
+                    if (rec.name.equals(getQualifiedName()))
+                    {
+                        DNSRecord.Service srv = (DNSRecord.Service) rec;
+                        server = srv.server;
+                        port = srv.port;
+                        weight = srv.weight;
+                        priority = srv.priority;
+                        addr = null;
+                        // changed to use getCache() instead - jeffs
+                        // updateRecord(jmdns, now, (DNSRecord)jmdns.cache.get(server, TYPE_A, CLASS_IN));
+                        updateRecord(jmdns, now, (DNSRecord) jmdns.getCache().get(server, DNSConstants.TYPE_A, DNSConstants.CLASS_IN));
+                    }
+                    break;
+                case DNSConstants.TYPE_TXT:
+                    if (rec.name.equals(getQualifiedName()))
+                    {
+                        DNSRecord.Text txt = (DNSRecord.Text) rec;
+                        text = txt.text;
+                    }
+                    break;
+            }
+            // Future Design Pattern
+            // This is done, to notify the wait loop in method
+            // JmDNS.getServiceInfo(type, name, timeout);
+            if (hasData() && dns != null)
+            {
+                dns.handleServiceResolved(this);
+                dns = null;
+            }
+            synchronized (this)
+            {
+                notifyAll();
+            }
+        }
+    }
+
+    /**
+     * Returns true if the service info is filled with data.
+     */
+    boolean hasData()
+    {
+        return server != null && addr != null && text != null;
+    }
+    
+    
+    // State machine
+    /**
+     * Sets the state and notifies all objects that wait on the ServiceInfo.
+     */
+    synchronized void advanceState()
+    {
+        state = state.advance();
+        notifyAll();
+    }
+
+    /**
+     * Sets the state and notifies all objects that wait on the ServiceInfo.
+     */
+    synchronized void revertState()
+    {
+        state = state.revert();
+        notifyAll();
+    }
+
+    /**
+     * Sets the state and notifies all objects that wait on the ServiceInfo.
+     */
+    synchronized void cancel()
+    {
+        state = DNSState.CANCELED;
+        notifyAll();
+    }
+
+    /**
+     * Returns the current state of this info.
+     */
+    DNSState getState()
+    {
+        return state;
+    }
+
+
+    public int hashCode()
+    {
+        return getQualifiedName().hashCode();
+    }
+
+    public boolean equals(Object obj)
+    {
+        return (obj instanceof ServiceInfo) && getQualifiedName().equals(((ServiceInfo) obj).getQualifiedName());
+    }
+
+    public String getNiceTextString()
+    {
+        StringBuffer buf = new StringBuffer();
+        for (int i = 0, len = text.length; i < len; i++)
+        {
+            if (i >= 20)
+            {
+                buf.append("...");
+                break;
+            }
+            int ch = text[i] & 0xFF;
+            if ((ch < ' ') || (ch > 127))
+            {
+                buf.append("\\0");
+                buf.append(Integer.toString(ch, 8));
+            }
+            else
+            {
+                buf.append((char) ch);
+            }
+        }
+        return buf.toString();
+    }
+
+    public String toString()
+    {
+        StringBuffer buf = new StringBuffer();
+        buf.append("service[");
+        buf.append(getQualifiedName());
+        buf.append(',');
+        buf.append(getAddress());
+        buf.append(':');
+        buf.append(port);
+        buf.append(',');
+        buf.append(getNiceTextString());
+        buf.append(']');
+        return buf.toString();
+    }
+}

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceInfo.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java?rev=645288&view=auto
==============================================================================
--- activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java (added)
+++ activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java Sun Apr  6 12:21:18 2008
@@ -0,0 +1,42 @@
+//Copyright 2003-2005 Arthur van Hoff, Rick Blair
+//Licensed under Apache License version 2.0
+//Original license LGPL
+
+package org.apache.activemq.jmdns;
+
+import java.util.EventListener;
+
+/**
+ * Listener for service updates.
+ *
+ * @version %I%, %G%
+ * @author	Arthur van Hoff, Werner Randelshofer
+ */
+public interface ServiceListener extends EventListener
+{
+    /**
+     * A service has been added.
+     *
+     * @param event The ServiceEvent providing the name and fully qualified type
+     *              of the service.
+     */
+    void serviceAdded(ServiceEvent event);
+
+    /**
+     * A service has been removed.
+     *
+     * @param event The ServiceEvent providing the name and fully qualified type
+     *              of the service.
+     */
+    void serviceRemoved(ServiceEvent event);
+
+    /**
+     * A service has been resolved. Its details are now available in the
+     * ServiceInfo record.
+     *
+     * @param event The ServiceEvent providing the name, the fully qualified
+     *              type of the service, and the service info record, or null if the service
+     *              could not be resolved.
+     */
+    void serviceResolved(ServiceEvent event);
+}

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceListener.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java?rev=645288&view=auto
==============================================================================
--- activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java (added)
+++ activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java Sun Apr  6 12:21:18 2008
@@ -0,0 +1,24 @@
+//Copyright 2003-2005 Arthur van Hoff, Rick Blair
+//Licensed under Apache License version 2.0
+//Original license LGPL
+
+package org.apache.activemq.jmdns;
+
+import java.util.EventListener;
+
+/**
+ * Listener for service types.
+ *
+ * @version %I%, %G%
+ * @author	Arthur van Hoff, Werner Randelshofer
+ */
+public interface ServiceTypeListener extends EventListener
+{
+    /**
+     * A new service type was discovered.
+     *
+     * @param event The service event providing the fully qualified type of
+     *              the service.
+     */
+    void serviceTypeAdded(ServiceEvent event);
+}

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/java/org/apache/activemq/jmdns/ServiceTypeListener.java
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Added: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/NOTICE
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/NOTICE?rev=645288&view=auto
==============================================================================
--- activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/NOTICE (added)
+++ activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/NOTICE Sun Apr  6 12:21:18 2008
@@ -0,0 +1,17 @@
+===============================================================
+==     NOTICE File for JmDNS                                 ==
+===============================================================
+
+Java Multicast Domain Name Server (JmDNS)
+
+This project was originally developed by Arthur van Hoff under the GNU
+Lesser General Public License as jRendevous.  It was moved to Sourceforge
+by Rick Blair and renamed to JmDNS with the Arthur's kind permission.
+
+Currently it has  been re-released under the Apache License, Version 2.0.
+
+Details of the Apache License, Version 2.0 can be found at:
+http://www.apache.org/licenses/
+
+
+For other details please see the README.txt file.

Added: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt?rev=645288&view=auto
==============================================================================
--- activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt (added)
+++ activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt Sun Apr  6 12:21:18 2008
@@ -0,0 +1,117 @@
+// %Z%%M%, %I%, %G%
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License, or (at your option) any later version.
+//
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+// Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+//This library is now licensed under the Apache License Version 2.0  Please
+//see the file NOTICE.
+
+
+Arthur van Hoff
+avh@strangeberry.com
+
+Rick Blair
+rickblair@mac.com
+
+** JmDNS
+
+This is an implemenation of multi-cast DNS in Java. It currently
+supports service discovery and service registration. It is fully
+interoperable with Apple's Rendezvous.
+
+
+
+** Requirements
+
+jmdns has been tested using the JDK 1.3.1 and JDK 1.4.0
+on the following platforms:
+
+Windows 9x, XP, 2000
+Linux   RedHat 7.3-9.0, Mandrake
+Mac OSX
+
+
+
+** Running jmdns from the Command Line
+
+GUI browser:
+
+  java -jar lib/jmdns.jar -browse
+
+TTY browser for a particular service type:
+
+  java -jar lib/jmdns.jar -bs _http._tcp local.
+
+Register a service:
+
+  java -jar lib/jmdns.jar -rs foobar _http._tcp local. 1234 path=index.html
+
+List service types:
+
+  java -jar lib/jmdns.jar -bt
+
+To print debugging output specify -d as the first argument.
+
+
+
+** Sample Code for Service Registration
+
+    import javax.jmdns.*;
+
+    JmDNS jmdns = new JmDNS();
+    jmdns.registerService(
+    	new ServiceInfo("_http._tcp.local.", "foo._http._tcp.local.", 1234, 0, 0, "path=index.html")
+    );
+
+
+** Sample code for Serivice Discovery
+
+    import javax.jmdns.*;
+
+    static class SampleListener implements ServiceListener
+    {
+	public void addService(JmDNS jmdns, String type, String name)
+	{
+	    System.out.println("ADD: " + jmdns.getServiceInfo(type, name));
+	}
+	public void removeService(JmDNS jmdns, String type, String name)
+	{
+	    System.out.println("REMOVE: " + name);
+	}
+	public void resolveService(JmDNS jmdns, String type, String name, ServiceInfo info)
+	{
+	    System.out.println("RESOLVED: " + info);
+	}
+    }
+
+    JmDNS jmdns = new JmDNS();
+    jmdns.addServiceListener("_http._tcp.local.", new SampleListener());
+
+
+** Changes since October 2003
+
+- Renamed package com.strangeberry.rendezvous to javax.jmdns
+- fixed unicast queries
+- fixed property handling
+- use the hostname instead of the service name is address resolution
+- Added Apache License.
+
+--------------------------------------------------------------------
+The activemq-jmdns_1.0 source is derived from http://repo1.maven.org/maven2/jmdns/jmdns/1.0/jmdns-1.0-sources.jar
+
+Changes to apache activemq version:
+- renamed package javax.jmdns to org.apache.activemq.jmdns
+- removed classes with lgpl source headers, leaving only the org.apache.activemq.jmdns package.
+

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt
------------------------------------------------------------------------------
    svn:keywords = Date Revision

Propchange: activemq/branches/activemq-4.1/activemq-jmdns_1.0/src/main/resources/META-INF/README.txt
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: activemq/branches/activemq-4.1/activemq-openwire-generator/pom.xml
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-openwire-generator/pom.xml?rev=645288&r1=645287&r2=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-openwire-generator/pom.xml (original)
+++ activemq/branches/activemq-4.1/activemq-openwire-generator/pom.xml Sun Apr  6 12:21:18 2008
@@ -83,4 +83,15 @@
     </profile>
   </profiles>
  
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
 </project>

Modified: activemq/branches/activemq-4.1/activemq-ra/pom.xml
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-ra/pom.xml?rev=645288&r1=645287&r2=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-ra/pom.xml (original)
+++ activemq/branches/activemq-4.1/activemq-ra/pom.xml Sun Apr  6 12:21:18 2008
@@ -48,10 +48,12 @@
       <groupId>org.springframework</groupId>
       <artifactId>spring</artifactId>
     </dependency>
+<!--
     <dependency>
-      <groupId>activemq</groupId>
-      <artifactId>jmdns</artifactId>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-jmdns_1.0</artifactId>
     </dependency>
+-->
     <dependency>
       <groupId>jmock</groupId>
       <artifactId>jmock</artifactId>

Modified: activemq/branches/activemq-4.1/activemq-rar/pom.xml
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-rar/pom.xml?rev=645288&r1=645287&r2=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-rar/pom.xml (original)
+++ activemq/branches/activemq-4.1/activemq-rar/pom.xml Sun Apr  6 12:21:18 2008
@@ -135,8 +135,8 @@
            <artifactId>regexp</artifactId>
         </exclusion>
         <exclusion>
-           <groupId>activemq</groupId>
-           <artifactId>jmdns</artifactId>
+           <groupId>org.apache.activemq</groupId>
+           <artifactId>activemq-jmdns_1.0</artifactId>
         </exclusion>
         <exclusion>
            <groupId>xalan</groupId>
@@ -215,5 +215,15 @@
       <artifactId>log4j</artifactId>
     </dependency>
   </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
   
 </project>

Copied: activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE (from r636919, activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE.txt)
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE?p2=activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE&p1=activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE.txt&r1=636919&r2=645288&rev=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE.txt (original)
+++ activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE Sun Apr  6 12:21:18 2008
@@ -201,3 +201,52 @@
    See the License for the specific language governing permissions and
    limitations under the License.
 
+=========================================================================
+== For the backport-util-concurrent library                            ==
+=========================================================================
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
+<html><head><title>Creative Commons Public Domain</title>
+
+<body>
+
+<p align="center"><em>Copyright-Only Dedication (based on United States law) or Public Domain Certification</em></p>
+
+        <p>The
+person or persons who have associated work with this document (the
+"Dedicator" or "Certifier") hereby either (a) certifies that, to the
+best of his knowledge, the work of authorship identified is in the
+public domain of the country from which the work is published, or (b)
+hereby dedicates whatever copyright the dedicators holds in the work of
+authorship identified below (the "Work") to the public domain. A
+certifier, morever, dedicates any copyright interest he may have in the
+associated work, and for these purposes, is described as a "dedicator"
+below.</p>
+
+        <p>A certifier has taken reasonable steps to verify
+the copyright status of this work. Certifier recognizes that his good
+faith efforts may not shield him from liability if in fact the work
+certified is not in the public domain.</p>
+
+        <p>Dedicator makes
+this dedication for the benefit of the public at large and to the
+detriment of the Dedicator's heirs and successors. Dedicator intends
+this dedication to be an overt act of relinquishment in perpetuity of
+all present and future rights under copyright law, whether vested or
+contingent, in the Work. Dedicator understands that such relinquishment
+of all rights includes the relinquishment of all rights to enforce (by
+lawsuit or otherwise) those copyrights in the Work.</p>
+
+        <p>Dedicator
+recognizes that, once placed in the public domain, the Work may be
+freely reproduced, distributed, transmitted, used, modified, built
+upon, or otherwise exploited by anyone for any purpose, commercial or
+non-commercial, and in any way, including by methods that have not yet
+been invented or conceived.</p>
+    </div>
+</div>
+</body></html>
+
+=========================================================================
+== Spring is licensed under the Apache License Version 2.0             ==
+=========================================================================

Propchange: activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/LICENSE
------------------------------------------------------------------------------
    svn:eol-style = native

Copied: activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE (from r636919, activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE.txt)
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE?p2=activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE&p1=activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE.txt&r1=636919&r2=645288&rev=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE.txt (original)
+++ activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE Sun Apr  6 12:21:18 2008
@@ -1,11 +1,5 @@
-=========================================================================
-==  NOTICE file corresponding to the section 4 d of                    ==
-==  the Apache License, Version 2.0,                                   ==
-==  in this case for the Apache ActiveMQ distribution.                 ==
-=========================================================================
-
 Apache ActiveMQ
-Copyright 2005-2006 The Apache Software Foundation
+Copyright 2005-2008 The Apache Software Foundation
 
 This product includes software developed by
 The Apache Software Foundation (http://www.apache.org/).
@@ -50,11 +44,3 @@
 endorse or promote products derived from this software without
 prior written permission. For written permission, please contact
 rod.johnson@interface21.com or juergen.hoeller@interface21.com.
-
-
-=========================================================================
-==  MX4J Notice                                                        ==
-=========================================================================
-
-This product includes software developed by the MX4J project
-(http://sourceforge.net/projects/mx4j).

Propchange: activemq/branches/activemq-4.1/activemq-rar/src/main/rar/META-INF/NOTICE
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-memtest-plugin/pom.xml
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-memtest-plugin/pom.xml?rev=645288&r1=645287&r2=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-memtest-plugin/pom.xml (original)
+++ activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-memtest-plugin/pom.xml Sun Apr  6 12:21:18 2008
@@ -16,57 +16,67 @@
     limitations under the License.
 -->
 <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/maven-v4_0_0.xsd">
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
-    <modelVersion>4.0.0</modelVersion>
+  <modelVersion>4.0.0</modelVersion>
 
-    <parent>
-        <groupId>org.apache.activemq.tooling</groupId>
-        <artifactId>activemq-tooling</artifactId>
-        <version>4.1-SNAPSHOT</version>
-	</parent>
-    
-	<artifactId>maven-activemq-memtest-plugin</artifactId>
-    <packaging>maven-plugin</packaging>
-    <name>ActiveMQ :: Memory Usage Test Plugin</name>
+  <parent>
+    <groupId>org.apache.activemq.tooling</groupId>
+    <artifactId>activemq-tooling</artifactId>
+    <version>4.1-SNAPSHOT</version>
+  </parent>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.maven</groupId>
-            <artifactId>maven-plugin-api</artifactId>
-            <version>2.0</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-console</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activeio-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>backport-util-concurrent</groupId>
-            <artifactId>backport-util-concurrent</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-jms_1.1_spec</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-j2ee-management_1.0_spec</artifactId>
-        </dependency>
-    </dependencies>
+  <artifactId>maven-activemq-memtest-plugin</artifactId>
+  <packaging>maven-plugin</packaging>
+  <name>ActiveMQ :: Memory Usage Test Plugin</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-console</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activeio-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.derby</groupId>
+      <artifactId>derby</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.derby</groupId>
+      <artifactId>derbynet</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>backport-util-concurrent</groupId>
+      <artifactId>backport-util-concurrent</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-jms_1.1_spec</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-j2ee-management_1.0_spec</artifactId>
+    </dependency>
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 </project>

Modified: activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-plugin/pom.xml
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-plugin/pom.xml?rev=645288&r1=645287&r2=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-plugin/pom.xml (original)
+++ activemq/branches/activemq-4.1/activemq-tooling/maven-activemq-plugin/pom.xml Sun Apr  6 12:21:18 2008
@@ -15,57 +15,67 @@
     limitations under the License.
 -->
 <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/maven-v4_0_0.xsd">
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
-    <modelVersion>4.0.0</modelVersion>
+  <modelVersion>4.0.0</modelVersion>
 
-    <parent>
-        <groupId>org.apache.activemq.tooling</groupId>
-        <artifactId>activemq-tooling</artifactId>
-        <version>4.1-SNAPSHOT</version>
-	</parent>
-    
-	<artifactId>maven-activemq-plugin</artifactId>
-    <packaging>maven-plugin</packaging>
-    <name>ActiveMQ :: StartUp Plugin</name>
+  <parent>
+    <groupId>org.apache.activemq.tooling</groupId>
+    <artifactId>activemq-tooling</artifactId>
+    <version>4.1-SNAPSHOT</version>
+  </parent>
 
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.maven</groupId>
-            <artifactId>maven-plugin-api</artifactId>
-            <version>2.0</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activemq-console</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.activemq</groupId>
-            <artifactId>activeio-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derby</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.derby</groupId>
-            <artifactId>derbynet</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>backport-util-concurrent</groupId>
-            <artifactId>backport-util-concurrent</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-jms_1.1_spec</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.geronimo.specs</groupId>
-            <artifactId>geronimo-j2ee-management_1.0_spec</artifactId>
-        </dependency>
-    </dependencies>
+  <artifactId>maven-activemq-plugin</artifactId>
+  <packaging>maven-plugin</packaging>
+  <name>ActiveMQ :: StartUp Plugin</name>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven</groupId>
+      <artifactId>maven-plugin-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activemq-console</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.activemq</groupId>
+      <artifactId>activeio-core</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.derby</groupId>
+      <artifactId>derby</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.derby</groupId>
+      <artifactId>derbynet</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>backport-util-concurrent</groupId>
+      <artifactId>backport-util-concurrent</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-jms_1.1_spec</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>org.apache.geronimo.specs</groupId>
+      <artifactId>geronimo-j2ee-management_1.0_spec</artifactId>
+    </dependency>
+  </dependencies>
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
 </project>

Modified: activemq/branches/activemq-4.1/activemq-web-console/pom.xml
URL: http://svn.apache.org/viewvc/activemq/branches/activemq-4.1/activemq-web-console/pom.xml?rev=645288&r1=645287&r2=645288&view=diff
==============================================================================
--- activemq/branches/activemq-4.1/activemq-web-console/pom.xml (original)
+++ activemq/branches/activemq-4.1/activemq-web-console/pom.xml Sun Apr  6 12:21:18 2008
@@ -152,9 +152,10 @@
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-jcl</artifactId>
       <version>1.0-rc5</version>
-      <!--
-        <scope>optional</scope>
-      -->
+    </dependency>
+    <dependency>
+      <groupId>log4j</groupId>
+      <artifactId>log4j</artifactId>
     </dependency>
 
 



Mime
View raw message