javax.xml.stream.events.ProcessingInstruction#javax.xml.stream.events.Namespace源码实例Demo

下面列出了javax.xml.stream.events.ProcessingInstruction#javax.xml.stream.events.Namespace 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: spring-analysis-note   文件: StaxEventXMLReader.java
private void handleStartElement(StartElement startElement) throws SAXException {
	if (getContentHandler() != null) {
		QName qName = startElement.getName();
		if (hasNamespacesFeature()) {
			for (Iterator i = startElement.getNamespaces(); i.hasNext();) {
				Namespace namespace = (Namespace) i.next();
				startPrefixMapping(namespace.getPrefix(), namespace.getNamespaceURI());
			}
			for (Iterator i = startElement.getAttributes(); i.hasNext();){
				Attribute attribute = (Attribute) i.next();
				QName attributeName = attribute.getName();
				startPrefixMapping(attributeName.getPrefix(), attributeName.getNamespaceURI());
			}

			getContentHandler().startElement(qName.getNamespaceURI(), qName.getLocalPart(), toQualifiedName(qName),
					getAttributes(startElement));
		}
		else {
			getContentHandler().startElement("", "", toQualifiedName(qName), getAttributes(startElement));
		}
	}
}
 
源代码2 项目: spring-analysis-note   文件: StaxEventXMLReader.java
private void handleEndElement(EndElement endElement) throws SAXException {
	if (getContentHandler() != null) {
		QName qName = endElement.getName();
		if (hasNamespacesFeature()) {
			getContentHandler().endElement(qName.getNamespaceURI(), qName.getLocalPart(), toQualifiedName(qName));
			for (Iterator i = endElement.getNamespaces(); i.hasNext();) {
				Namespace namespace = (Namespace) i.next();
				endPrefixMapping(namespace.getPrefix());
			}
		}
		else {
			getContentHandler().endElement("", "", toQualifiedName(qName));
		}

	}
}
 
@SuppressWarnings("rawtypes")
private Namespace getNamespace(int index) {
	Iterator namespaces;
	if (this.event.isStartElement()) {
		namespaces = this.event.asStartElement().getNamespaces();
	}
	else if (this.event.isEndElement()) {
		namespaces = this.event.asEndElement().getNamespaces();
	}
	else {
		throw new IllegalStateException();
	}
	int count = 0;
	while (namespaces.hasNext()) {
		Namespace namespace = (Namespace) namespaces.next();
		if (count == index) {
			return namespace;
		}
		else {
			count++;
		}
	}
	throw new IllegalArgumentException();
}
 
源代码4 项目: bazel   文件: XmlResourceValues.java
public static Map<String, String> parseTagAttributes(StartElement start) {
  // Using a map to deduplicate xmlns declarations on the attributes.
  Map<String, String> attributeMap = new LinkedHashMap<>();
  Iterator<Attribute> attributes = iterateAttributesFrom(start);
  while (attributes.hasNext()) {
    Attribute attribute = attributes.next();
    QName name = attribute.getName();
    // Name used as the resource key, so skip it here.
    if (ATTR_NAME.equals(name)) {
      continue;
    }
    String value = escapeXmlValues(attribute.getValue()).replace("\"", "&quot;");
    if (!name.getNamespaceURI().isEmpty()) {
      attributeMap.put(name.getPrefix() + ":" + attribute.getName().getLocalPart(), value);
    } else {
      attributeMap.put(attribute.getName().getLocalPart(), value);
    }
    Iterator<Namespace> namespaces = iterateNamespacesFrom(start);
    while (namespaces.hasNext()) {
      Namespace namespace = namespaces.next();
      attributeMap.put("xmlns:" + namespace.getPrefix(), namespace.getNamespaceURI());
    }
  }
  return attributeMap;
}
 
源代码5 项目: TencentKona-8   文件: StAXEventConnector.java
private void handleEndElement(EndElement event) throws SAXException {
    if(!seenText && predictor.expectText()) {
        visitor.text("");
    }

    // fire endElement
    QName qName = event.getName();
    tagName.uri = fixNull(qName.getNamespaceURI());
    tagName.local = qName.getLocalPart();
    visitor.endElement(tagName);

    // end namespace bindings
    for( Iterator<Namespace> i = event.getNamespaces(); i.hasNext();) {
        String prefix = fixNull(i.next().getPrefix());  // be defensive
        visitor.endPrefixMapping(prefix);
    }

    seenText = false;
}
 
