You are viewing a plain text version of this content. The canonical link for it is here.
Posted to muse-commits@ws.apache.org by sc...@apache.org on 2006/06/02 19:33:13 UTC

svn commit: r411218 [31/34] - in /webservices/muse: branches/1.0/ branches/1.0/src/examples/broker/ branches/1.0/src/examples/broker/WEB-INF/ branches/1.0/src/examples/consumer/ branches/1.0/src/examples/consumer/epr/ branches/1.0/src/examples/consumer...

Added: webservices/muse/trunk/maven-plugins/maven-intellij-plugin/src/MavenIdeaImlUpdater.java
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/maven-plugins/maven-intellij-plugin/src/MavenIdeaImlUpdater.java?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/maven-plugins/maven-intellij-plugin/src/MavenIdeaImlUpdater.java (added)
+++ webservices/muse/trunk/maven-plugins/maven-intellij-plugin/src/MavenIdeaImlUpdater.java Fri Jun  2 10:32:46 2006
@@ -0,0 +1,727 @@
+/*=============================================================================*
+ *  Copyright 2004 The Apache Software Foundation
+ *
+ *  Licensed 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.
+ *=============================================================================*/
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.NamedNodeMap;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.SAXException;
+
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerException;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamResult;
+import java.io.File;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.StringTokenizer;
+
+/**
+ * @author Sal Campana
+ */
+public class MavenIdeaImlUpdater
+{
+    private String m_iml;
+    private String m_lib;
+    private boolean m_isModified;
+
+    /**
+     * Component Element
+     */
+    private static final String COMPONENT_ELEM = "component";
+
+    /**
+     * Name Attribute
+     */
+    private static final String NAME_ATTRIB = "name";
+
+    /**
+     * NewModuleRootManager name value
+     */
+    private static final String NEW_ROOT_MANAGER_NAME = "NewModuleRootManager";
+
+    /**
+     * Type Attribute
+     */
+    private static final String TYPE_ATTRIB = "type";
+
+    /**
+     * Module-library type
+     */
+    private static final String MODULE_LIBRARY_TYPE = "module-library";
+
+    /**
+     * Order Entry Element
+     */
+    private static final String ORDER_ENTRY_ELEM = "orderEntry";
+
+    /**
+     * CLASSES Element
+     */
+    private static final String CLASSES_ELEM = "CLASSES";
+
+    /**
+     * root element
+     */
+    private static final String ROOT_ELEM = "root";
+
+    /**
+     * library element
+     */
+    private static final String LIBRARY_ELEM = "library";
+
+    /**
+     * URL attribute
+     */
+    private static final String URL_ATTRIB = "url";
+
+    /**
+     * JAVADOC element
+     */
+    private static final String JAVADOC_ELEM = "JAVADOC";
+
+    /**
+     * SOURCES element
+     */
+    private static final String SOURCES_ELEM = "SOURCES";
+
+    /**
+     * IML extension
+     */
+    private static final String IML_FILE_EXTENSION = ".iml";
+
+    /**
+     * DOCUMENT_ME
+     */
+    private static final String LIBRARY_TYPE = LIBRARY_ELEM;
+    private Document m_originalDom;
+    private Document m_modifiableDom;
+    private File m_imlFile;
+
+    /**
+     * Creates a new {@link MavenIdeaImlUpdater} object.
+     */
+    public MavenIdeaImlUpdater()
+    {
+        //set the system property to ensure the TransformerFactory is setup
+        System.setProperty("javax.xml.transform.TransformerFactory",
+                           "org.apache.xalan.processor.TransformerFactoryImpl");
+    }
+
+    /**
+     * Sets the IML file path
+     *
+     * @param imlvar
+     */
+    public void setIml(String imlvar)
+    {
+        m_iml = imlvar;
+    }
+
+    /**
+     * Sets the Maven-passed-in delimited String of dependencies.
+     *
+     * @param libvar DOCUMENT_ME
+     */
+    public void setLib(String libvar)
+    {
+        m_lib = libvar;
+    }
+
+    /**
+     * Returns the IML file path.
+     *
+     * @return Iml file path
+     */
+    public String getIml()
+    {
+        return m_iml;
+    }
+
+    /**
+     * Returns the Maven-passed-in delimited dependency string/
+     *
+     * @return Maven-passed-in delimited dependency string
+     */
+    public String getLib()
+    {
+        return m_lib;
+    }
+
+    /**
+     * This operation reads in the IML file and determines if the Maven-passed-in dependencies match the dependencies in the
+     * IML.  If an entry was removed, then it is removed from the IML file.  If an entry is modified then the entry in the IML
+     * is modified.  If the Maven dependencies do not exist in the IML, then they are added to it.
+     *
+     * @throws ParserConfigurationException
+     * @throws IOException
+     * @throws SAXException
+     * @throws TransformerException
+     */
+    public void update()
+            throws IOException,
+                   ParserConfigurationException,
+                   SAXException,
+                   TransformerException
+    {
+
+        Map depMap;
+        m_isModified = false;
+
+        //get the Maven-defined dependencies parsed into a Map.
+        depMap = getDependencyMap();
+
+        if ((m_iml == null) || "".equals(m_iml))
+        {
+            throw new IllegalArgumentException("The iml path was null!  Please ensure you have set the System property "
+                                               + "\"idea.project.iml\" to point to your Idea project's .iml file.");
+        }
+
+        //load the doms for modifying and aintaining a backup.
+        m_imlFile = setupImlDoms();
+
+
+        udateDependencies(m_imlFile, depMap);
+
+
+        addRemainingNewDependencies(depMap);
+        updateImlFile(m_imlFile);
+    }
+
+    private void udateDependencies(File imlFile, Map depMap)
+            throws IOException
+    {
+        //get <component> nodes
+        NodeList componentElemNodes = m_modifiableDom.getElementsByTagName(COMPONENT_ELEM);
+        int componentNodesLength = componentElemNodes.getLength();
+
+        for (int m = 0; m < componentNodesLength; m++)
+        {
+            Node componentNode = componentElemNodes.item(m);
+
+            if (Node.ELEMENT_NODE == componentNode.getNodeType())
+            {
+                Node componentNameNode = componentNode.getAttributes().getNamedItem(NAME_ATTRIB);
+
+                //find the NewModuleRoot  <component name="NewModuleRootManager">
+                if ((componentNameNode != null)
+                    && componentNameNode.getNodeValue().equals(NEW_ROOT_MANAGER_NAME))
+                {
+                    //get the <orderEntry> nodes
+                    NodeList orderEntryNodes = componentNode.getChildNodes();
+
+                    for (int p = 0; p < orderEntryNodes.getLength(); p++)
+                    {
+                        Node orderEntry = orderEntryNodes.item(p);
+
+                        if (Node.ELEMENT_NODE == orderEntry.getNodeType())
+                        {
+                            if (ORDER_ENTRY_ELEM.equals(orderEntry.getNodeName()))
+                            {
+                                Node typeAttribute = orderEntry.getAttributes().getNamedItem(TYPE_ATTRIB);
+
+                                //find module library
+                                if ((typeAttribute != null))
+                                {
+                                    //remove any libraries...we don't deal with them.
+                                    removeLibraryType(typeAttribute, orderEntry, componentNode);
+
+                                    //if its a module library...
+                                    if (typeAttribute.getNodeValue().equals(MODULE_LIBRARY_TYPE))
+                                    {
+                                        NodeList libraryNodes = orderEntry.getChildNodes();
+
+                                        for (int j = 0; j < libraryNodes.getLength(); j++)
+                                        {
+                                            Node library = libraryNodes.item(j);
+
+                                            updateEntries(library, imlFile, depMap, componentNode, orderEntry);
+                                        }
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    private void updateImlFile(File imlFile)
+            throws TransformerException, IOException
+    {
+        //write modifiableDom
+        if (m_isModified)
+        {
+            //backup the original file...
+
+            File tempFile =
+                    new File(m_iml + ".bak" );
+            writeFile(tempFile, m_originalDom);
+
+            //write the modified file....
+            writeFile(imlFile, m_modifiableDom);
+            System.out.println("Update of IntelliJ Idea was successful!");
+        }
+        else
+        {
+            System.out.println("The IntelliJ Idea .iml was up-to-date.  No changes were made.");
+        }
+    }
+
+    private void addRemainingNewDependencies(Map depMap) throws IOException
+    {
+        if (depMap.values().size() > 0)
+        {
+            System.out.println("Adding " + depMap.values().size()
+                               + " new entries to the IntelliJ Idea .iml file.");
+        }
+        //write the rest of the dep map nodes into the doc
+        Iterator iterator = depMap.values().iterator();
+        Node newModuleRootManager = null;
+        NodeList componentNodes = m_modifiableDom.getElementsByTagName(COMPONENT_ELEM);
+
+        //locate the NewModuleRootManager Node again...
+        for (int l = 0; l < componentNodes.getLength(); l++)
+        {
+            Node root = componentNodes.item(l);
+
+            if (Node.ELEMENT_NODE == root.getNodeType())
+            {
+                Node nameNode = root.getAttributes().getNamedItem(NAME_ATTRIB);
+
+                if (NEW_ROOT_MANAGER_NAME.equals(nameNode.getNodeValue()))
+                {
+                    newModuleRootManager = root;
+                }
+            }
+
+            if (newModuleRootManager != null)
+            {
+                //write the rest of the deps into the file
+                while (iterator.hasNext())
+                {
+                    m_isModified = true;
+                    String jarurl = (String) iterator.next();
+                    Element orderEntry = m_modifiableDom.createElement(ORDER_ENTRY_ELEM);
+                    orderEntry.setAttribute(TYPE_ATTRIB, MODULE_LIBRARY_TYPE);
+                    Element library = m_modifiableDom.createElement(LIBRARY_ELEM);
+                    Element classes = m_modifiableDom.createElement(CLASSES_ELEM);
+                    Element rootElem = m_modifiableDom.createElement(ROOT_ELEM);
+                    rootElem.setAttribute(URL_ATTRIB, jarurl);
+
+                    orderEntry.appendChild(library);
+                    library.appendChild(classes);
+                    classes.appendChild(rootElem);
+                    library.appendChild(m_modifiableDom.createElement(JAVADOC_ELEM));
+                    library.appendChild(m_modifiableDom.createElement(SOURCES_ELEM));
+                    updateApiAndJavaDocs(library, jarurl, m_modifiableDom);
+                    newModuleRootManager.appendChild(orderEntry);
+                }
+            }
+        }
+    }
+
+    private void updateEntries(Node library, File imlFile, Map depMap, Node componentNode, Node orderEntry)
+            throws IOException
+    {
+        if (Node.ELEMENT_NODE == library.getNodeType())
+        {
+            NodeList libraryChildren = library.getChildNodes();
+
+            for (int k = 0; k < libraryChildren.getLength(); k++)
+            {
+                Node child = libraryChildren.item(k);
+
+                if (Node.ELEMENT_NODE == child.getNodeType())
+                {
+                    //find classes
+                    if (CLASSES_ELEM.equals(child.getNodeName()))
+                    {
+                        NodeList classesChildren = child.getChildNodes();
+
+                        for (int l = 0; l < classesChildren.getLength(); l++)
+                        {
+                            Node root = classesChildren.item(l);
+
+                            if (Node.ELEMENT_NODE == root.getNodeType())
+                            {     //get to the <root> tag
+                                if (ROOT_ELEM.equals(root.getNodeName()))
+                                {
+                                    NamedNodeMap attributes = root.getAttributes();
+                                    Node attribNode = attributes.getNamedItem("url");
+
+                                    //current jar file entry
+                                    String jarurl = attribNode.getNodeValue();
+
+                                    if (jarurl.indexOf("$MODULE_DIR$") > -1)
+                                    {
+                                        jarurl = updateModuleDirUrl(jarurl, imlFile);
+                                    }
+                                    else
+                                    {
+                                        //fix normal urls also
+                                        jarurl = buildCanonicalJarUrl(jarurl);
+                                    }
+
+                                    //if the current iml defined dep is not in the maven deps remove
+                                    if (!depMap.containsKey(getJarPath(jarurl)))
+                                    {
+                                        m_isModified = true;
+                                        componentNode.removeChild(orderEntry);
+                                        System.out.println("Removing " + jarurl
+                                                           + " entry from the IntelliJ Idea .iml file.");
+
+                                        continue;
+                                    }
+                                    else
+                                    {
+                                        String mavenDepJar =
+                                                (String) depMap.get(getJarPath(jarurl));
+
+                                        //if the entry in iml doesn't match new entry...update
+                                        if (!mavenDepJar.equals(buildJarUrl(jarurl)))
+                                        {
+                                            m_isModified = true;
+                                            //update with the new value
+                                            attribNode.setNodeValue(mavenDepJar);
+                                            System.out.println("Updated " + jarurl + " entry to "
+                                                               + mavenDepJar);
+                                        }
+
+                                        updateApiAndJavaDocs(library, mavenDepJar, m_modifiableDom);
+
+
+                                        //remove from the depMap to ensure it doesn't get written into the file later
+                                        depMap.remove(getJarPath(jarurl));
+                                    }
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    private void removeLibraryType(Node typeAttribute, Node orderEntry, Node componentNode)
+    {
+        if (typeAttribute.getNodeValue().equals(LIBRARY_TYPE))
+        {
+            System.out.println("Removing Library: "
+                               + orderEntry.getAttributes().getNamedItem(NAME_ATTRIB)
+                                 .getNodeValue()
+                               + " from the IntelliJ Idea .iml file.  The plugin maintains jar entries only.");
+            componentNode.removeChild(orderEntry);
+        }
+    }
+
+    private File setupImlDoms()
+            throws SAXException, IOException, ParserConfigurationException
+    {
+        //setup File for IML file...
+        File imlFile = new File(m_iml);
+
+        if (!imlFile.exists())
+        {
+            throw new IllegalArgumentException("The provided .iml path: " + m_iml
+                                               + " does not exist, please check your settings.");
+        }
+
+        if (imlFile.isDirectory())
+        {
+            throw new IllegalArgumentException("The provided .iml path: " + m_iml
+                                               + " is a directory!, please check your settings and ensure you are pointing to the actual .iml file.");
+        }
+
+        //hold a ref to the original file
+        m_originalDom = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(imlFile);
+
+        //get a reference to modify
+        m_modifiableDom = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(imlFile);
+        return imlFile;
+    }
+
+    private void updateApiAndJavaDocs(Node library, String mavenDepJar, Document modifiableDom) throws IOException
+    {
+        //jar:.....
+        String firstHalfUrl = mavenDepJar.substring(0, mavenDepJar.lastIndexOf("-"));
+        //...jar!/
+        String secondHalfUrl = mavenDepJar.substring(mavenDepJar.lastIndexOf("-"));
+
+        String apiURLString = null;
+        String apiJarURL = firstHalfUrl + "-api" + secondHalfUrl;
+
+        String srcURLString = null;
+        String srcJarURLString = firstHalfUrl + "-src" + secondHalfUrl;
+
+        //check for dir...remove jar from beginning and .jar!/ from end, then add file
+        String srcDirURL = "file" + srcJarURLString.substring(3, srcJarURLString.length() - 6);
+        //File srcLocation = new File(getJarFilePath(srcJarURLString));
+        File srcLocation = new File(srcDirURL.substring(6));
+        srcURLString = srcDirURL;
+        if (!srcLocation.exists())
+        {
+            //remove  !/ from the back
+            srcJarURLString = srcJarURLString.substring(0, srcJarURLString.length());
+            srcLocation = new File(getJarFilePath(srcJarURLString));
+            srcURLString = srcJarURLString;
+        }
+
+        //check for dir...remove jar from beginning and .jar!/ from end, then add file
+        String apiDirURL = "file" + apiJarURL.substring(3, apiJarURL.length() - 6);
+        //strip off file:// before testing if it is there
+        File apiLocation = new File(apiDirURL.substring(6));
+        apiURLString = apiDirURL;
+        if (!apiLocation.exists())
+        {
+            //remove !/ from the back
+            apiJarURL = apiJarURL.substring(0, apiJarURL.length());
+            apiLocation = new File(getJarFilePath(apiJarURL));
+            apiURLString = apiJarURL;
+        }
+        apiURLString = apiURLString.replace('\\', '/');
+        srcURLString = srcURLString.replace('\\', '/');
+
+        NodeList childNodes = library.getChildNodes();
+        for (int p = 0; p < childNodes.getLength(); p++)
+        {
+            Node child = childNodes.item(p);
+            if (Node.ELEMENT_NODE == child.getNodeType())
+            {
+                setRootUrl(JAVADOC_ELEM, child, apiLocation, apiURLString, modifiableDom);
+                setRootUrl(SOURCES_ELEM, child, srcLocation, srcURLString, modifiableDom);
+            }
+        }
+    }
+
+    private void setRootUrl(String elementName, Node child, File file, String url, Document modifiableDom) throws IOException
+    {
+        if (elementName.equals(child.getNodeName()) && file.exists())
+        {
+            NodeList classesChildren = child.getChildNodes();
+            if (classesChildren.getLength() == 0)
+            {
+                //this is the case where the element is there but does not have a child for <root>
+                //so we add it
+                Element rootElem = modifiableDom.createElement(ROOT_ELEM);
+                rootElem.setAttribute(URL_ATTRIB, url);
+                child.appendChild(rootElem);
+                m_isModified = true;
+            }
+            else
+            {
+                for (int l = 0; l < classesChildren.getLength(); l++)
+                {
+                    Node root = classesChildren.item(l);
+
+                    if (Node.ELEMENT_NODE == root.getNodeType())
+                    {     //get to the <root> tag
+                        if (ROOT_ELEM.equals(root.getNodeName()))
+                        {
+                            NamedNodeMap attributes = root.getAttributes();
+                            Node attribNode = attributes.getNamedItem(URL_ATTRIB);
+
+                            //determine if this is a new entry or simply the same one...
+                            if(attribNode != null )
+                            {
+                                String imlFileUrl = attribNode.getNodeValue();
+                                if (imlFileUrl.lastIndexOf("") > -1)
+                                {
+                                    imlFileUrl = updateModuleDirUrl(imlFileUrl,m_imlFile);
+                                }
+                                //compare what is in the iml to the actual file path to see if change occurred
+                                if( !imlFileUrl.equals(file.toString()) )
+                                {
+                                m_isModified = true;
+                                attribNode.setNodeValue(url);
+                                }
+                            }
+                        }
+                    }
+                }
+            }
+        }
+    }
+
+    private String updateModuleDirUrl(String jarurl, File imlFile) throws IOException
+    {
+        File newfile = null;
+        //strip off the $MODULE_DIR$
+        if (jarurl.lastIndexOf("$MODULE_DIR$") > -1)
+        {
+            jarurl =
+            jarurl.substring(jarurl.lastIndexOf("$MODULE_DIR$") + "$MODULE_DIR$".length(),
+                             jarurl.length());
+            newfile =
+                new File(imlFile.getParentFile().getCanonicalFile(),
+                         jarurl);
+        }
+        else if(jarurl.indexOf("file://") > -1)
+        {
+            newfile = new File(jarurl.substring("file://".length()));
+        }
+        else if(jarurl.indexOf("jar://") > -1)
+        {
+            newfile = new File(jarurl.substring("jar://".length()));  
+        }
+
+        jarurl = newfile.getCanonicalPath();
+        if(jarurl.endsWith("!"))
+        {
+            jarurl = jarurl.substring(0, jarurl.lastIndexOf("!"));
+        }
+        return jarurl;
+    }
+
+    private String buildCanonicalJarUrl(String jarurl) throws IOException
+    {
+        if (jarurl.startsWith("jar://"))
+        {
+            String newJarUrl = jarurl.substring(6);
+            newJarUrl = newJarUrl.substring(0, newJarUrl.length() - 2);
+            File f = new File(newJarUrl);
+            newJarUrl = f.getCanonicalPath();
+            return buildJarUrl(newJarUrl);
+
+        }
+        return jarurl;
+    }
+
+    /**
+     * Writes a DOM to the filesystem using the Xalan TransformerFactory.
+     *
+     * @param file
+     * @param dom
+     * @throws TransformerException
+     * @throws IOException
+     */
+    private void writeFile(File file,
+                           Document dom)
+            throws TransformerException,
+                   IOException
+    {
+        file.createNewFile();
+
+        // Use a Transformer for output
+        TransformerFactory tFactory = TransformerFactory.newInstance();
+        Transformer transformer = tFactory.newTransformer();
+
+        DOMSource source = new DOMSource(dom);
+        StreamResult result = new StreamResult(file);
+        transformer.transform(source, result);
+    }
+
+    /**
+     * Returns a map of Maven-passed-in dependencies for the project.
+     * <p/>
+     * The key is the jar path jarPath() and the value is the IntelliJ required jar url buildJarUrl()
+     *
+     * @return Dependency map.
+     */
+    private Map getDependencyMap()
+            throws IOException
+    {
+        if ((m_lib == null) || "".equals(m_lib))
+        {
+            throw new IllegalArgumentException("The Maven-pseed-in dependency list was null!");
+        }
+
+        Map deps = new HashMap();
+        m_lib = m_lib.replace('\\', '/');
+        StringTokenizer tokenizer = new StringTokenizer(m_lib, File.pathSeparator);
+
+        while (tokenizer.hasMoreTokens())
+        {
+            String token = tokenizer.nextToken();
+            File f = new File(token);
+            deps.put(getJarPath(f.getCanonicalPath()),
+                     buildJarUrl(f.getCanonicalPath()));
+        }
+
+        return deps;
+    }
+
+    /**
+     * Returns the jar-path which is the path to the jar minus the "jar://" and -XXX.jar (version info) This is used to
+     * normalize the url string per jar file.
+     *
+     * @param url URL string to be modified
+     * @return jar pat minus "jar://" AND -XXX.jar (Maven Version info)
+     */
+    private String getJarPath(String url)
+    {
+        //strip off the -00....jar to ensure its the jar name without the version info
+        if (url.lastIndexOf("-") > 0)
+        {
+            url = url.substring(0,
+                                url.lastIndexOf("-"));
+
+            //remove if case with "jar://"
+            if (url.startsWith("jar"))
+            {
+                url = url.substring(6);
+            }
+        }
+
+        return url;
+    }
+
+    private String getJarFilePath(String jarURL)
+    {
+        String jarFilePath = jarURL;
+        if (jarURL.startsWith("jar://"))
+        {
+            jarFilePath = jarFilePath.substring(6);
+        }
+        if (jarURL.endsWith("!/"))
+        {
+            jarFilePath = jarFilePath.substring(0, jarFilePath.length() - 2);
+        }
+        return jarFilePath;
+    }
+
+    /**
+     * Builds the jar url as expected by the IntelliJ config.
+     *
+     * @param url
+     * @return
+     */
+    private String buildJarUrl(String url)
+    {
+        if (url.startsWith("jar"))
+        {
+            return url;
+        }
+        String newUrl = "jar://" + url;
+        if (!url.endsWith("!"))
+        {
+            newUrl = newUrl + "!/";
+        }
+        else
+        {
+            newUrl = newUrl + "/";
+        }
+        return newUrl;
+    }
+}
\ No newline at end of file

Modified: webservices/muse/trunk/maven.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/maven.xml?rev=411218&r1=411217&r2=411218&view=diff
==============================================================================
--- webservices/muse/trunk/maven.xml (original)
+++ webservices/muse/trunk/maven.xml Fri Jun  2 10:32:46 2006
@@ -37,6 +37,36 @@
     <j:set var="maven.test.skip" value="true" />    
   </postGoal>
         
+  <preGoal name="java:compile">
+      <javac srcdir="${maven.src.dir}/java" destdir="${maven.build.dest}" classpath="${java.home}/../lib/tools.jar">
+         <include name="org/apache/ws/util/i18n/doclet/ResourcePropertiesGeneratorDoclet.java" />
+      </javac>
+  </preGoal>
+    <postGoal name="java:compile">
+      <attainGoal name="generate-resource-bundles" />
+  </postGoal>
+  
+    <!--  ===================================================================  -->
+    <!--   "generate-resource-bundles" - generates resource bundles for I18n   -->
+    <!--  ===================================================================  -->
+    <goal name="generate-resource-bundles"
+          description="generates resource bundles for I18n">
+  
+        <javadoc protected="true"
+                 destdir="${maven.build.dest}"
+                 failonerror="true">
+           <classpath>
+              <pathelement path="${maven.build.dest}" />
+              <pathelement path="${java.home}/../lib/tools.jar" />
+              <path refid="maven.dependency.classpath" />
+           </classpath>
+           <doclet name="org.apache.ws.util.i18n.doclet.ResourcePropertiesGeneratorDoclet"
+                   path="${maven.build.dest}" />
+           <packageset dir="${maven.src.dir}/java" defaultexcludes="yes">
+              <include name="org/apache/ws/**" />
+           </packageset>
+        </javadoc>
+  </goal>
   <!-- ================================================================== -->
   <!-- W E B S I T E   G O A L                         			  -->
   <!-- ================================================================== -->

Modified: webservices/muse/trunk/project.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/project.xml?rev=411218&r1=411217&r2=411218&view=diff
==============================================================================
--- webservices/muse/trunk/project.xml (original)
+++ webservices/muse/trunk/project.xml Fri Jun  2 10:32:46 2006
@@ -105,18 +105,6 @@
         <war.bundle>true</war.bundle>
       </properties>
     </dependency>
-        
-    <dependency>
-      <groupId>wsrf</groupId>
-      <artifactId>wsrf</artifactId>
-      <version>1.0</version>    
-      <url>http://ws.apache.org/wsrf/</url>
-      <properties>
-	<license>ApacheLicense-2.0.txt</license>
-	<usage>WSRF impl</usage>
-	<war.bundle>true</war.bundle>
-      </properties>
-    </dependency>
 
     <dependency>
       <groupId>wsrf</groupId>
@@ -406,30 +394,50 @@
 	    <war.bundle>true</war.bundle>
 	</properties>
     </dependency>
-    
-    <dependency> 
-	<groupId>pubscribe</groupId>
-	<artifactId>pubscribe</artifactId>
-	<version>1.0</version>
-	<url>http://ws.apache.org/pubscribe/</url>
-	<properties>
-	    <license>ApacheLicense-2.0.txt</license>
-	    <usage>Pubscribe WSN/WSE implementation</usage>
-	    <war.bundle>true</war.bundle>
-	</properties>
-    </dependency> 
+
+    <dependency>
+      <groupId>yfilter</groupId>
+      <artifactId>yfilter</artifactId>
+      <version>1.0</version>
+      <url>http://yfilter.cs.berkeley.edu/</url>
+      <properties>
+        <license>YFilterLicense-1.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>efficient parallel XPath Filtering</usage>
+      </properties>
+    </dependency>
+    <dependency>
+      <groupId>addressing</groupId>
+      <artifactId>addressing</artifactId>
+      <version>8_31_05</version>
+      <url>http://ws.apache.org/ws-fx/addressing/</url>
+      <properties>
+	<war.bundle>true</war.bundle>
+      </properties>
+    </dependency>    
+    <dependency>
+      <groupId>pubscribe</groupId>
+      <artifactId>wse-xbeans</artifactId>
+      <version>1.0</version>
+      <url>http://ws.apache.org/pubscribe/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <usage>XMLBeans for WS-Eventing spec types</usage>
+        <war.bundle>true</war.bundle>
+      </properties>
+    </dependency>   
 
     <dependency>
       <groupId>pubscribe</groupId>
       <artifactId>submgr-xbeans</artifactId>
-      <version>SNAPSHOT</version>
-      <url>http://ws.apache.org/ws-fx/pubscribe/</url>
+      <version>1.0</version>
+      <url>http://ws.apache.org/pubscribe/</url>
       <properties>
         <license>ApacheLicense-2.0.txt</license>
-        <usage>XMLBeans for WS-Eventing spec types</usage>
+        <usage>XMLBeans for custom SubscriptionManager types</usage>
         <war.bundle>true</war.bundle>
       </properties>
-    </dependency>    
+    </dependency>
     
     <dependency>
       <groupId>jaxen</groupId>

Added: webservices/muse/trunk/status.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/status.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/status.xml (added)
+++ webservices/muse/trunk/status.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,74 @@
+<?xml version="1.0"?>
+<!--
+  Copyright 2002-2004 The Apache Software Foundation
+
+  Licensed 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.
+-->
+<status>
+
+  <developers>
+    <person name="Ian P. Springer"      email="ian.springer@hp.com"      id="ips" />
+    <!-- Add more people here -->
+  </developers>
+
+  <changes>
+    <!-- Add new releases here -->
+    <release version="0.1" date="unreleased">
+      <!-- Some action types have associated images. By default, images are
+      defined for 'add', 'fix', 'remove', 'update' and 'hack'. If you add
+      src/documentation/resources/images/<foo>.jpg images, these will
+      automatically be used for entries of type <foo>. -->
+
+      <action dev="JB" type="add" context="admin">
+        Initial Import
+      </action>
+      <!-- Sample action:
+      <action dev="JB" type="fix" due-to="Joe Contributor"
+          due-to-email="joec@apache.org" fixes-bug="123">
+          Fixed a bug in the Foo class.
+        </action>
+        -->
+    </release>
+  </changes>
+
+  <todo>
+    <actions priority="high">
+      <action context="docs" dev="JB">
+        Customize this template project with your project's details.  This
+        TODO list is generated from 'status.xml'.
+      </action>
+      <action context="docs" dev="JB">
+        Add lots of content.  XML content goes in
+        <code>src/documentation/content/xdocs</code>, or wherever the
+        <code>${project.xdocs-dir}</code> property (set in
+        <code>forrest.properties</code>) points.
+      </action>
+      <action context="feedback" dev="JB">
+        Mail <link
+          href="mailto:dev@ws-rp.hpsen.com">dev@ws-rp.hpsen.com</link>
+        with feedback.
+      </action>
+    </actions>
+    <!-- Add todo items. @context is an arbitrary string. Eg:
+    <actions priority="high">
+      <action context="code" dev="SN">
+      </action>
+    </actions>
+    <actions priority="medium">
+      <action context="docs" dev="open">
+      </action>
+    </actions>
+    -->
+  </todo>
+
+</status>

Added: webservices/muse/trunk/wsa-xbeans/maven.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsa-xbeans/maven.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsa-xbeans/maven.xml (added)
+++ webservices/muse/trunk/wsa-xbeans/maven.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+
+<!--
+   For the definitions of Jelly tags, see these as reference
+   * http://jakarta.apache.org/commons/jelly/libs/
+   * http://jakarta.apache.org/commons/jelly/tags.html
+-->
+
+<project default="jar:jar"    
+         xmlns:j="jelly:core"
+         xmlns:maven="jelly:maven">
+  
+  <postGoal name="java:compile">
+    <attainGoal name="generate" />
+  </postGoal>
+  
+  <postGoal name="jar:jar">
+    <attainGoal name="src-jar"/>
+  </postGoal>  
+
+  <goal name="generate"
+        description="generate XmlBeans for WSA spec types">
+    
+      <property name="gen.src.dir" location="${maven.src.dir}/java" />
+      <echo>Writing generated XMLBeans source files to: ${gen.src.dir}</echo>
+      <delete dir="${gen.src.dir}"/>
+      <mkdir dir="${gen.src.dir}"/>
+
+      <property name="gen.classes.dir" location="${maven.build.dest}" />
+      <echo>Writing generated XMLBeans classes to: ${gen.classes.dir}</echo>
+      <delete dir="${gen.classes.dir}"/>
+      <mkdir dir="${gen.classes.dir}"/>
+
+      <pathconvert refid="maven.dependency.classpath" dirsep="/" property="cp.value" />
+      
+      <!-- NOTE: fork must be enabled to circumvent XMLBeans/Maven bug! -->
+      <java classname="org.apache.xmlbeans.impl.tool.SchemaCompiler" 
+            classpathref="maven.dependency.classpath" 
+            verbose="true" 
+            fork="true"
+            maxmemory="256M">         
+         <arg value="-cp" />
+         <arg value="${cp.value}" />
+         <!--<arg value="-debug" />-->
+         <arg value="-dl" />
+         <arg value="-d" />
+         <arg value="${gen.classes.dir}" />
+         <arg value="-src" />
+         <arg value="${gen.src.dir}" />
+         <arg value="-verbose" />
+         <arg line="${maven.src.dir}/wsdl" />
+      </java>
+
+<!--
+      <taskdef name="schemaCompiler"
+               classname="org.apache.xmlbeans.impl.tool.XMLBean"
+               classpathref="maven.dependency.classpath" />    
+
+      <schemaCompiler classpathref="maven.dependency.classpath"
+                      srcgendir="${gen.src.dir}"
+                      classgendir="${gen.classes.dir}"
+                      download="on"
+                      verbose="on"
+                      debug="on"
+                      debugLevel="lines,vars,source"
+                      failonerror="on">
+         
+         <fileset dir="${maven.src.dir}/wsdl" />
+        
+      </schemaCompiler>
+-->
+  </goal>
+  
+  <goal name="src-jar">
+    <jar jarfile="${maven.build.dir}/${pom.artifactId}-src-${pom.currentVersion}.jar" 
+         basedir="${gen.src.dir}" />
+  </goal>  
+  
+</project>

Added: webservices/muse/trunk/wsa-xbeans/project.properties
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsa-xbeans/project.properties?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsa-xbeans/project.properties (added)
+++ webservices/muse/trunk/wsa-xbeans/project.properties Fri Jun  2 10:32:46 2006
@@ -0,0 +1,15 @@
+# -----------------------------------------------------------------------------
+# Default properties for the Maven build. You can override these properties
+# either by defining a build.properties file with the overriden properties
+# or by passing them on the command line as system parameters (-D).
+# -----------------------------------------------------------------------------
+
+# MAVEN CORE
+##############
+# comma-separated list of remote JAR repository URLs
+maven.repo.remote = http://www.apache.org/dist/java-repository/, http://cvs.apache.org/repository/, http://mirrors.sunsite.dk/maven/, http://people.apache.org/~ips/maven-repo/
+
+# JAVA PLUGIN
+##############
+maven.compile.debug = on
+maven.compile.target = 1.4

Added: webservices/muse/trunk/wsa-xbeans/project.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsa-xbeans/project.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsa-xbeans/project.xml (added)
+++ webservices/muse/trunk/wsa-xbeans/project.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,92 @@
+<?xml version="1.0"?>
+
+<!-- WSRF JNDI-CONFIG Project Descriptor - defines Project Object Model (POM) -->
+
+<!-- Schema for this file is at:    http://maven.apache.org/xsd/maven-project-3.0.0.xsd -->
+<!-- Reference for this file is at: http://maven.apache.org/reference/project-descriptor.html -->
+
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:noNamespaceSchemaLocation="http://maven.apache.org/xsd/maven-project-3.0.0.xsd">
+
+  <pomVersion>3</pomVersion>
+  <name>XmlBeans for the WSA spec types</name>
+  <id>wsa-xbeans</id>
+  <groupId>wsrf</groupId>
+  <currentVersion>SNAPSHOT</currentVersion>
+  <organization>
+    <name>Apache Software Foundation</name>
+    <url>http://www.apache.org/</url>
+  </organization>
+  
+  <repository>
+        <connection>scm|svn|http://svn.apache.org/repos/asf/incubator/apollo/trunk/</connection>
+        <developerConnection>scm|svn|https://svn.apache.org/repos/asf/incubator/apollo/trunk/</developerConnection>
+        <url>http://svn.apache.org/viewcvs.cgi/incubator/apollo/trunk/</url>
+  </repository> 
+  
+  <versions>
+    <version>
+      <id>1_0-beta1</id>
+      <name>1.0-beta1</name>
+      <tag>HEAD</tag>
+    </version>
+  </versions>
+    
+  <developers>
+
+    <developer>
+      <name>Ian Springer</name>
+      <id>ips</id>
+      <email>ian DOT springer AT hp DOT com</email>
+      <organization>Hewlett-Packard Company</organization>
+      <roles>
+        <role>Developer</role>
+      </roles>
+      <timezone>-5</timezone>
+    </developer>
+
+  </developers>
+
+  <dependencies>
+
+<!--    
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xbean</artifactId>
+      <version>1.0.4</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>
+-->
+
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xbean</artifactId>
+      <version>2.0.0</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>
+
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xmlbeans-jsr173-api</artifactId>
+      <version>2.0-dev</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>       
+    
+  </dependencies>
+
+</project>

Added: webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2003_03.xsd
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2003_03.xsd?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2003_03.xsd (added)
+++ webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2003_03.xsd Fri Jun  2 10:32:46 2006
@@ -0,0 +1,114 @@
+<?xml version="1.0"?>
+
+<!-- 
+ 
+Legal Disclaimer
+
+The presentation, distribution or other dissemination of the information 
+contained in this document is not a license, either expressly or impliedly, 
+to any intellectual property owned or controlled by BEA or IBM or Microsoft
+and\or any other third party.  BEA and IBM and Microsoft and\or any other
+third party may have patents, patent applications, trademarks, copyrights, 
+or other intellectual property rights covering subject matter in this 
+document.  The furnishing of this document does not give you any license 
+to BEA's and IBM's and Microsoft's or any other third party's patents, 
+trademarks, copyrights, or other intellectual property.
+
+This document and the information contained herein is provided on an "AS IS"
+basis and to the maximum extent permitted by applicable law, BEA and IBM 
+and Microsoft provide the document AS IS AND WITH ALL FAULTS, and hereby 
+disclaims all other warranties and conditions, either express, implied or 
+statutory, including, but not limited to, any (if any) implied warranties, 
+duties or conditions of merchantability, of fitness for a particular 
+purpose, of accuracy or completeness of responses, of results, of 
+workmanlike effort, of lack of viruses, and of lack of negligence, all with
+regard to the document. ALSO, THERE IS NO WARRANTY OR CONDITION OF 
+TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION OR 
+NON-INFRINGEMENT OF ANY INTELLECTUAL PROPERTY RIGHTS WITH REGARD TO THE 
+DOCUMENT.
+
+IN NO EVENT WILL BEA or IBM or MICROSOFT BE LIABLE TO ANY OTHER PARTY FOR THE
+COST OF PROCURING SUBSTITUTE GOODS OR SERVICES, LOST PROFITS, LOSS OF USE, 
+LOSS OF DATA, OR ANY INCIDENTAL, CONSEQUENTIAL, DIRECT, INDIRECT, OR SPECIAL 
+DAMAGES WHETHER UNDER CONTRACT, TORT, WARRANTY, OR OTHERWISE, ARISING IN ANY 
+WAY OUT OF THIS OR ANY OTHER AGREEMENT RELATING TO THIS DOCUMENT, WHETHER OR 
+NOT SUCH PARTY HAD ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.
+
+Copyright Notice
+
+Copyright 2003 BEA Systems Inc. and IBM Corporation and Microsoft Corporation. All rights reserved.
+
+-->
+
+<xs:schema targetNamespace="http://schemas.xmlsoap.org/ws/2003/03/addressing" xmlns:wsa="http://schemas.xmlsoap.org/ws/2003/03/addressing" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" blockDefault="#all">
+
+   <!-- //////////////////// WS-Addressing //////////////////// -->
+	<!-- Endpoint reference -->
+	<xs:element name="EndpointReference" type="wsa:EndpointReferenceType"/>
+	<xs:complexType name="EndpointReferenceType">
+		<xs:sequence>
+			<xs:element name="Address" type="wsa:AttributedURI"/>
+			<xs:element name="ReferenceProperties" type="wsa:ReferencePropertiesType" minOccurs="0"/>
+			<xs:element name="PortType" type="wsa:AttributedQName" minOccurs="0"/>
+			<xs:element name="ServiceName" type="wsa:ServiceNameType" minOccurs="0"/>
+			<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded">
+				<xs:annotation>
+					<xs:documentation>
+					 If "Policy" elements from namespace "http://schemas.xmlsoap.org/ws/2002/12/policy#policy" are used, they must appear first (before any extensibility elements).
+					</xs:documentation>
+				</xs:annotation>
+                        </xs:any>			
+		</xs:sequence>
+		<xs:anyAttribute namespace="##other" processContents="lax"/>
+	</xs:complexType>
+	<xs:complexType name="ReferencePropertiesType">
+		<xs:sequence>
+			<xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+		</xs:sequence>
+	</xs:complexType>
+	<xs:complexType name="ServiceNameType">
+		<xs:simpleContent>
+			<xs:extension base="xs:QName">
+				<xs:attribute name="PortName" type="xs:NCName"/>
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<!-- Message information header blocks -->
+	<xs:element name="MessageID" type="wsa:AttributedURI"/>
+	<xs:element name="RelatesTo" type="wsa:Relationship"/>
+	<xs:element name="To" type="wsa:AttributedURI"/>
+	<xs:element name="Action" type="wsa:AttributedURI"/>
+	<xs:element name="From" type="wsa:EndpointReferenceType"/>
+	<xs:element name="ReplyTo" type="wsa:EndpointReferenceType"/>
+	<xs:element name="FaultTo" type="wsa:EndpointReferenceType"/>
+	<xs:element name="Recipient" type="wsa:EndpointReferenceType"/>
+	<xs:complexType name="Relationship">
+		<xs:simpleContent>
+			<xs:extension base="xs:anyURI">
+				<xs:attribute name="RelationshipType" type="xs:QName" use="optional"/>
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<xs:simpleType name="RelationshipTypeValues">
+		<xs:restriction base="xs:QName">
+			<xs:enumeration value="wsa:Response"/>
+		</xs:restriction>
+	</xs:simpleType>
+	<!-- Common declarations and definitions -->
+	<xs:complexType name="AttributedQName">
+		<xs:simpleContent>
+			<xs:extension base="xs:QName">
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+	<xs:complexType name="AttributedURI">
+		<xs:simpleContent>
+			<xs:extension base="xs:anyURI">
+				<xs:anyAttribute namespace="##other" processContents="lax"/>
+			</xs:extension>
+		</xs:simpleContent>
+	</xs:complexType>
+</xs:schema>

Added: webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2004_08_10.xsd
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2004_08_10.xsd?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2004_08_10.xsd (added)
+++ webservices/muse/trunk/wsa-xbeans/src/wsdl/wsa/WS-Addressing-2004_08_10.xsd Fri Jun  2 10:32:46 2006
@@ -0,0 +1,134 @@
+<?xml version="1.0"?>
+
+<!-- 
+Copyright 2002-2004 BEA Systems Inc., International Business Machines Corporation, 
+Microsoft Corporation, Inc, SAP AG, and Sun Microsystems, Inc.. All rights reserved. 
+
+Permission to copy, display, perform, modify and distribute the WS-Addressing Specification, 
+and to authorize others to do the foregoing, in any medium without fee or royalty is hereby
+granted for the purpose of developing and evaluating the WS-Addressing Specification.
+
+BEA, IBM, Microsoft, SAP AG, and Sun Microsystems (collectively, the "Authors") each agree 
+to grant a license to third parties, under royalty-free  and otherwise reasonable, 
+non-discriminatory terms and conditions, to their respective essential patent claims that
+they deem necessary to implement the WS-Addressing Specification.
+
+DISCLAIMERS:
+
+THE WS-Addressing Specification IS PROVIDED "AS IS", AND THE AUTHORS MAKE NO REPRESENTATIONS
+OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF 
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE 
+CONTENTS OF THE WS-Addressing Specification IS SUITABLE FOR ANY PURPOSE; NOR THAT THE 
+IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, 
+TRADEMARKS OR OTHER RIGHTS.
+
+THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL 
+DAMAGES ARISING OUT OF ANY USE OF THE WS-Addressing Specification OR THE PERFORMANCE OR 
+IMPLEMENTATION OF THE CONTENTS THEREOF.
+
+You may remove these disclaimers from your modified versions of the WS-Addressing 
+Specification provided that you effectively disclaim all warranties and liabilities on behalf 
+of all copyright holders in the copies of any such modified versions you distribute.
+
+The name and trademarks of the Authors may NOT be used in any manner, including advertising 
+or publicity pertaining to the WS-Addressing Specification or its contents without specific, 
+written prior permission. Title to copyright in the WS-Addressing Specification will at all 
+times remain with the Authors.
+
+No other rights are granted by implication, estoppel or otherwise.
+-->
+
+<xs:schema targetNamespace="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" elementFormDefault="qualified" blockDefault="#all">
+  <!-- //////////////////// WS-Addressing //////////////////// -->
+  <!-- Endpoint reference -->
+  <xs:element name="EndpointReference" type="wsa:EndpointReferenceType"/>
+  <xs:complexType name="EndpointReferenceType">
+    <xs:sequence>
+      <xs:element name="Address" type="wsa:AttributedURI"/>
+      <xs:element name="ReferenceProperties" type="wsa:ReferencePropertiesType" minOccurs="0"/>
+      <xs:element name="ReferenceParameters" type="wsa:ReferenceParametersType" minOccurs="0"/>
+      <xs:element name="PortType" type="wsa:AttributedQName" minOccurs="0"/>
+      <xs:element name="ServiceName" type="wsa:ServiceNameType" minOccurs="0"/>
+      <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded">
+        <xs:annotation>
+          <xs:documentation>
+					 If "Policy" elements from namespace "http://schemas.xmlsoap.org/ws/2002/12/policy#policy" are used, they must appear first (before any extensibility elements).
+					</xs:documentation>
+        </xs:annotation>
+      </xs:any>
+    </xs:sequence>
+    <xs:anyAttribute namespace="##other" processContents="lax"/>
+  </xs:complexType>
+  <xs:complexType name="ReferencePropertiesType">
+    <xs:sequence>
+      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="ReferenceParametersType">
+    <xs:sequence>
+      <xs:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:complexType name="ServiceNameType">
+    <xs:simpleContent>
+      <xs:extension base="xs:QName">
+        <xs:attribute name="PortName" type="xs:NCName"/>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <!-- Message information header blocks -->
+  <xs:element name="MessageID" type="wsa:AttributedURI"/>
+  <xs:element name="RelatesTo" type="wsa:Relationship"/>
+  <xs:element name="To" type="wsa:AttributedURI"/>
+  <xs:element name="Action" type="wsa:AttributedURI"/>
+  <xs:element name="From" type="wsa:EndpointReferenceType"/>
+  <xs:element name="ReplyTo" type="wsa:EndpointReferenceType"/>
+  <xs:element name="FaultTo" type="wsa:EndpointReferenceType"/>
+  <xs:complexType name="Relationship">
+    <xs:simpleContent>
+      <xs:extension base="xs:anyURI">
+        <xs:attribute name="RelationshipType" type="xs:QName" use="optional"/>
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:simpleType name="RelationshipTypeValues">
+    <xs:restriction base="xs:QName">
+      <xs:enumeration value="wsa:Reply"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:element name="ReplyAfter" type="wsa:ReplyAfterType"/>
+  <xs:complexType name="ReplyAfterType">
+    <xs:simpleContent>
+      <xs:extension base="xs:nonNegativeInteger">
+        <xs:anyAttribute namespace="##other"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:simpleType name="FaultSubcodeValues">
+    <xs:restriction base="xs:QName">
+      <xs:enumeration value="wsa:InvalidMessageInformationHeader"/>
+      <xs:enumeration value="wsa:MessageInformationHeaderRequired"/>
+      <xs:enumeration value="wsa:DestinationUnreachable"/>
+      <xs:enumeration value="wsa:ActionNotSupported"/>
+      <xs:enumeration value="wsa:EndpointUnavailable"/>
+    </xs:restriction>
+  </xs:simpleType>
+  <xs:attribute name="Action" type="xs:anyURI"/>
+  <!-- Common declarations and definitions -->
+  <xs:complexType name="AttributedQName">
+    <xs:simpleContent>
+      <xs:extension base="xs:QName">
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+  <xs:complexType name="AttributedURI">
+    <xs:simpleContent>
+      <xs:extension base="xs:anyURI">
+        <xs:anyAttribute namespace="##other" processContents="lax"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+</xs:schema>

Added: webservices/muse/trunk/wse-xbeans/maven.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wse-xbeans/maven.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wse-xbeans/maven.xml (added)
+++ webservices/muse/trunk/wse-xbeans/maven.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+
+<!--
+   For the definitions of Jelly tags, see these as reference
+   * http://jakarta.apache.org/commons/jelly/libs/
+   * http://jakarta.apache.org/commons/jelly/tags.html
+-->
+
+<project default="jar:jar"    
+         xmlns:j="jelly:core"
+         xmlns:maven="jelly:maven">
+  
+  <postGoal name="java:compile">
+    <attainGoal name="generate" />
+  </postGoal>
+  
+  <postGoal name="jar:jar">
+    <attainGoal name="src-jar"/>
+  </postGoal>  
+
+  <goal name="generate"
+        description="generate XMLBeans for WSE spec types">
+    
+      <property name="gen.src.dir" location="${maven.src.dir}/java" />
+      <echo>Writing generated XMLBeans source files to: ${gen.src.dir}</echo>
+      <delete dir="${gen.src.dir}"/>
+      <mkdir dir="${gen.src.dir}"/>
+
+      <property name="gen.classes.dir" location="${maven.build.dest}" />
+      <echo>Writing generated XMLBeans classes to: ${gen.classes.dir}</echo>
+      <delete dir="${gen.classes.dir}"/>
+      <mkdir dir="${gen.classes.dir}"/>
+
+      <pathconvert refid="maven.dependency.classpath" dirsep="/" property="cp.value" />
+      
+      <!-- NOTE: fork must be enabled to circumvent XMLBeans/Maven bug! -->
+      <java classname="org.apache.xmlbeans.impl.tool.SchemaCompiler" 
+            classpathref="maven.dependency.classpath" 
+            verbose="true" 
+            fork="true"
+            maxmemory="256M">         
+         <arg value="-cp" />
+         <arg value="${cp.value}" />
+         <!--<arg value="-debug" />-->
+         <arg value="-dl" />
+         <arg value="-d" />
+         <arg value="${gen.classes.dir}" />
+         <arg value="-src" />
+         <arg value="${gen.src.dir}" />
+         <arg value="-verbose" />
+         <arg line="${maven.src.dir}/wsdl" />
+      </java>
+
+<!--
+      <taskdef name="schemaCompiler"
+               classname="org.apache.xmlbeans.impl.tool.XMLBean"
+               classpathref="maven.dependency.classpath" />    
+
+      <schemaCompiler classpathref="maven.dependency.classpath"
+                      srcgendir="${gen.src.dir}"
+                      classgendir="${gen.classes.dir}"
+                      download="on"
+                      verbose="on"
+                      debug="on"
+                      debugLevel="lines,vars,source"
+                      failonerror="on">
+         
+         <fileset dir="${maven.src.dir}/wsdl" />
+        
+      </schemaCompiler>
+-->
+  </goal>
+  
+  <goal name="src-jar">
+    <jar jarfile="${maven.build.dir}/${pom.artifactId}-src-${pom.currentVersion}.jar" 
+         basedir="${gen.src.dir}" />
+  </goal>  
+  
+</project>

Added: webservices/muse/trunk/wse-xbeans/project.properties
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wse-xbeans/project.properties?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wse-xbeans/project.properties (added)
+++ webservices/muse/trunk/wse-xbeans/project.properties Fri Jun  2 10:32:46 2006
@@ -0,0 +1,15 @@
+# -----------------------------------------------------------------------------
+# Default properties for the Maven build. You can override these properties
+# either by defining a build.properties file with the overriden properties
+# or by passing them on the command line as system parameters (-D).
+# -----------------------------------------------------------------------------
+
+# MAVEN CORE
+##############
+# comma-spearated list of remote JAR repository URLs
+maven.repo.remote = http://www.apache.org/dist/java-repository/, http://cvs.apache.org/repository/, http://mirrors.sunsite.dk/maven/
+
+# JAVA PLUGIN
+##############
+maven.compile.debug = on
+maven.compile.target = 1.4

Added: webservices/muse/trunk/wse-xbeans/project.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wse-xbeans/project.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wse-xbeans/project.xml (added)
+++ webservices/muse/trunk/wse-xbeans/project.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+
+<!-- WSE Spec XMLBeans - Project Object Model (POM) -->
+
+<!-- Schema for this file is at:    http://maven.apache.org/xsd/maven-project-3.0.0.xsd -->
+<!-- Reference for this file is at: http://maven.apache.org/reference/project-descriptor.html -->
+
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:noNamespaceSchemaLocation="http://maven.apache.org/xsd/maven-project-3.0.0.xsd">
+
+  <pomVersion>3</pomVersion>
+  <name>XMLBeans for the WS-Eventing spec types</name>
+  <id>wse-xbeans</id>
+  <groupId>pubscribe</groupId>
+  <currentVersion>SNAPSHOT</currentVersion>
+  <organization>
+    <name>Apache Software Foundation</name>
+    <url>http://www.apache.org/</url>
+  </organization>
+  
+  <repository>
+        <connection>scm|svn|http://svn.apache.org/repos/asf/incubator/hermes/trunk/</connection>
+        <developerConnection>scm|svn|https://svn.apache.org/repos/asf/incubator/hermes/trunk/</developerConnection>
+        <url>http://svn.apache.org/viewcvs.cgi/incubator/hermes/trunk/</url>
+  </repository> 
+  
+  <versions>
+    <version>
+      <id>1_0-beta1</id>
+      <name>1.0-beta1</name>
+      <tag>HEAD</tag>
+    </version>
+  </versions>
+    
+  <developers>
+
+    <developer>
+      <name>Ian Springer</name>
+      <id>ips</id>
+      <email>ian DOT springer AT hp DOT com</email>
+      <organization>Hewlett-Packard Company</organization>
+      <roles>
+        <role>Developer</role>
+      </roles>
+      <timezone>-5</timezone>
+    </developer>
+
+  </developers>
+
+  <dependencies>
+<!--    
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xbean</artifactId>
+      <version>1.0.4</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Used to generate XMLBeans</usage>
+      </properties>
+    </dependency>
+-->
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xbean</artifactId>
+      <version>2.0.0</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>
+
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xmlbeans-jsr173-api</artifactId>
+      <version>2.0-dev</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>       
+        
+        <dependency>
+	    <groupId>wsrf</groupId>
+	    <artifactId>wsa-xbeans</artifactId>
+	    <version>SNAPSHOT</version>
+	    <url>http://ws.apache.org/ws-fx/wsrf/</url>
+	    <properties>
+		<license>ApacheLicense-2.0.txt</license>
+		<usage>Needed for handling requests. This contains the XmlBeans-generated code from the WSA XSDs. This "could" be eliminated and generated on the fly, but it would make the builds longer.</usage>
+		<war.bundle>true</war.bundle>
+	    </properties>
+	</dependency>
+        
+  </dependencies>
+
+</project>

Added: webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.wsdl
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.wsdl?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.wsdl (added)
+++ webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.wsdl Fri Jun  2 10:32:46 2006
@@ -0,0 +1,166 @@
+<?xml version="1.0"?>
+
+<definitions name="PubSubWS" 
+   targetNamespace="http://schemas.xmlsoap.org/ws/2004/08/eventing/services"
+   xmlns:tns="http://schemas.xmlsoap.org/ws/2004/08/eventing/services"
+   xmlns:xs="http://www.w3.org/2001/XMLSchema"
+   xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+   xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
+   xmlns:wse="http://schemas.xmlsoap.org/ws/2004/08/eventing"
+   xmlns="http://schemas.xmlsoap.org/wsdl/">
+
+  <types>
+    <xs:schema targetNamespace="http://schemas.xmlsoap.org/ws/2004/08/eventing">
+      <xs:include schemaLocation="WS-Eventing-2004_08.xsd" />
+    </xs:schema>
+  </types>
+
+
+  <message name="SubscribeMsg" >
+    <part name="body" element="wse:Subscribe" />
+  </message>
+  
+  <message name="SubscribeResponseMsg" >
+    <part name="body" element="wse:SubscribeResponse" />
+  </message>
+
+  <message name="RenewMsg" >
+    <part name="body" element="wse:Renew" />
+  </message>
+  <message name="RenewResponseMsg" >
+    <part name="body" element="wse:RenewResponse" />
+  </message>
+
+  <message name="GetStatusMsg" >
+    <part name="body" element="wse:GetStatus" />
+  </message>
+  <message name="GetStatusResponseMsg" >
+    <part name="body" element="wse:GetStatusResponse" />
+  </message>
+
+  <message name="UnsubscribeMsg" >
+    <part name="body" element="wse:Unsubscribe" />
+  </message>
+  <message name="UnsubscribeResponseMsg" />
+
+  <message name="SubscriptionEnd" >
+    <part name="body" element="wse:SubscriptionEnd" />
+  </message>
+  <message name="SubscriptionEndResponseMsg" />
+    
+  <portType name="EventSource" >
+    <operation name="SubscribeMsg" >
+      <input message="tns:SubscribeMsg" name="SubscribeMsg" />
+      <output message="tns:SubscribeResponseMsg" name="SubscribeResponseMsg"/>
+    </operation>
+  </portType>
+
+  <portType name="SubscriptionEnd" >
+    <operation name="SubscriptionEnd" >
+      <input message="tns:SubscriptionEnd" name="SubscriptionEnd"/>
+      <output message="tns:SubscriptionEndResponseMsg" name="SubscriptionEndResponseMsg"/>
+    </operation>
+  </portType>
+
+  <portType name="SubscriptionManager" >
+    <operation name="RenewMsg" >
+      <input message="tns:RenewMsg" name="RenewMsg" />
+      <output message="tns:RenewResponseMsg" name="RenewResponseMsg"/>
+    </operation>
+    <operation name="GetStatusMsg" >
+      <input message="tns:GetStatusMsg" name="GetStatusMsg" />
+      <output message="tns:GetStatusResponseMsg" name="GetStatusResponseMsg" />
+    </operation>
+    <operation name="UnsubscribeMsg" >
+      <input message="tns:UnsubscribeMsg" name="UnsubscribeMsg" />
+      <output message="tns:UnsubscribeResponseMsg" name="UnsubscribeResponseMsg" />
+    </operation>
+  </portType>
+
+<!-- end orig -->
+  
+   <binding name="EventSourceBinding" type="tns:EventSource">
+      <soap:binding 
+         style="document"
+         transport="http://schemas.xmlsoap.org/soap/http"/>
+      <operation name="SubscribeMsg">
+         <soap:operation soapAction="http://schemas.xmlsoap.org/ws/2004/08/eventing/SubscribeMsg"/>
+         <input name="SubscribeMsg">
+            <soap:body use="literal"/>
+         </input>
+         <output name="SubscribeResponseMsg">
+            <soap:body use="literal"/>
+         </output>
+      </operation>
+   </binding>
+   
+   <binding name="SubscriptionEndBinding" type="tns:SubscriptionEnd">
+      <soap:binding 
+         style="document"
+         transport="http://schemas.xmlsoap.org/soap/http"/>
+      <operation name="SubscriptionEnd">
+         <soap:operation soapAction="http://schemas.xmlsoap.org/ws/2004/08/eventing/SubscriptionEnd"/>
+         <input name="SubscriptionEnd">
+            <soap:body use="literal"/>
+         </input>
+         <output name="SubscriptionEndResponseMsg">
+            <soap:body use="literal"/>
+         </output>
+      </operation>
+   </binding>
+   
+    <binding name="SubscriptionManagerBinding" type="tns:SubscriptionManager">
+      <soap:binding 
+         style="document"
+         transport="http://schemas.xmlsoap.org/soap/http"/>
+      <operation name="RenewMsg">
+         <soap:operation soapAction="http://schemas.xmlsoap.org/ws/2004/08/eventing/RenewMsg"/>
+         <input name="RenewMsg">
+            <soap:body 
+               use="literal"/>
+         </input>
+         <output name="RenewResponseMsg">
+            <soap:body
+               use="literal"/>
+         </output>
+      </operation>
+
+      <operation name="GetStatusMsg">
+         <soap:operation soapAction="http://schemas.xmlsoap.org/ws/2004/08/eventing/GetStatusMsg"/>
+         <input name="GetStatusMsg">
+            <soap:body use="literal"/>
+         </input>
+         <output name="GetStatusResponseMsg">
+            <soap:body use="literal"/>
+         </output>
+      </operation>
+
+      <operation name="UnsubscribeMsg">
+         <soap:operation soapAction="http://schemas.xmlsoap.org/ws/2004/08/eventing/UnsubscribeMsg"/>
+         <input name="UnsubscribeMsg">
+            <soap:body use="literal"/>
+         </input>
+         <output name="UnsubscribeResponseMsg">
+            <soap:body use="literal"/>
+         </output>
+      </operation>
+   </binding>
+
+   <service name="EventingService">
+      <documentation>
+         A publish subscribe system based on web services
+      </documentation>
+      <port name="EventSourcePort" binding="tns:EventSourceBinding">
+         <soap:address 
+          location="http://localhost:8080/axis/services/EventSourcePort"/>
+      </port>
+      <port name="SubscriptionManagerPort" binding="tns:SubscriptionManagerBinding">
+         <soap:address 
+          location="http://localhost:8080/axis/services/SubscriptionManagerPort"/>
+      </port>
+      <port name="SubscriptionEndPort" binding="tns:SubscriptionEndBinding">
+         <soap:address 
+          location="http://localhost:8080/axis/services/SubscriptionEndPort"/>
+      </port>      
+   </service>
+</definitions>

Added: webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.xsd
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.xsd?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.xsd (added)
+++ webservices/muse/trunk/wse-xbeans/src/wsdl/wse/WS-Eventing-2004_08.xsd Fri Jun  2 10:32:46 2006
@@ -0,0 +1,206 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!-- 
+(c) 2004 BEA Systems Inc., Computer Associates International, Inc., International Business Machines Corporation, Microsoft Corporation, Inc, Sun Microsystems, Inc., and TIBCO Software Inc. All rights reserved.
+
+BEA Systems Inc., Computer Associates International, Inc., International Business Machines Corporation, Microsoft Corporation, Inc, Sun Microsystems, Inc, and TIBCO Software Inc (collectively, the "Authors") hereby grant you permission to copy and display the WS-Eventing Specification (the "Specification", which includes WSDL and schema documents), in any medium without fee or royalty, provided that you include the following on ALL copies of the Specification, that you make:
+
+1.	A link or URL to the WS-Eventing Specification at one of the Authors' websites 
+2.	The copyright notice as shown in the WS-Eventing Specification. 
+
+BEA, CA, IBM, Microsoft, Sun and TIBCO (collectively, the "Authors") each agree to grant you a license, under royalty-free and otherwise reasonable, non-discriminatory terms and conditions, to their respective essential patent claims that they deem necessary to implement the Specification. 
+
+THE SPECIFICATION IS PROVIDED "AS IS," AND THE AUTHORS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, OR TITLE; THAT THE CONTENTS OF THE SPECIFICATION ARE SUITABLE FOR ANY PURPOSE; NOR THAT THE IMPLEMENTATION OF SUCH CONTENTS WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS. 
+
+THE AUTHORS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF OR RELATING TO ANY USE OR DISTRIBUTION OF THE SPECIFICATION. 
+
+The name and trademarks of the Authors may NOT be used in any manner, including advertising or publicity pertaining to the Specification or its contents without specific, written prior permission. Title to copyright in the Specification will at all times remain with the Authors. 
+
+No other rights are granted by implication, estoppel or otherwise.
+-->
+<xs:schema
+  targetNamespace="http://schemas.xmlsoap.org/ws/2004/08/eventing" 
+  xmlns:tns="http://schemas.xmlsoap.org/ws/2004/08/eventing"
+  xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
+  elementFormDefault="qualified" 
+  blockDefault="#all">
+  <xs:import namespace="http://www.w3.org/XML/1998/namespace"
+	schemaLocation="http://www.w3.org/2001/xml.xsd" />
+
+  <xs:import namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing" 
+	schemaLocation="../wsa/addressing-2004_08.xsd" />
+
+  <!-- Types and global elements -->
+  <xs:complexType name="DeliveryType" mixed="true">
+    <xs:sequence>
+      <xs:element name="NotifyTo" type="wsa:EndpointReferenceType" />    
+      <xs:any namespace="##any" processContents="lax" 
+        minOccurs="0" maxOccurs="unbounded" />
+    </xs:sequence>
+    <xs:attribute name="Mode" type="xs:anyURI" use="optional" />
+    <xs:anyAttribute namespace="##other" processContents="lax" />
+  </xs:complexType>
+
+
+
+  <xs:simpleType name="NonNegativeDurationType">
+    <xs:restriction base="xs:duration">
+      <xs:minInclusive value="P0Y0M0DT0H0M0S" />
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ExpirationType">
+      <xs:union memberTypes="xs:dateTime tns:NonNegativeDurationType" />
+  </xs:simpleType>
+
+  <xs:complexType name="FilterType" mixed="true">
+    <xs:sequence>
+      <xs:any namespace="##other" processContents="lax" 
+        minOccurs="0" maxOccurs="unbounded" />
+    </xs:sequence>
+    <xs:attribute name="Dialect" type="xs:anyURI" use="optional" />
+    <xs:anyAttribute namespace="##other" processContents="lax" />
+  </xs:complexType>
+
+  <xs:complexType name="LanguageSpecificStringType">
+    <xs:simpleContent>
+      <xs:extension base="xs:string">
+        <xs:attribute ref="xml:lang" />
+        <xs:anyAttribute namespace="##other" processContents="lax" />
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+
+  <!-- Subscribe request -->
+  <xs:element name="Subscribe">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="EndTo" type="wsa:EndpointReferenceType" 
+          minOccurs="0" />
+        <xs:element name="Delivery" type="tns:DeliveryType" />
+        <xs:element name="Expires" type="tns:ExpirationType" 
+          minOccurs="0" />
+        <xs:element name="Filter" type="tns:FilterType" minOccurs="0" />
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <xs:element name="Identifier" type="xs:anyURI" />
+ 
+  <!-- Subscribe response -->
+  <xs:element name="SubscribeResponse">
+    <xs:complexType>
+      <xs:sequence>
+	  <xs:element name="SubscriptionManager" 
+                    type="wsa:EndpointReferenceType" />
+        <xs:element name="Expires" type="tns:ExpirationType" />
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Used in a fault if there's an unsupported dialect -->
+  <xs:element name="SupportedDialect" type="xs:anyURI" />
+
+  <!-- Used in a fault if there's an unsupported delivery mode -->
+  <xs:element name="SupportedDeliveryMode" type="xs:anyURI" />
+
+  <!-- Renew request -->
+  <xs:element name="Renew">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="Expires" type="tns:ExpirationType" 
+          minOccurs="0" />
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Renew response -->
+  <xs:element name="RenewResponse">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="Expires" type="tns:ExpirationType" 
+          minOccurs="0" />
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <!-- GetStatus request -->
+  <xs:element name="GetStatus">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <!-- GetStatus response -->
+  <xs:element name="GetStatusResponse">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="Expires" type="tns:ExpirationType" 
+          minOccurs="0" />
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <!-- Unsubscribe request -->
+  <xs:element name="Unsubscribe">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <!-- count(/s:Envelope/s:Body/*) = 0 for Unsubscribe response -->
+
+  <!-- SubscriptionEnd message -->
+  <xs:element name="SubscriptionEnd">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element name="SubscriptionManager" 
+                    type="wsa:EndpointReferenceType" />
+        <xs:element name="Code" type="tns:OpenSubscriptionEndCodeType" />
+        <xs:element name="Reason" type="tns:LanguageSpecificStringType" 
+          minOccurs="0" maxOccurs="unbounded" />
+        <xs:any namespace="##other" processContents="lax" 
+          minOccurs="0" maxOccurs="unbounded" />
+      </xs:sequence>
+      <xs:anyAttribute namespace="##other" processContents="lax" />
+    </xs:complexType>
+  </xs:element>
+
+  <xs:simpleType name="SubscriptionEndCodeType">
+    <xs:restriction base="xs:QName">
+      <xs:enumeration value="tns:DeliveryFailure" />
+      <xs:enumeration value="tns:SourceShuttingDown" />
+      <xs:enumeration value="tns:SourceCancelling" />
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="OpenSubscriptionEndCodeType">
+    <xs:union memberTypes="tns:SubscriptionEndCodeType xs:QName" />
+  </xs:simpleType>
+
+  <xs:attribute name="EventSource" type="xs:boolean" />
+
+</xs:schema>

Added: webservices/muse/trunk/wsn-xbeans/maven.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsn-xbeans/maven.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsn-xbeans/maven.xml (added)
+++ webservices/muse/trunk/wsn-xbeans/maven.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,79 @@
+<?xml version="1.0"?>
+
+<!--
+   For the definitions of Jelly tags, see these as reference
+   * http://jakarta.apache.org/commons/jelly/libs/
+   * http://jakarta.apache.org/commons/jelly/tags.html
+-->
+
+<project default="jar:jar"    
+         xmlns:j="jelly:core"
+         xmlns:maven="jelly:maven">
+  
+  <postGoal name="java:compile">
+    <attainGoal name="generate" />
+  </postGoal>
+  
+  <postGoal name="jar:jar">
+    <attainGoal name="src-jar"/>
+  </postGoal>  
+
+  <goal name="generate"
+        description="generate XMLBeans for WSN spec types">
+    
+      <property name="gen.src.dir" location="${maven.src.dir}/java" />
+      <echo>Writing generated XMLBeans source files to: ${gen.src.dir}</echo>
+      <delete dir="${gen.src.dir}"/>
+      <mkdir dir="${gen.src.dir}"/>
+
+      <property name="gen.classes.dir" location="${maven.build.dest}" />
+      <echo>Writing generated XMLBeans classes to: ${gen.classes.dir}</echo>
+      <delete dir="${gen.classes.dir}"/>
+      <mkdir dir="${gen.classes.dir}"/>
+
+      <pathconvert refid="maven.dependency.classpath" dirsep="/" property="cp.value" />
+      
+      <!-- NOTE: fork must be enabled to circumvent XMLBeans/Maven bug! -->
+      <java classname="org.apache.xmlbeans.impl.tool.SchemaCompiler" 
+            classpathref="maven.dependency.classpath" 
+            verbose="true" 
+            fork="true"
+            maxmemory="256M">         
+         <arg value="-cp" />
+         <arg value="${cp.value}" />
+         <!--<arg value="-debug" />-->
+         <arg value="-dl" />
+         <arg value="-d" />
+         <arg value="${gen.classes.dir}" />
+         <arg value="-src" />
+         <arg value="${gen.src.dir}" />
+         <arg value="-verbose" />
+         <arg line="${maven.src.dir}/wsdl" />
+      </java>
+
+<!--
+      <taskdef name="schemaCompiler"
+               classname="org.apache.xmlbeans.impl.tool.XMLBean"
+               classpathref="maven.dependency.classpath" />    
+
+      <schemaCompiler classpathref="maven.dependency.classpath"
+                      srcgendir="${gen.src.dir}"
+                      classgendir="${gen.classes.dir}"
+                      download="on"
+                      verbose="on"
+                      debug="on"
+                      debugLevel="lines,vars,source"
+                      failonerror="on">
+         
+         <fileset dir="${maven.src.dir}/wsdl" />
+        
+      </schemaCompiler>
+-->
+  </goal>
+  
+  <goal name="src-jar">
+    <jar jarfile="${maven.build.dir}/${pom.artifactId}-src-${pom.currentVersion}.jar" 
+         basedir="${gen.src.dir}" />
+  </goal>  
+  
+</project>

Added: webservices/muse/trunk/wsn-xbeans/project.properties
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsn-xbeans/project.properties?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsn-xbeans/project.properties (added)
+++ webservices/muse/trunk/wsn-xbeans/project.properties Fri Jun  2 10:32:46 2006
@@ -0,0 +1,15 @@
+# -----------------------------------------------------------------------------
+# Default properties for the Maven build. You can override these properties
+# either by defining a build.properties file with the overriden properties
+# or by passing them on the command line as system parameters (-D).
+# -----------------------------------------------------------------------------
+
+# MAVEN CORE
+##############
+# comma-spearated list of remote JAR repository URLs
+maven.repo.remote = http://www.apache.org/dist/java-repository/, http://cvs.apache.org/repository/, http://mirrors.sunsite.dk/maven/
+
+# JAVA PLUGIN
+##############
+maven.compile.debug = on
+maven.compile.target = 1.4

Added: webservices/muse/trunk/wsn-xbeans/project.xml
URL: http://svn.apache.org/viewvc/webservices/muse/trunk/wsn-xbeans/project.xml?rev=411218&view=auto
==============================================================================
--- webservices/muse/trunk/wsn-xbeans/project.xml (added)
+++ webservices/muse/trunk/wsn-xbeans/project.xml Fri Jun  2 10:32:46 2006
@@ -0,0 +1,114 @@
+<?xml version="1.0"?>
+
+<!-- WSN Spec XMLBeans - Project Object Model (POM) -->
+
+<!-- Schema for this file is at:    http://maven.apache.org/xsd/maven-project-3.0.0.xsd -->
+<!-- Reference for this file is at: http://maven.apache.org/reference/project-descriptor.html -->
+
+<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:noNamespaceSchemaLocation="http://maven.apache.org/xsd/maven-project-3.0.0.xsd">
+
+  <pomVersion>3</pomVersion>
+  <name>XMLBeans for the WSN spec types</name>
+  <id>wsn-xbeans</id>
+  <groupId>pubscribe</groupId>
+  <currentVersion>SNAPSHOT</currentVersion>
+  <organization>
+    <name>Apache Software Foundation</name>
+    <url>http://www.apache.org/</url>
+  </organization>
+  
+  <repository>
+        <connection>scm|svn|http://svn.apache.org/repos/asf/incubator/hermes/trunk/</connection>
+        <developerConnection>scm|svn|https://svn.apache.org/repos/asf/incubator/hermes/trunk/</developerConnection>
+        <url>http://svn.apache.org/viewcvs.cgi/incubator/hermes/trunk/</url>
+  </repository> 
+  
+  <versions>
+    <version>
+      <id>1_0-beta1</id>
+      <name>1.0-beta1</name>
+      <tag>HEAD</tag>
+    </version>
+  </versions>
+    
+  <developers>
+
+    <developer>
+      <name>Ian Springer</name>
+      <id>ips</id>
+      <email>ian DOT springer AT hp DOT com</email>
+      <organization>Hewlett-Packard Company</organization>
+      <roles>
+        <role>Developer</role>
+      </roles>
+      <timezone>-5</timezone>
+    </developer>
+
+  </developers>
+
+  <dependencies>
+<!--    
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xbean</artifactId>
+      <version>1.0.4</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Used to generate XMLBeans</usage>
+      </properties>
+    </dependency>        
+-->
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xbean</artifactId>
+      <version>2.0.0</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>
+
+    <dependency>
+      <groupId>xmlbeans</groupId>
+      <artifactId>xmlbeans-jsr173-api</artifactId>
+      <version>2.0-dev</version>
+      <url>http://xmlbeans.apache.org/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <war.bundle>true</war.bundle>
+        <usage>Needed for handling XML types in a platform agnostic way.</usage>
+      </properties>
+    </dependency>       
+
+    <dependency>
+      <groupId>wsrf</groupId>
+      <artifactId>wsa-xbeans</artifactId>
+      <version>SNAPSHOT</version>
+      <url>http://ws.apache.org/ws-fx/wsrf/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <usage>XMLBeans for WSA spec types</usage>
+        <war.bundle>true</war.bundle>
+      </properties>
+    </dependency>
+
+    <dependency>
+      <groupId>wsrf</groupId>
+      <artifactId>wsrf-xbeans</artifactId>
+      <version>SNAPSHOT</version>
+      <url>http://ws.apache.org/ws-fx/wsrf/</url>
+      <properties>
+        <license>ApacheLicense-2.0.txt</license>
+        <usage>XMLBeans for WSRF spec types</usage>
+        <war.bundle>true</war.bundle>
+      </properties>
+    </dependency>
+    
+  </dependencies>
+
+</project>



---------------------------------------------------------------------
To unsubscribe, e-mail: muse-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: muse-commits-help@ws.apache.org