You are viewing a plain text version of this content. The canonical link for it is here.
Posted to woden-dev@ws.apache.org by jk...@apache.org on 2005/12/05 20:28:09 UTC
svn commit: r354136 - in /incubator/woden/java/src/org/apache/woden/wsdl20:
extensions/AttributeExtensible.java extensions/ElementExtensible.java
xml/WSDLElement.java
Author: jkaputin
Date: Mon Dec 5 11:27:54 2005
New Revision: 354136
URL: http://svn.apache.org/viewcvs?rev=354136&view=rev
Log:
Refactored attribute extensibility methods and
element extensibility methods out of WSDLElement and
into separate interfaces as they will be needed for
extension elements that are themselves extensible
(e.g. SOAPModule)
Added:
incubator/woden/java/src/org/apache/woden/wsdl20/extensions/AttributeExtensible.java
incubator/woden/java/src/org/apache/woden/wsdl20/extensions/ElementExtensible.java
Modified:
incubator/woden/java/src/org/apache/woden/wsdl20/xml/WSDLElement.java
Added: incubator/woden/java/src/org/apache/woden/wsdl20/extensions/AttributeExtensible.java
URL: http://svn.apache.org/viewcvs/incubator/woden/java/src/org/apache/woden/wsdl20/extensions/AttributeExtensible.java?rev=354136&view=auto
==============================================================================
--- incubator/woden/java/src/org/apache/woden/wsdl20/extensions/AttributeExtensible.java (added)
+++ incubator/woden/java/src/org/apache/woden/wsdl20/extensions/AttributeExtensible.java Mon Dec 5 11:27:54 2005
@@ -0,0 +1,42 @@
+/**
+ * Copyright 2005 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.
+ */
+package org.apache.woden.wsdl20.extensions;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.xml.XMLAttr;
+
+/**
+ * This interface represents elements that may contain extension attributes.
+ *
+ * @author jkaputin@apache.org
+ */
+public interface AttributeExtensible
+{
+ /**
+ * Store the extension attribute object identified by the QName.
+ * If the attribute argument is null, remove the extension attribute identified
+ * by the specified QName argument.
+ *
+ * TODO ? @throws IllegalArgumentException if the QName is null
+ */
+ public void setExtensionAttribute(QName attrQN, XMLAttr attr);
+
+ public XMLAttr getExtensionAttribute(QName attrQN);
+
+ public XMLAttr[] getExtensionAttributes();
+
+}
Added: incubator/woden/java/src/org/apache/woden/wsdl20/extensions/ElementExtensible.java
URL: http://svn.apache.org/viewcvs/incubator/woden/java/src/org/apache/woden/wsdl20/extensions/ElementExtensible.java?rev=354136&view=auto
==============================================================================
--- incubator/woden/java/src/org/apache/woden/wsdl20/extensions/ElementExtensible.java (added)
+++ incubator/woden/java/src/org/apache/woden/wsdl20/extensions/ElementExtensible.java Mon Dec 5 11:27:54 2005
@@ -0,0 +1,30 @@
+/**
+ * Copyright 2005 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.
+ */
+package org.apache.woden.wsdl20.extensions;
+
+/**
+ * This interface represents elements that may contain extension elements.
+ *
+ * @author jkaputin@apache.org
+ */
+public interface ElementExtensible
+{
+ public void addExtensionElement(ExtensionElement extEl);
+
+ public void removeExtensionElement(ExtensionElement extEl);
+
+ public ExtensionElement[] getExtensionElements();
+}
Modified: incubator/woden/java/src/org/apache/woden/wsdl20/xml/WSDLElement.java
URL: http://svn.apache.org/viewcvs/incubator/woden/java/src/org/apache/woden/wsdl20/xml/WSDLElement.java?rev=354136&r1=354135&r2=354136&view=diff
==============================================================================
--- incubator/woden/java/src/org/apache/woden/wsdl20/xml/WSDLElement.java (original)
+++ incubator/woden/java/src/org/apache/woden/wsdl20/xml/WSDLElement.java Mon Dec 5 11:27:54 2005
@@ -15,10 +15,8 @@
*/
package org.apache.woden.wsdl20.xml;
-import javax.xml.namespace.QName;
-
-import org.apache.woden.wsdl20.extensions.ExtensionElement;
-import org.apache.woden.xml.XMLAttr;
+import org.apache.woden.wsdl20.extensions.AttributeExtensible;
+import org.apache.woden.wsdl20.extensions.ElementExtensible;
/**
* All WSDL 2.0 element interfaces will directly or indirectly extend this interface,
@@ -26,26 +24,14 @@
*
* @author jkaputin@apache.org
*/
-public interface WSDLElement
+public interface WSDLElement extends AttributeExtensible, ElementExtensible
{
//---------------- Extension Attributes ----------------------------
//
//All elements in the WSDL 2.0 namespace support attribute extensibility
- //so the related methods are declared in this interface.
-
- /**
- * Store the extension attribute object identified by the QName.
- * If the attribute argument is null, remove the extension attribute identified
- * by the specified QName argument.
- *
- * TODO ? @throws IllegalArgumentException if the QName is null
- */
- public void setExtensionAttribute(QName attrQN, XMLAttr attr);
-
- public XMLAttr getExtensionAttribute(QName attrQN);
+ //so the related methods are inherited by this interface.
- public XMLAttr[] getExtensionAttributes();
//---------------- Extension Elements ----------------------------
@@ -53,15 +39,10 @@
//TODO clarify whether all WSDL 2.0 elements support element extensibility, as stated
//in the xml representation sections in Part 1 - but contradicted by the WSDL 2.0 Schema,
//which indicates <import> and <include> do NOT support element extensibility. If the
- //schema is correct, the following element extensibility methods will be refactored
- //into a new interface org.apache.woden.wsdl20.xml.ExtensibleElement, and the
- //applicable Element interfaces will extend it (i.e. all except Import and Include).
+ //schema is correct, then the applicable Element interfaces will extend
+ //org.apache.woden.wsdl20.extensions.ElementExtensible directly, instead of via
+ //WSDLElement.
- public void addExtensionElement(ExtensionElement extEl);
- public void removeExtensionElement(ExtensionElement extEl);
-
- public ExtensionElement[] getExtensionElements();
-
}
---------------------------------------------------------------------
To unsubscribe, e-mail: woden-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: woden-dev-help@ws.apache.org