private void handleEndElement(EndElement endElement) throws SAXException {
	if (getContentHandler() != null) {
		QName qName = endElement.getName();
		if (hasNamespacesFeature()) {
			getContentHandler().endElement(qName.getNamespaceURI(), qName.getLocalPart(), toQualifiedName(qName));
			for (Iterator i = endElement.getNamespaces(); i.hasNext();) {
				Namespace namespace = (Namespace) i.next();
				endPrefixMapping(namespace.getPrefix());
			}
		}
		else {
			getContentHandler().endElement("", "", toQualifiedName(qName));
		}

	}
}
 
源代码7 项目: jdk8u60   文件: StAXEventConnector.java
private void handleEndElement(EndElement event) throws SAXException {
    if(!seenText && predictor.expectText()) {
        visitor.text("");
    }

    // fire endElement
    QName qName = event.getName();
    tagName.uri = fixNull(qName.getNamespaceURI());
    tagName.local = qName.getLocalPart();
    visitor.endElement(tagName);

    // end namespace bindings
    for( Iterator<Namespace> i = event.getNamespaces(); i.hasNext();) {
        String prefix = fixNull(i.next().getPrefix());  // be defensive
        visitor.endPrefixMapping(prefix);
    }

    seenText = false;
}
 
源代码8 项目: jdk8u60   文件: StAXEventConnector.java
private void handleStartElement(StartElement event) throws SAXException {
    // start namespace bindings
    for (Iterator i = event.getNamespaces(); i.hasNext();) {
        Namespace ns = (Namespace)i.next();
        visitor.startPrefixMapping(
            fixNull(ns.getPrefix()),
            fixNull(ns.getNamespaceURI()));
    }

    // fire startElement
    QName qName = event.getName();
    tagName.uri = fixNull(qName.getNamespaceURI());
    String localName = qName.getLocalPart();
    tagName.uri = fixNull(qName.getNamespaceURI());
    tagName.local = localName;
    tagName.atts = getAttributes(event);
    visitor.startElement(tagName);

    seenText = false;
}
 
源代码9 项目: openjdk-jdk9   文件: StAXEventConnector.java
private void handleStartElement(StartElement event) throws SAXException {
    // start namespace bindings
    for (Iterator i = event.getNamespaces(); i.hasNext();) {
        Namespace ns = (Namespace)i.next();
        visitor.startPrefixMapping(
            fixNull(ns.getPrefix()),
            fixNull(ns.getNamespaceURI()));
    }

    // fire startElement
    QName qName = event.getName();
    tagName.uri = fixNull(qName.getNamespaceURI());
    String localName = qName.getLocalPart();
    tagName.uri = fixNull(qName.getNamespaceURI());
    tagName.local = localName;
    tagName.atts = getAttributes(event);
    visitor.startElement(tagName);

    seenText = false;
}
 
源代码10 项目: openjdk-jdk9   文件: StAXEventConnector.java
private void handleEndElement(EndElement event) throws SAXException {
    if(!seenText && predictor.expectText()) {
        visitor.text("");
    }

    // fire endElement
    QName qName = event.getName();
    tagName.uri = fixNull(qName.getNamespaceURI());
    tagName.local = qName.getLocalPart();
    visitor.endElement(tagName);

    // end namespace bindings
    for( Iterator<Namespace> i = event.getNamespaces(); i.hasNext();) {
        String prefix = fixNull(i.next().getPrefix());  // be defensive
        visitor.endPrefixMapping(prefix);
    }

    seenText = false;
}
 
源代码11 项目: keycloak   文件: TransformerUtil.java
@SuppressWarnings("unchecked")
private String containsBaseNamespace(StartElement startElement) {
    String localPart, prefix, qual = null;

    Iterator<Namespace> namespaces = startElement.getNamespaces();
    while (namespaces != null && namespaces.hasNext()) {
        Namespace namespace = namespaces.next();
        QName name = namespace.getName();
        localPart = name.getLocalPart();
        prefix = name.getPrefix();
        if (prefix != null && ! prefix.isEmpty())
            qual = (localPart != null && ! localPart.isEmpty()) ? prefix + ":" + localPart : prefix;

        if (qual != null && qual.equals("xmlns"))
            return namespace.getNamespaceURI();
    }
    return null;
}
 
源代码12 项目: lams   文件: JpaOrmXmlEventReader.java
private List<Namespace> mapNamespaces(Iterator<Namespace> originalNamespaceIterator ) {
		final List<Namespace> mappedNamespaces = new ArrayList<Namespace>();

//		final String elementNamespacePrefix = startElement.getName().getPrefix();
//		if ( EMPTY_NAMESPACE_PREFIX.equals( elementNamespacePrefix ) ) {
//			// add the default namespace mapping
//			mappedNamespaces.add( xmlEventFactory.createNamespace( LocalSchema.ORM.getNamespaceUri() ) );
//		}

		while ( originalNamespaceIterator.hasNext() ) {
			final Namespace originalNamespace  = originalNamespaceIterator.next();
			final Namespace mappedNamespace = mapNamespace( originalNamespace );
			mappedNamespaces.add( mappedNamespace );
		}

		if ( mappedNamespaces.isEmpty() ) {
			mappedNamespaces.add( xmlEventFactory.createNamespace( MappingXsdSupport.INSTANCE.latestJpaDescriptor().getNamespaceUri() ) );
		}

		return mappedNamespaces;
	}
 
