Author: bimargulies
Date: Sat Nov 7 19:53:16 2009
New Revision: 833739
URL: http://svn.apache.org/viewvc?rev=833739&view=rev
Log:
XmlSchemaIdentityConstraint modernization.
Modified:
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSerializer.java
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSimpleContentExtension.java
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/ConstraintsTest.java
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/SimpleContentExtensionTest.java
Modified:
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java?rev=833739&r1=833738&r2=833739&view=diff
==============================================================================
---
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java
(original)
+++
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/SchemaBuilder.java
Sat Nov 7 19:53:16 2009
@@ -1296,7 +1296,7 @@
XmlSchemaIdentityConstraint constraint = typeClass.newInstance();
if (constraintEl.hasAttribute("name")) {
- constraint.name = constraintEl.getAttribute("name");
+ constraint.setName(constraintEl.getAttribute("name"));
}
if (constraintEl.hasAttribute("refer")) {
@@ -1322,11 +1322,11 @@
selectorXPath.setAnnotation(annotation);
}
- constraint.selector = selectorXPath;
+ constraint.setSelector(selectorXPath);
} else if (el.getLocalName().equals("field")) {
XmlSchemaXPath fieldXPath = new XmlSchemaXPath();
fieldXPath.xpath = el.getAttribute("xpath");
- constraint.fields.add(fieldXPath);
+ constraint.getFields().add(fieldXPath);
Element annotationEl = XDOMUtil.getFirstChildElementNS(el,
XmlSchema.SCHEMA_NS, "annotation");
@@ -1693,7 +1693,7 @@
if (extEl.hasAttribute("base")) {
String name = extEl.getAttribute("base");
- ext.baseTypeName = getRefQName(name, extEl);
+ ext.setBaseTypeName(getRefQName(name, extEl));
}
for (Element el = XDOMUtil.getFirstChildElementNS(extEl,
@@ -1702,13 +1702,13 @@
if (el.getLocalName().equals("attribute")) {
XmlSchemaAttribute attr = handleAttribute(schema, el,
schemaEl);
- ext.attributes.add(attr);
+ ext.getAttributes().add(attr);
} else if (el.getLocalName().equals("attributeGroup")) {
XmlSchemaAttributeGroupRef attrGroup = handleAttributeGroupRef(
schema, el);
- ext.attributes.add(attrGroup);
+ ext.getAttributes().add(attrGroup);
} else if (el.getLocalName().equals("anyAttribute")) {
- ext.anyAttribute = handleAnyAttribute(schema, el, schemaEl);
+ ext.setAnyAttribute(handleAnyAttribute(schema, el, schemaEl));
} else if (el.getLocalName().equals("annotation")) {
XmlSchemaAnnotation ann = handleAnnotation(el);
ext.setAnnotation(ann);
Modified:
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java?rev=833739&r1=833738&r2=833739&view=diff
==============================================================================
---
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java
(original)
+++
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaIdentityConstraint.java
Sat Nov 7 19:53:16 2009
@@ -19,26 +19,30 @@
package org.apache.ws.commons.schema;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
/**
* Class for the identity constraints: key, keyref, and unique elements.
*/
public class XmlSchemaIdentityConstraint extends XmlSchemaAnnotated {
- XmlSchemaObjectCollection fields;
+ private List<XmlSchemaXPath> fields;
- String name;
+ private String name;
- XmlSchemaXPath selector;
+ private XmlSchemaXPath selector;
/**
* Creates new XmlSchemaIdentityConstraint
*/
public XmlSchemaIdentityConstraint() {
- fields = new XmlSchemaObjectCollection();
+ fields = Collections.synchronizedList(new ArrayList<XmlSchemaXPath>());
}
- public XmlSchemaObjectCollection getFields() {
+ public List<XmlSchemaXPath> getFields() {
return fields;
}
@@ -58,4 +62,8 @@
this.selector = selector;
}
+ void setFields(List<XmlSchemaXPath> fields) {
+ this.fields = fields;
+ }
+
}
Modified:
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSerializer.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSerializer.java?rev=833739&r1=833738&r2=833739&view=diff
==============================================================================
---
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSerializer.java
(original)
+++
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSerializer.java
Sat Nov 7 19:53:16 2009
@@ -1328,23 +1328,23 @@
throw new XmlSchemaSerializerException("not valid identity " +
"constraint");
}
- if (constraintObj.name != null) {
- constraint.setAttribute("name", constraintObj.name);
+ if (constraintObj.getName() != null) {
+ constraint.setAttribute("name", constraintObj.getName());
}
if (constraintObj.getAnnotation() != null) {
Element annotation = serializeAnnotation(doc,
constraintObj.getAnnotation(), schema);
constraint.appendChild(annotation);
}
- if (constraintObj.selector != null) {
- Element selector = serializeSelector(doc, constraintObj.selector,
schema);
+ if (constraintObj.getSelector() != null) {
+ Element selector = serializeSelector(doc,
constraintObj.getSelector(), schema);
constraint.appendChild(selector);
}
- XmlSchemaObjectCollection fieldColl = constraintObj.fields;
+ List<XmlSchemaXPath> fieldColl = constraintObj.getFields();
if (fieldColl != null) {
- int fieldLength = fieldColl.getCount();
+ int fieldLength = fieldColl.size();
for (int i = 0; i < fieldLength; i++) {
- Element field = serializeField(doc,
(XmlSchemaXPath)fieldColl.getItem(i), schema);
+ Element field = serializeField(doc, fieldColl.get(i), schema);
constraint.appendChild(field);
}
}
@@ -1812,8 +1812,8 @@
Element extension = createNewElement(doc, "extension",
schema.getSchemaNamespacePrefix(),
XmlSchema.SCHEMA_NS);
- if (extensionObj.baseTypeName != null) {
- String baseTypeName = resolveQName(extensionObj.baseTypeName,
schema);
+ if (extensionObj.getBaseTypeName() != null) {
+ String baseTypeName = resolveQName(extensionObj.getBaseTypeName(),
schema);
extension.setAttribute("base", baseTypeName);
}
@@ -1827,10 +1827,10 @@
extension.appendChild(annotation);
}
- XmlSchemaObjectCollection attributes = extensionObj.attributes;
- int attributeLength = attributes.getCount();
+ List<XmlSchemaAnnotated> attributes = extensionObj.getAttributes();
+ int attributeLength = attributes.size();
for (int i = 0; i < attributeLength; i++) {
- XmlSchemaObject obj = attributes.getItem(i);
+ XmlSchemaObject obj = attributes.get(i);
if (obj instanceof XmlSchemaAttribute) {
Element attribute = serializeAttribute(doc,
(XmlSchemaAttribute)obj, schema);
@@ -1845,8 +1845,8 @@
/*
* anyAttribute must comeafter any other attributes
*/
- if (extensionObj.anyAttribute != null) {
- Element anyAttribute = serializeAnyAttribute(doc,
extensionObj.anyAttribute, schema);
+ if (extensionObj.getAnyAttribute() != null) {
+ Element anyAttribute = serializeAnyAttribute(doc,
extensionObj.getAnyAttribute(), schema);
extension.appendChild(anyAttribute);
}
Modified:
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSimpleContentExtension.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSimpleContentExtension.java?rev=833739&r1=833738&r2=833739&view=diff
==============================================================================
---
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSimpleContentExtension.java
(original)
+++
webservices/commons/trunk/modules/XmlSchema/src/main/java/org/apache/ws/commons/schema/XmlSchemaSimpleContentExtension.java
Sat Nov 7 19:53:16 2009
@@ -19,6 +19,10 @@
package org.apache.ws.commons.schema;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
import javax.xml.namespace.QName;
/**
@@ -29,22 +33,22 @@
public class XmlSchemaSimpleContentExtension extends XmlSchemaContent {
/* Allows an XmlSchemaAnyAttribute to be used for the attribute value. */
- XmlSchemaAnyAttribute anyAttribute;
+ private XmlSchemaAnyAttribute anyAttribute;
/*
* Contains XmlSchemaAttribute and XmlSchemaAttributeGroupRef. Collection
of attributes for the simple
* type.
*/
- XmlSchemaObjectCollection attributes;
+ private List<XmlSchemaAnnotated> attributes;
/* Name of the built-in data type, simple type, or complex type. */
- QName baseTypeName;
+ private QName baseTypeName;
/**
* Creates new XmlSchemaSimpleContentExtension
*/
public XmlSchemaSimpleContentExtension() {
- attributes = new XmlSchemaObjectCollection();
+ attributes = Collections.synchronizedList(new
ArrayList<XmlSchemaAnnotated>());
}
@@ -52,7 +56,7 @@
return this.anyAttribute;
}
- public XmlSchemaObjectCollection getAttributes() {
+ public List<XmlSchemaAnnotated> getAttributes() {
return this.attributes;
}
@@ -60,12 +64,16 @@
return this.baseTypeName;
}
- public void setAnyAttribute(XmlSchemaAnyAttribute anyAttribute) {
+ void setAnyAttribute(XmlSchemaAnyAttribute anyAttribute) {
this.anyAttribute = anyAttribute;
}
- public void setBaseTypeName(QName baseTypeName) {
+ void setBaseTypeName(QName baseTypeName) {
this.baseTypeName = baseTypeName;
}
+ void setAttributes(List<XmlSchemaAnnotated> attributes) {
+ this.attributes = attributes;
+ }
+
}
Modified:
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/ConstraintsTest.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/ConstraintsTest.java?rev=833739&r1=833738&r2=833739&view=diff
==============================================================================
---
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/ConstraintsTest.java
(original)
+++
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/ConstraintsTest.java
Sat Nov 7 19:53:16 2009
@@ -33,7 +33,6 @@
import org.apache.ws.commons.schema.XmlSchemaIdentityConstraint;
import org.apache.ws.commons.schema.XmlSchemaKey;
import org.apache.ws.commons.schema.XmlSchemaKeyref;
-import org.apache.ws.commons.schema.XmlSchemaObjectCollection;
import org.apache.ws.commons.schema.XmlSchemaUnique;
import org.apache.ws.commons.schema.XmlSchemaXPath;
@@ -97,11 +96,11 @@
XmlSchemaXPath selectorXpath = key.getSelector();
assertEquals("tns:products/tns:productName",
selectorXpath.getXPath());
- XmlSchemaObjectCollection fields = key.getFields();
- assertEquals(1, fields.getCount());
+ List<XmlSchemaXPath> fields = key.getFields();
+ assertEquals(1, fields.size());
XmlSchemaXPath fieldXpath = null;
- for (int j = 0; j < fields.getCount(); j++) {
- fieldXpath = (XmlSchemaXPath)fields.getItem(j);
+ for (int j = 0; j < fields.size(); j++) {
+ fieldXpath = fields.get(j);
}
assertNotNull(fieldXpath);
assertEquals("@productId", fieldXpath.getXPath());
@@ -114,11 +113,11 @@
XmlSchemaXPath selectorXpath = keyref.getSelector();
assertEquals("tns:manufacturers/tns:location/tns:productName",
selectorXpath.getXPath());
- XmlSchemaObjectCollection fields = keyref.getFields();
- assertEquals(1, fields.getCount());
+ List<XmlSchemaXPath> fields = keyref.getFields();
+ assertEquals(1, fields.size());
XmlSchemaXPath fieldXpath = null;
- for (int j = 0; j < fields.getCount(); j++) {
- fieldXpath = (XmlSchemaXPath)fields.getItem(j);
+ for (int j = 0; j < fields.size(); j++) {
+ fieldXpath = fields.get(j);
}
assertNotNull(fieldXpath);
assertEquals("@productId", fieldXpath.getXPath());
@@ -129,11 +128,11 @@
XmlSchemaXPath selectorXpath = unique.getSelector();
assertEquals("tns:manufacturers/tns:location",
selectorXpath.getXPath());
- XmlSchemaObjectCollection fields = unique.getFields();
- assertEquals(1, fields.getCount());
+ List<XmlSchemaXPath> fields = unique.getFields();
+ assertEquals(1, fields.size());
XmlSchemaXPath fieldXpath = null;
- for (int j = 0; j < fields.getCount(); j++) {
- fieldXpath = (XmlSchemaXPath)fields.getItem(j);
+ for (int j = 0; j < fields.size(); j++) {
+ fieldXpath = fields.get(j);
}
assertNotNull(fieldXpath);
assertEquals("@district", fieldXpath.getXPath());
Modified:
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/SimpleContentExtensionTest.java
URL:
http://svn.apache.org/viewvc/webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/SimpleContentExtensionTest.java?rev=833739&r1=833738&r2=833739&view=diff
==============================================================================
---
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/SimpleContentExtensionTest.java
(original)
+++
webservices/commons/trunk/modules/XmlSchema/src/test/java/tests/SimpleContentExtensionTest.java
Sat Nov 7 19:53:16 2009
@@ -22,17 +22,18 @@
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import javax.xml.namespace.QName;
import javax.xml.transform.stream.StreamSource;
import org.apache.ws.commons.schema.XmlSchema;
+import org.apache.ws.commons.schema.XmlSchemaAnnotated;
import org.apache.ws.commons.schema.XmlSchemaAttribute;
import org.apache.ws.commons.schema.XmlSchemaCollection;
import org.apache.ws.commons.schema.XmlSchemaComplexType;
import org.apache.ws.commons.schema.XmlSchemaElement;
-import org.apache.ws.commons.schema.XmlSchemaObjectCollection;
import org.apache.ws.commons.schema.XmlSchemaSimpleContent;
import org.apache.ws.commons.schema.XmlSchemaSimpleContentExtension;
@@ -77,15 +78,15 @@
assertNotNull(xssce);
assertEquals(new QName("http://www.w3.org/2001/XMLSchema", "integer"),
xssce.getBaseTypeName());
- XmlSchemaObjectCollection xsoc = xssce.getAttributes();
- assertEquals(3, xsoc.getCount());
+ List<XmlSchemaAnnotated> xsoc = xssce.getAttributes();
+ assertEquals(3, xsoc.size());
Set<String> s = new HashSet<String>();
s.add("units");
s.add("id");
s.add("desc");
- for (int i = 0; i < xsoc.getCount(); i++) {
- XmlSchemaAttribute xsa = (XmlSchemaAttribute)xsoc.getItem(i);
+ for (int i = 0; i < xsoc.size(); i++) {
+ XmlSchemaAttribute xsa = (XmlSchemaAttribute)xsoc.get(i);
String name = xsa.getName();
if ("units".equals(name)) {
assertEquals(new QName("http://soapinterop.org/types",
"units"), xsa.getQName());