Java XML QName Convert toQualifiedName(QName qName)

Here you can find the source of toQualifiedName(QName qName)

Description

Convert a QName to a qualified name, as used by DOM and SAX.

License

Apache License

Parameter

Parameter Description
qName the <code>QName</code>

Return

the qualified name

Declaration

public static String toQualifiedName(QName qName) 

Method Source Code


//package com.java2s;
/*/*from   w  w  w  .  ja  va  2s.  com*/
 * Copyright 2005-2010 the original author or authors.
 *
 * 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.
 */

import javax.xml.namespace.QName;

import org.springframework.util.StringUtils;

public class Main {
    /** Indicates whether {@link QName} has a prefix. The first release of the class did not have this. */
    private static boolean qNameHasPrefix;

    /**
     * Convert a <code>QName</code> to a qualified name, as used by DOM and SAX. The returned string has a format of
     * <code>prefix:localName</code> if the prefix is set, or just <code>localName</code> if not.
     *
     * @param qName the <code>QName</code>
     * @return the qualified name
     */
    public static String toQualifiedName(QName qName) {
        String prefix = getPrefix(qName);
        if (!StringUtils.hasLength(prefix)) {
            return qName.getLocalPart();
        } else {
            return prefix + ":" + qName.getLocalPart();
        }
    }

    /**
     * Returns the prefix of the given <code>QName</code>. Returns the prefix if available, i.e. if the
     * <code>QName.getPrefix()</code> method can be found. If this method is not available (as is the case on older
     * implementations of JAX-RPC), an empty string is returned.
     *
     * @param qName the <code>QName</code> to return the prefix from
     * @return the prefix, if available, or an empty string
     * @see javax.xml.namespace.QName#getPrefix()
     */
    public static String getPrefix(QName qName) {
        return qNameHasPrefix ? qName.getPrefix() : "";
    }
}

Related

  1. toPid(final QName processType, final long version)
  2. toQualifiedName(final QName qname)
  3. toString(final QName qname)
  4. toString(QName qName)
  5. toURI(QName name)