源代码13 项目: woodstox   文件: MergedNsContext.java
@Override
public void outputNamespaceDeclarations(Writer w) throws IOException
{
    for (int i = 0, len = mNamespaces.size(); i < len; ++i) {
        Namespace ns = mNamespaces.get(i);
        w.write(' ');
        w.write(XMLConstants.XMLNS_ATTRIBUTE);
        if (!ns.isDefaultNamespaceDeclaration()) {
            w.write(':');
            w.write(ns.getPrefix());
        }
        w.write("=\"");
        w.write(ns.getNamespaceURI());
        w.write('"');
    }
}
 
源代码14 项目: openjdk-jdk8u-backup   文件: StAXEventConnector.java
private void handleStartElement(StartElement event) throws SAXException {
    // start namespace bindings
    for (Iterator i = event.getNamespaces(); i.hasNext();) {
        Namespace ns = (Namespace)i.next();
        visitor.startPrefixMapping(
            fixNull(ns.getPrefix()),
            fixNull(ns.getNamespaceURI()));
    }

    // fire startElement
    QName qName = event.getName();
    tagName.uri = fixNull(qName.getNamespaceURI());
    String localName = qName.getLocalPart();
    tagName.uri = fixNull(qName.getNamespaceURI());
    tagName.local = localName;
    tagName.atts = getAttributes(event);
    visitor.startElement(tagName);

    seenText = false;
}
 
源代码15 项目: hottub   文件: StAXEventAllocatorBase.java
protected void addNamespaces(StartElementEvent event,XMLStreamReader streamReader){
    Namespace namespace = null;
    for(int i=0; i<streamReader.getNamespaceCount(); i++){
        namespace = factory.createNamespace(streamReader.getNamespacePrefix(i),
                            streamReader.getNamespaceURI(i));
        event.addNamespace(namespace);
    }
}
 
源代码16 项目: cxf   文件: AbstractNoStartEndEventProducer.java
public List<Namespace> getNamespaces() {
    List<Namespace> namespaces = null;
    if (currentEventProducer != null) {
        namespaces = currentEventProducer.getNamespaces();
    }
    return namespaces;
}
 
源代码17 项目: Bytecoder   文件: StartElementEvent.java
void addAttribute(Attribute attr) {
    if (attr.isNamespace()) {
        fNamespaces.add((Namespace) attr);
    } else {
        fAttributes.put(attr.getName(), attr);
    }
}
 
源代码18 项目: hottub   文件: StAXEventAllocatorBase.java
protected void addNamespaces(EndElementEvent event,XMLStreamReader streamReader){
    Namespace namespace = null;
    for(int i=0; i<streamReader.getNamespaceCount(); i++){
        namespace = factory.createNamespace(streamReader.getNamespacePrefix(i),
                            streamReader.getNamespaceURI(i));
        event.addNamespace(namespace);
    }
}
 
源代码19 项目: ts-reaktive   文件: StaxWriter.java
/**
 * Adds a namespace mapping for [name] to [namespaces], if it doesn't already exist on [writer].
 */
private static boolean register(XMLEventWriter writer, List<Namespace> namespaces, QName name) {
    String nsUri = name.getNamespaceURI();
    if (nsUri != null && !nsUri.isEmpty()) {
        String existing = writer.getNamespaceContext().getNamespaceURI(name.getPrefix());
        Namespace ns = evtFactory.createNamespace(name.getPrefix(), nsUri);
        if ((existing == null || !existing.equals(nsUri)) && !namespaces.stream().anyMatch(n ->
            n.getPrefix().equals(ns.getPrefix())
        )) {
            namespaces.add(ns);
            return true;
        }
    }
    return false;
}
 
源代码20 项目: TencentKona-8   文件: StAXSchemaParser.java
/** Fills in the list of declared prefixes. */
private void fillDeclaredPrefixes(Iterator namespaces) {
    fDeclaredPrefixes.clear();
    while (namespaces.hasNext()) {
        Namespace ns = (Namespace) namespaces.next();
        String prefix = ns.getPrefix();
        fDeclaredPrefixes.add(prefix != null ? prefix : "");
    }
}
 
