Package net.shibboleth.shared.xml

# Class QNameSupport

java.lang.Object
net.shibboleth.shared.xml.QNameSupport

public final class QNameSupport extends Object
Set of helper methods for working with DOM QNames.

## Constructor Summary

Constructors
Modifier
Constructor
Description
`private`
`QNameSupport()`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`static QName`
`constructQName(String namespaceURI, String localName, String prefix)`
Constructs a QName.
`static QName`
`constructQName(Element owningElement, String qname)`
Constructs a QName from a string (attribute or element content) value.
`static String`
`ensureLocalPart(QName qname)`
Returns `QName.getLocalPart()`, raising an `IllegalStateException` if null.
`static QName`
`getNodeQName(Node domNode)`
Gets the QName for the given DOM node.
`static String`
`qnameToContentString(QName qname)`
Converts a QName into a string that can be used for attribute values or element content.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### QNameSupport

private QNameSupport()
Constructor.

## Method Details

### constructQName

@Nonnull public static QName constructQName(@Nonnull Element owningElement, @Nonnull @NotEmpty String qname)
Constructs a QName from a string (attribute or element content) value.

Parameters:
  `owningElement` - parent DOM element of the Node which contains the QName value
  `qname` - the QName string
Returns:
  the QName respresented by the string

### constructQName

@Nonnull public static QName constructQName(@Nullable String namespaceURI, @Nonnull @NotEmpty String localName, @Nullable String prefix)
Constructs a QName.

Parameters:
  `namespaceURI` - the namespace of the QName
  `localName` - the local name of the QName
  `prefix` - the prefix of the QName, may be null
Returns:
  the QName

### getNodeQName

@Nonnull public static QName getNodeQName(@Nonnull Node domNode)
Gets the QName for the given DOM node.

Parameters:
  `domNode` - the DOM node
Returns:
  the QName for the element or null if the element was null

### qnameToContentString

@Nonnull public static String qnameToContentString(@Nonnull QName qname)
Converts a QName into a string that can be used for attribute values or element content.

Parameters:
  `qname` - the QName to convert to a string
Returns:
  the string value of the QName

### ensureLocalPart

@Nonnull public static String ensureLocalPart(@Nonnull QName qname)
Returns `QName.getLocalPart()`, raising an `IllegalStateException` if null.

Parameters:
  `qname` - input QName
Returns:
  the local part of the QName
Since:
  9.0.0