[jbossws-commits] JBossWS SVN: r10109 - in spi/trunk/src/main/java/org/jboss/wsf/spi: addressing and 1 other directory.

jbossws-commits at lists.jboss.org jbossws-commits at lists.jboss.org
Mon May 25 14:09:47 EDT 2009


Author: alessio.soldano at jboss.com
Date: 2009-05-25 14:09:46 -0400 (Mon, 25 May 2009)
New Revision: 10109

Added:
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAP.java
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilder.java
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilderFactory.java
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPConstants.java
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPEndpoint.java
   spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPRelatesTo.java
Log:
[JBWS-2106] First cut of common addressing api


Added: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAP.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAP.java	                        (rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAP.java	2009-05-25 18:09:46 UTC (rev 10109)
@@ -0,0 +1,76 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.addressing;
+
+import java.util.List;
+import java.util.Map;
+
+import org.w3c.dom.Element;
+
+/**
+ * Message Addressing Properties is a wrapper for the stack-specific addressing properties
+ * classes implemented by JBossWS Native and CXF. It is used to localize dependence upon the WS
+ * stack.
+ * 
+ * @author Andrew Dinn (adinn at redhat.com)
+ * @author alessio.soldano at jboss.com
+ * 
+ */
+public interface MAP
+{
+   public String getTo();
+
+   public MAPEndpoint getFrom();
+
+   public String getMessageID();
+
+   public String getAction();
+
+   public MAPEndpoint getFaultTo();
+
+   public MAPEndpoint getReplyTo();
+
+   public MAPRelatesTo getRelatesTo();
+
+   public void setTo(String address);
+
+   public void setFrom(MAPEndpoint epref);
+
+   public void setMessageID(String messageID);
+
+   public void setAction(String action);
+
+   public void setReplyTo(MAPEndpoint epref);
+
+   public void setFaultTo(MAPEndpoint epref);
+
+   public void setRelatesTo(MAPRelatesTo relatesTo);
+
+   public void addReferenceParameter(Element refParam);
+   
+   public List<Element> getReferenceParameters();
+
+   public void initializeAsDestination(MAPEndpoint epref);
+
+   public void installOutboundMap(Map<String, Object> requestContext, MAP map);
+
+}


Property changes on: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAP.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilder.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilder.java	                        (rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilder.java	2009-05-25 18:09:46 UTC (rev 10109)
@@ -0,0 +1,60 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.addressing;
+
+import java.util.Map;
+
+import javax.xml.namespace.QName;
+import javax.xml.ws.handler.MessageContext;
+
+/**
+ * MAPBuilder is a helper used to create objects used with class MAP.
+ * 
+ * @author Andrew Dinn (adinn at redhat.com)
+ * @author alessio.soldano at jboss.com
+ * 
+ */
+public interface MAPBuilder
+{
+   public MAP newMap();
+
+   /**
+    * retrieve the inbound server message address properties attached to a message context
+    * @param ctx the server message context
+    * @return
+    */
+   public MAP inboundMap(MessageContext ctx);
+
+   /**
+    * retrieve the outbound client message address properties attached to a message request map
+    * @param ctx the client request properties map
+    * @return
+    */
+   public MAP outboundMap(Map<String, Object> ctx);
+
+   public MAPConstants newConstants();
+
+   public MAPEndpoint newEndpoint(String address);
+
+   public MAPRelatesTo newRelatesTo(String id, QName type);
+
+}


Property changes on: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilder.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilderFactory.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilderFactory.java	                        (rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilderFactory.java	2009-05-25 18:09:46 UTC (rev 10109)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.addressing;
+
+import org.jboss.wsf.spi.util.ServiceLoader;
+
+/**
+ * A factory that gets the MAPBuilder instance using the ServiceLoader
+ * 
+ * @author alessio.soldano at jboss.com
+ * @since 25-May-2009
+ *
+ */
+public abstract class MAPBuilderFactory
+{
+   public static MAPBuilder getMAPBuilderInstance()
+   {
+      return (MAPBuilder)ServiceLoader.loadService(MAPBuilder.class.getName(), null);
+   }
+}


Property changes on: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPBuilderFactory.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPConstants.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPConstants.java	                        (rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPConstants.java	2009-05-25 18:09:46 UTC (rev 10109)
@@ -0,0 +1,47 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.addressing;
+
+/**
+ * MAPConstants is a wrapper which works with class MAP
+ * 
+ * @author Andrew Dinn (adinn at redhat.com)
+ * @author alessio.soldano at jboss.com
+ * 
+ */
+public interface MAPConstants
+{
+   public String getAnonymousURI();
+   
+   public String getNoneURI();
+
+   public String getClientAddressingProperties();
+
+   public String getClientAddressingPropertiesInbound();
+
+   public String getClientAddressingPropertiesOutbound();
+
+   public String getServerAddressingPropertiesInbound();
+
+   public String getServerAddressingPropertiesOutbound();
+
+}


Property changes on: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPConstants.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPEndpoint.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPEndpoint.java	                        (rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPEndpoint.java	2009-05-25 18:09:46 UTC (rev 10109)
@@ -0,0 +1,39 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.addressing;
+
+import org.w3c.dom.Element;
+
+/**
+ * MAPEndpoint is a wrapper which works with class MAP.
+ * 
+ * @author Andrew Dinn (adinn at redhat.com)
+ * @author alessio.soldano at jboss.com
+ * 
+ */
+public interface MAPEndpoint
+{
+   public String getAddress();
+
+   public void addReferenceParameter(Element element);
+
+}


Property changes on: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPEndpoint.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF

Added: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPRelatesTo.java
===================================================================
--- spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPRelatesTo.java	                        (rev 0)
+++ spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPRelatesTo.java	2009-05-25 18:09:46 UTC (rev 10109)
@@ -0,0 +1,41 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ * Copyright 2006, Red Hat Middleware LLC, and individual contributors
+ * as indicated by the @author tags. See the copyright.txt file in the
+ * distribution for a full listing of individual contributors.
+ *
+ * This 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 software 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 software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+package org.jboss.wsf.spi.addressing;
+
+import javax.xml.namespace.QName;
+
+/**
+ * MAPRelationship is a wrapper which works with class MAP.
+ * 
+ * @author Andrew Dinn (adinn at redhat.com)
+ * @author alessio.soldano at jboss.com
+ * 
+ */
+public interface MAPRelatesTo
+{
+   public String getRelatesTo();
+
+   public QName getType();
+
+   public void setType(QName type);
+
+}


Property changes on: spi/trunk/src/main/java/org/jboss/wsf/spi/addressing/MAPRelatesTo.java
___________________________________________________________________
Name: svn:keywords
   + Id Revision
Name: svn:eol-style
   + LF




More information about the jbossws-commits mailing list