XSNamedMap4Typespublic class XSNamedMap4Types extends XSNamedMapImpl Containts the map between qnames and XSObject's. |
Methods Summary |
---|
public synchronized int | getLength()The number of XSObjects in the XSObjectList . The
range of valid child node indices is 0 to length-1
inclusive.
if (fLength == -1) {
// first get the number of components for all types
int length = 0;
for (int i = 0; i < fNSNum; i++)
length += fMaps[i].getLength();
// then copy all types to an temporary array
int pos = 0;
XSObject[] array = new XSObject[length];
for (int i = 0; i < fNSNum; i++) {
pos += fMaps[i].getValues(array, pos);
}
// then copy either simple or complex types to fArray,
// depending on which kind is required
fLength = 0;
fArray = new XSObject[length];
XSTypeDefinition type;
for (int i = 0; i < length; i++) {
type = (XSTypeDefinition)array[i];
if (type.getTypeCategory() == fType) {
fArray[fLength++] = type;
}
}
}
return fLength;
| public synchronized org.apache.xerces.xs.XSObject | item(int index)Returns the index th item in the map. The index starts at
0. If index is greater than or equal to the number of
nodes in the list, this returns null .
if (fArray == null) {
getLength();
}
if (index < 0 || index >= fLength)
return null;
return fArray[index];
| public org.apache.xerces.xs.XSObject | itemByName(java.lang.String namespace, java.lang.String localName)Retrieves an XSObject specified by local name and namespace
URI.
for (int i = 0; i < fNSNum; i++) {
if (isEqual(namespace, fNamespaces[i])) {
XSTypeDefinition type = (XSTypeDefinition)fMaps[i].get(localName);
// only return it if it mataches the required type
if (type.getTypeCategory() == fType)
return type;
return null;
}
}
return null;
|
|