Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.axis.wsdl.symbolTable
Class Utils

    java.lang.Object
      org.apache.axis.wsdl.symbolTable.Utils

Direct Known Subclasses:
  Utils

public class Utils
extends Object

This class contains static utility methods for the emitter.

Author:
  Rich Scheuerle (scheu@us.ibm.com), Tom Jordahl (tomj@macromedia.com)

Constructor Summary
`Utils()`

Method Summary
`static String` | `genQNameAttributeString(javax.xml.namespace.QName qname, String prefix)` Generate an XML prefixed attribute value with a corresponding xmlns declaration for the prefix.
`static String` | `getAttribute(Node node, String attr)` Given a node, return the value of the given attribute.
`static Vector` | `getAttributesWithLocalName(Node node, String localName)` Given a node, return the attributes that have the specified local name.
`static HashSet` | `getDerivedTypes(TypeEntry type, SymbolTable symbolTable)` This method returns a set of all types that are derived from this type via an extension of a complexType
`static HashSet` | `getNestedTypes(TypeEntry type, SymbolTable symbolTable, boolean derivedFlag)` This method returns a set of all the nested types.
`static javax.xml.namespace.QName` | `getNillableQName(javax.xml.namespace.QName qName)` getNillableQName returns the QName to use if the nillable=true attribute is used.
`static javax.xml.namespace.QName` | `getNodeNameQName(Node node)` XML nodes may have a name attribute.
`static javax.xml.namespace.QName` | `getNodeQName(Node node)` An xml element may have a name.
`static javax.xml.namespace.QName` | `getQNameFromPrefixedName(Node node, String prefixedName)` Convert a prefixed name into a qname
`static String` | `getScopedAttribute(Node node, String attr)` Given a node, return the value of the given attribute.
`static javax.xml.namespace.QName` | `getTypeQName(Node node, javax.xml.rpc.holders.BooleanHolder forElement, boolean ignoreMaxOccurs)` An XML element or attribute node has several ways of identifying the type of the element or attribute: - use the type attribute to reference a complexType/simpleType - use the ref attribute to reference another element - use of an anonymous type (i.e.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Utils

    public Utils()

Method Detail

### getNillableQName

    public static javax.xml.namespace.QName getNillableQName(javax.xml.namespace.QName qName)

  getNillableQName returns the QName to use if the nillable=true attribute is used. For example, in JAX-RPC: The QName "xsd:int" maps to a java int. However if an element with a type="xsd:int" also has the "nillable=true" attribute, the type should be an Integer (not an int). So in these circumstances, this routine is called with xsd:int to get a suitable qname (soapenc:int) which maps to Integer.

  Parameters:
    `qName` - QName

### getScopedAttribute

    public static String getScopedAttribute(Node node,
                                            String attr)

  Given a node, return the value of the given attribute. If the attribute does not exist, searching continues through ancestor nodes until found. This method is useful for finding attributes that pertain to a group of contained nodes (i.e. xlmns, xmlns:tns, targetNamespace, name)

### getAttribute

    public static String getAttribute(Node node,
                                      String attr)

  Given a node, return the value of the given attribute. Returns null if the attribute is not found

### getAttributesWithLocalName

    public static Vector getAttributesWithLocalName(Node node,
                                                    String localName)

  Given a node, return the attributes that have the specified local name. Returns null if the attribute is not found

### getNodeQName

    public static javax.xml.namespace.QName getNodeQName(Node node)

  An xml element may have a name. For example <.element name="foo" type="b:bar">. has the name "element". This routine gets the full QName of the element.

### getNodeNameQName

    public static javax.xml.namespace.QName getNodeNameQName(Node node)

  XML nodes may have a name attribute. For example <.element name="foo" type="b:bar">. has the name attribute value "foo". This routine gets the QName of the name attribute value.

### getTypeQName

    public static javax.xml.namespace.QName getTypeQName(Node node,
                                                         javax.xml.rpc.holders.BooleanHolder forElement,
                                                         boolean ignoreMaxOccurs)

  An XML element or attribute node has several ways of identifying the type of the element or attribute: - use the type attribute to reference a complexType/simpleType - use the ref attribute to reference another element - use of an anonymous type (i.e. a nested type underneath itself) - a wsdl:part can use the element attribute. - an extension can use the base attribute.

  This routine returns a QName representing this "type". The forElement value is also returned to indicate whether the QName represents an element (i.e. obtained using the ref attribute) or a type.

  Other attributes affect the QName that is returned. If the "minOccurs" and "maxOccurs" are set such that the type is a collection of "types", then an artificial qname is returned to represent the collection.

  Parameters:
    `node` - of the reference
    `forElement` - output parameter is set to true if QName is for an element (i.e. ref= or element= attribute was used).
    `ignoreMaxOccurs` - indicates whether minOccurs/maxOccurs affects the QName
  Returns:
    QName representing the type of this element

### getQNameFromPrefixedName

    public static javax.xml.namespace.QName getQNameFromPrefixedName(Node node,
                                                                     String prefixedName)

  Convert a prefixed name into a qname

### getDerivedTypes

    public static HashSet getDerivedTypes(TypeEntry type,
                                          SymbolTable symbolTable)

  This method returns a set of all types that are derived from this type via an extension of a complexType

### getNestedTypes

    public static HashSet getNestedTypes(TypeEntry type,
                                         SymbolTable symbolTable,
                                         boolean derivedFlag)

  This method returns a set of all the nested types. Nested types are types declared within this TypeEntry (or descendents) plus any extended types and the extended type nested types The elements of the returned HashSet are Types.

  Parameters:
    `type` - is the type entry to consider
    `symbolTable` - is the symbolTable
    `derivedFlag` - should be set if all dependendent derived types should also be returned.

### genQNameAttributeString

    public static String genQNameAttributeString(javax.xml.namespace.QName qname,
                                                 String prefix)

  Generate an XML prefixed attribute value with a corresponding xmlns declaration for the prefix. If there is no namespace, don't prefix the name or emit the xmlns attribute.

  Caller should provide the enclosing quotes.

  Usage: println("name=\"" + genXMLQNameString(qname, "foo") + "\""

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002 JBoss Group, LLC. All Rights Reserved.