源代码21 项目: openjdk-jdk9   文件: EndElementEvent.java
/**
 * Returns an Iterator of namespaces that have gone out of scope. Returns an
 * empty iterator if no namespaces have gone out of scope.
 *
 * @return an Iterator over Namespace interfaces, or an empty iterator
 */
@Override
public Iterator<Namespace> getNamespaces() {
    if (fNamespaces != null) {
        fNamespaces.iterator();
    }
    return new ReadOnlyIterator<>();
}
 
源代码22 项目: openjdk-jdk9   文件: StartElementEvent.java
final void addNamespaceAttributes(Iterator<? extends Namespace> attrs) {
    if (attrs == null) {
        return;
    }
    while (attrs.hasNext()) {
        Namespace attr = attrs.next();
        fNamespaces.add(attr);
    }
}
 
源代码23 项目: openjdk-jdk9   文件: StAXEventAllocatorBase.java
protected void addNamespaces(EndElementEvent event,XMLStreamReader streamReader){
    Namespace namespace = null;
    for(int i=0; i<streamReader.getNamespaceCount(); i++){
        namespace = factory.createNamespace(streamReader.getNamespacePrefix(i),
                            streamReader.getNamespaceURI(i));
        event.addNamespace(namespace);
    }
}
 
@SuppressWarnings("rawtypes")
private void doWriteNamespace(Namespace namespace) throws XMLStreamException {
	int last = this.endElements.size() - 1;
	EndElement oldEndElement = this.endElements.get(last);
	Iterator oldNamespaces = oldEndElement.getNamespaces();
	List<Namespace> newNamespaces = new ArrayList<>();
	while (oldNamespaces.hasNext()) {
		Namespace oldNamespace = (Namespace) oldNamespaces.next();
		newNamespaces.add(oldNamespace);
	}
	newNamespaces.add(namespace);
	EndElement newEndElement = this.eventFactory.createEndElement(oldEndElement.getName(), newNamespaces.iterator());
	this.eventWriter.add(namespace);
	this.endElements.set(last, newEndElement);
}
 
源代码25 项目: woodstox   文件: MergedNsContext.java
@Override
public String doGetPrefix(String nsURI)
{
    // Note: base class checks for 'known' problems and prefixes:
    if (mNsByURI == null) {
        mNsByURI = buildByNsURIMap();
    }
    Namespace ns = mNsByURI.get(nsURI);
    if (ns == null && mParentCtxt != null) {
        return mParentCtxt.getPrefix(nsURI);
    }
    return (ns == null) ? null : ns.getPrefix();
}
 
源代码26 项目: openjdk-8   文件: XMLEventFactoryImpl.java
public javax.xml.stream.events.EndElement createEndElement(String prefix, String namespaceUri, String localName, java.util.Iterator namespaces) {

        EndElementEvent event =  new EndElementEvent(prefix, namespaceUri, localName);
        if(namespaces!=null){
            while(namespaces.hasNext())
                event.addNamespace((Namespace)namespaces.next());
        }
        if(location != null)event.setLocation(location);
        return event;
    }
 
源代码27 项目: jdk8u60   文件: StAXEventAllocatorBase.java
protected void addNamespaces(StartElementEvent event,XMLStreamReader streamReader){
    Namespace namespace = null;
    for(int i=0; i<streamReader.getNamespaceCount(); i++){
        namespace = factory.createNamespace(streamReader.getNamespacePrefix(i),
                            streamReader.getNamespaceURI(i));
        event.addNamespace(namespace);
    }
}
 
源代码28 项目: spring4-understanding   文件: StaxEventHandler.java
private List<Namespace> getNamespaces(Map<String, String> namespaceMapping) {
	List<Namespace> result = new ArrayList<Namespace>();
	for (Map.Entry<String, String> entry : namespaceMapping.entrySet()) {
		String prefix = entry.getKey();
		String namespaceUri = entry.getValue();
		result.add(this.eventFactory.createNamespace(prefix, namespaceUri));
	}
	return result;
}
 
源代码29 项目: JDKSourceCode1.8   文件: StAXSchemaParser.java
/** Fills in the list of declared prefixes. */
private void fillDeclaredPrefixes(Iterator namespaces) {
    fDeclaredPrefixes.clear();
    while (namespaces.hasNext()) {
        Namespace ns = (Namespace) namespaces.next();
        String prefix = ns.getPrefix();
        fDeclaredPrefixes.add(prefix != null ? prefix : "");
    }
}
 
源代码30 项目: openjdk-jdk8u   文件: StartElementEvent.java
public void addNamespaces(Iterator namespaces){
    if(namespaces != null) {
        while(namespaces.hasNext()){
            Namespace namespace = (Namespace)namespaces.next();
            _namespaces.add(namespace);
        }
    }
}