325N/A/*
325N/A * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
325N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
325N/A *
325N/A * This code is free software; you can redistribute it and/or modify it
325N/A * under the terms of the GNU General Public License version 2 only, as
325N/A * published by the Free Software Foundation. Oracle designates this
325N/A * particular file as subject to the "Classpath" exception as provided
325N/A * by Oracle in the LICENSE file that accompanied this code.
325N/A *
325N/A * This code is distributed in the hope that it will be useful, but WITHOUT
325N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
325N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
325N/A * version 2 for more details (a copy is included in the LICENSE file that
325N/A * accompanied this code).
325N/A *
325N/A * You should have received a copy of the GNU General Public License version
325N/A * 2 along with this work; if not, write to the Free Software Foundation,
325N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
325N/A *
325N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
325N/A * or visit www.oracle.com if you need additional information or have any
325N/A * questions.
325N/A */
325N/A
325N/A/* this file is generated by RelaxNGCC */
325N/Apackage com.sun.xml.internal.xsom.impl.parser.state;
325N/Aimport org.xml.sax.SAXException;
325N/Aimport org.xml.sax.XMLReader;
325N/Aimport org.xml.sax.Attributes;
325N/Aimport com.sun.xml.internal.xsom.impl.parser.NGCCRuntimeEx;
325N/A
325N/A import com.sun.xml.internal.xsom.*;
325N/A import com.sun.xml.internal.xsom.parser.*;
325N/A import com.sun.xml.internal.xsom.impl.*;
325N/A import com.sun.xml.internal.xsom.impl.parser.*;
325N/A import org.xml.sax.Locator;
325N/A import org.xml.sax.ContentHandler;
325N/A import org.xml.sax.helpers.*;
325N/A import java.util.*;
325N/A import java.math.BigInteger;
325N/A
325N/Aimport java.util.StringTokenizer;
325N/A import java.util.HashSet;
325N/A
325N/A
325N/Aclass wildcardBody extends NGCCHandler {
325N/A private AnnotationImpl annotation;
325N/A private Locator locator;
325N/A private String modeValue;
325N/A private String ns;
325N/A private ForeignAttributesImpl fa;
325N/A protected final NGCCRuntimeEx $runtime;
325N/A private int $_ngcc_current_state;
325N/A protected String $uri;
325N/A protected String $localName;
325N/A protected String $qname;
325N/A
325N/A public final NGCCRuntime getRuntime() {
325N/A return($runtime);
325N/A }
325N/A
325N/A public wildcardBody(NGCCHandler parent, NGCCEventSource source, NGCCRuntimeEx runtime, int cookie, Locator _locator) {
325N/A super(source, parent, cookie);
325N/A $runtime = runtime;
325N/A this.locator = _locator;
325N/A $_ngcc_current_state = 10;
325N/A }
325N/A
325N/A public wildcardBody(NGCCRuntimeEx runtime, Locator _locator) {
325N/A this(null, runtime, runtime, -1, _locator);
325N/A }
325N/A
325N/A public void enterElement(String $__uri, String $__local, String $__qname, Attributes $attrs) throws SAXException {
325N/A int $ai;
325N/A $uri = $__uri;
325N/A $localName = $__local;
325N/A $qname = $__qname;
325N/A switch($_ngcc_current_state) {
325N/A case 5:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","processContents"))>=0) {
325N/A $runtime.consumeAttribute($ai);
325N/A $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 1;
325N/A $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A }
325N/A break;
325N/A case 9:
325N/A {
325N/A if((($ai = $runtime.getAttributeIndex("","processContents"))>=0 || ($ai = $runtime.getAttributeIndex("","namespace"))>=0)) {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A else {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A }
325N/A break;
325N/A case 10:
325N/A {
325N/A if(($__uri.equals("http://www.w3.org/2001/XMLSchema") && $__local.equals("annotation"))) {
325N/A NGCCHandler h = new annotation(this, super._source, $runtime, 414, null,AnnotationContext.WILDCARD);
325N/A spawnChildFromEnterElement(h, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 9;
325N/A $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A }
325N/A break;
325N/A case 1:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","namespace"))>=0) {
325N/A $runtime.consumeAttribute($ai);
325N/A $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 0;
325N/A $runtime.sendEnterElement(super._cookie, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A }
325N/A break;
325N/A case 0:
325N/A {
325N/A revertToParentFromEnterElement(makeResult(), super._cookie, $__uri, $__local, $__qname, $attrs);
325N/A }
325N/A break;
325N/A default:
325N/A {
325N/A unexpectedEnterElement($__qname);
325N/A }
325N/A break;
325N/A }
325N/A }
325N/A
325N/A public void leaveElement(String $__uri, String $__local, String $__qname) throws SAXException {
325N/A int $ai;
325N/A $uri = $__uri;
325N/A $localName = $__local;
325N/A $qname = $__qname;
325N/A switch($_ngcc_current_state) {
325N/A case 5:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","processContents"))>=0) {
325N/A $runtime.consumeAttribute($ai);
325N/A $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 1;
325N/A $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 9:
325N/A {
325N/A if((($ai = $runtime.getAttributeIndex("","processContents"))>=0 || ($ai = $runtime.getAttributeIndex("","namespace"))>=0)) {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
325N/A }
325N/A else {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromLeaveElement(h, $__uri, $__local, $__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 10:
325N/A {
325N/A $_ngcc_current_state = 9;
325N/A $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A case 1:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","namespace"))>=0) {
325N/A $runtime.consumeAttribute($ai);
325N/A $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 0;
325N/A $runtime.sendLeaveElement(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 0:
325N/A {
325N/A revertToParentFromLeaveElement(makeResult(), super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A default:
325N/A {
325N/A unexpectedLeaveElement($__qname);
325N/A }
325N/A break;
325N/A }
325N/A }
325N/A
325N/A public void enterAttribute(String $__uri, String $__local, String $__qname) throws SAXException {
325N/A int $ai;
325N/A $uri = $__uri;
325N/A $localName = $__local;
325N/A $qname = $__qname;
325N/A switch($_ngcc_current_state) {
325N/A case 5:
325N/A {
325N/A if(($__uri.equals("") && $__local.equals("processContents"))) {
325N/A $_ngcc_current_state = 7;
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 1;
325N/A $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 9:
325N/A {
325N/A if((($__uri.equals("") && $__local.equals("processContents")) || ($__uri.equals("") && $__local.equals("namespace")))) {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromEnterAttribute(h, $__uri, $__local, $__qname);
325N/A }
325N/A else {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromEnterAttribute(h, $__uri, $__local, $__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 10:
325N/A {
325N/A $_ngcc_current_state = 9;
325N/A $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A case 1:
325N/A {
325N/A if(($__uri.equals("") && $__local.equals("namespace"))) {
325N/A $_ngcc_current_state = 3;
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 0;
325N/A $runtime.sendEnterAttribute(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 0:
325N/A {
325N/A revertToParentFromEnterAttribute(makeResult(), super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A default:
325N/A {
325N/A unexpectedEnterAttribute($__qname);
325N/A }
325N/A break;
325N/A }
325N/A }
325N/A
325N/A public void leaveAttribute(String $__uri, String $__local, String $__qname) throws SAXException {
325N/A int $ai;
325N/A $uri = $__uri;
325N/A $localName = $__local;
325N/A $qname = $__qname;
325N/A switch($_ngcc_current_state) {
325N/A case 5:
325N/A {
325N/A $_ngcc_current_state = 1;
325N/A $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A case 9:
325N/A {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromLeaveAttribute(h, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A case 2:
325N/A {
325N/A if(($__uri.equals("") && $__local.equals("namespace"))) {
325N/A $_ngcc_current_state = 0;
325N/A }
325N/A else {
325N/A unexpectedLeaveAttribute($__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 10:
325N/A {
325N/A $_ngcc_current_state = 9;
325N/A $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A case 1:
325N/A {
325N/A $_ngcc_current_state = 0;
325N/A $runtime.sendLeaveAttribute(super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A case 6:
325N/A {
325N/A if(($__uri.equals("") && $__local.equals("processContents"))) {
325N/A $_ngcc_current_state = 1;
325N/A }
325N/A else {
325N/A unexpectedLeaveAttribute($__qname);
325N/A }
325N/A }
325N/A break;
325N/A case 0:
325N/A {
325N/A revertToParentFromLeaveAttribute(makeResult(), super._cookie, $__uri, $__local, $__qname);
325N/A }
325N/A break;
325N/A default:
325N/A {
325N/A unexpectedLeaveAttribute($__qname);
325N/A }
325N/A break;
325N/A }
325N/A }
325N/A
325N/A public void text(String $value) throws SAXException {
325N/A int $ai;
325N/A switch($_ngcc_current_state) {
325N/A case 5:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","processContents"))>=0) {
325N/A $runtime.consumeAttribute($ai);
325N/A $runtime.sendText(super._cookie, $value);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 1;
325N/A $runtime.sendText(super._cookie, $value);
325N/A }
325N/A }
325N/A break;
325N/A case 7:
325N/A {
325N/A modeValue = $value;
325N/A $_ngcc_current_state = 6;
325N/A }
325N/A break;
325N/A case 9:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","namespace"))>=0) {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromText(h, $value);
325N/A }
325N/A else {
325N/A if(($ai = $runtime.getAttributeIndex("","processContents"))>=0) {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromText(h, $value);
325N/A }
325N/A else {
325N/A NGCCHandler h = new foreignAttributes(this, super._source, $runtime, 412, null);
325N/A spawnChildFromText(h, $value);
325N/A }
325N/A }
325N/A }
325N/A break;
325N/A case 3:
325N/A {
325N/A ns = $value;
325N/A $_ngcc_current_state = 2;
325N/A }
325N/A break;
325N/A case 10:
325N/A {
325N/A $_ngcc_current_state = 9;
325N/A $runtime.sendText(super._cookie, $value);
325N/A }
325N/A break;
325N/A case 1:
325N/A {
325N/A if(($ai = $runtime.getAttributeIndex("","namespace"))>=0) {
325N/A $runtime.consumeAttribute($ai);
325N/A $runtime.sendText(super._cookie, $value);
325N/A }
325N/A else {
325N/A $_ngcc_current_state = 0;
325N/A $runtime.sendText(super._cookie, $value);
325N/A }
325N/A }
325N/A break;
325N/A case 0:
325N/A {
325N/A revertToParentFromText(makeResult(), super._cookie, $value);
325N/A }
325N/A break;
325N/A }
325N/A }
325N/A
325N/A public void onChildCompleted(Object $__result__, int $__cookie__, boolean $__needAttCheck__)throws SAXException {
325N/A switch($__cookie__) {
325N/A case 412:
325N/A {
325N/A fa = ((ForeignAttributesImpl)$__result__);
325N/A $_ngcc_current_state = 5;
325N/A }
325N/A break;
325N/A case 414:
325N/A {
325N/A annotation = ((AnnotationImpl)$__result__);
325N/A $_ngcc_current_state = 9;
325N/A }
325N/A break;
325N/A }
325N/A }
325N/A
325N/A public boolean accepted() {
325N/A return((($_ngcc_current_state == 0) || (($_ngcc_current_state == 1) || ($_ngcc_current_state == 5))));
325N/A }
325N/A
325N/A
325N/A private WildcardImpl makeResult() {
325N/A if(modeValue==null) modeValue="strict";
325N/A
325N/A int mode=-1;
325N/A if(modeValue.equals("strict")) mode = XSWildcard.STRTICT;
325N/A if(modeValue.equals("lax")) mode = XSWildcard.LAX;
325N/A if(modeValue.equals("skip")) mode = XSWildcard.SKIP;
325N/A if(mode==-1) throw new InternalError();
325N/A
325N/A if(ns==null || ns.equals("##any"))
325N/A return new WildcardImpl.Any( $runtime.document, annotation,locator,fa,mode);
325N/A
325N/A if(ns.equals("##other"))
325N/A return new WildcardImpl.Other( $runtime.document,
325N/A annotation,locator,fa,
325N/A $runtime.currentSchema.getTargetNamespace(),mode);
325N/A
325N/A StringTokenizer tokens = new StringTokenizer(ns);
325N/A HashSet s = new HashSet();
325N/A while(tokens.hasMoreTokens()) {
325N/A String ns = tokens.nextToken();
325N/A if(ns.equals("##local")) ns="";
325N/A if(ns.equals("##targetNamespace")) ns=$runtime.currentSchema.getTargetNamespace();
325N/A s.add(ns);
325N/A }
325N/A
325N/A return new WildcardImpl.Finite( $runtime.document, annotation,locator,fa,s,mode);
325N/A }
325N/A
325N/A}