Java XML QName Create convertStringsToQNames(List expandedQNames)

Here you can find the source of convertStringsToQNames(List expandedQNames)

Description

convert Strings To Q Names

License

Apache License

Declaration

public static Set<QName> convertStringsToQNames(List<String> expandedQNames) 

Method Source Code

//package com.java2s;
/**//from   ww  w .  java  2  s . co  m
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements. See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership. The ASF licenses this file
 * to you 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 java.util.Collections;
import java.util.LinkedHashSet;

import java.util.List;

import java.util.Set;

import javax.xml.namespace.QName;

public class Main {
    public static Set<QName> convertStringsToQNames(List<String> expandedQNames) {
        Set<QName> dropElements = Collections.emptySet();
        if (expandedQNames != null) {
            dropElements = new LinkedHashSet<QName>(expandedQNames.size());
            for (String val : expandedQNames) {
                dropElements.add(convertStringToQName(val));
            }
        }
        return dropElements;
    }

    public static QName convertStringToQName(String expandedQName) {
        return convertStringToQName(expandedQName, "");
    }

    public static QName convertStringToQName(String expandedQName, String prefix) {
        int ind1 = expandedQName.indexOf('{');
        if (ind1 != 0) {
            return new QName(expandedQName);
        }

        int ind2 = expandedQName.indexOf('}');
        if (ind2 <= ind1 + 1 || ind2 >= expandedQName.length() - 1) {
            return null;
        }
        String ns = expandedQName.substring(ind1 + 1, ind2);
        String localName = expandedQName.substring(ind2 + 1);
        return new QName(ns, localName, prefix);
    }
}

Related

  1. convertJavaTypeToQName(Type type)
  2. convertStringToQName(String expandedQName)
  3. createQName(Node node)
  4. createQName(String localPart)
  5. createQName(String namespaceUri, String localPart, String prefix)