Example usage for javax.xml.stream XMLStreamReader getEventType

List of usage examples for javax.xml.stream XMLStreamReader getEventType

Introduction

In this page you can find the example usage for javax.xml.stream XMLStreamReader getEventType.

Prototype

public int getEventType();

Source Link

Document

Returns an integer code that indicates the type of the event the cursor is pointing to.

Usage

From source file:org.slc.sli.modeling.xmi.comp.XmiMappingReader.java

private static final String readStringContent(final QName elementName, final XMLStreamReader reader)
        throws XMLStreamException {
    assertStartElement(reader);/*from w  ww. java  2  s . c  o  m*/
    assertName(elementName, reader);
    final StringBuilder sb = new StringBuilder();
    boolean done = false;
    while (!done && reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            throw new AssertionError(reader.getLocalName());
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(elementName, reader);
            done = true;
            break;
        }
        case XMLStreamConstants.CHARACTERS: {
            sb.append(reader.getText());
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    return sb.toString().trim();
}

From source file:org.slc.sli.modeling.xmi.comp.XmiMappingReader.java

private static final XmiFeature readFeature(final QName elementName, final XMLStreamReader reader)
        throws XMLStreamException {
    assertStartElement(reader);/*from   w  w  w . j av a 2s  . com*/
    assertName(elementName, reader);
    String className = null;
    String name = null;
    boolean exists = true;
    boolean classExists = true;
    boolean done = false;
    while (!done && reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            if (match(XmiMappingConstants.NAME, reader)) {
                name = readStringContent(reader.getName(), reader);
            } else if (match(XmiMappingConstants.OWNER_NAME, reader)) {
                className = readStringContent(reader.getName(), reader);
            } else if (match(XmiMappingConstants.EXISTS, reader)) {
                exists = readBooleanContent(reader.getName(), reader, true);
            } else if (match(XmiMappingConstants.OWNER_EXISTS, reader)) {
                classExists = readBooleanContent(reader.getName(), reader, true);
            } else {
                throw new AssertionError(reader.getLocalName());
            }
            break;
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(elementName, reader);
            done = true;
            break;
        }
        case XMLStreamConstants.CHARACTERS:
        case XMLStreamConstants.COMMENT: {
            // Ignore.
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    return new XmiFeature(name, exists, className, classExists);
}

From source file:org.slc.sli.modeling.xmi.comp.XmiMappingReader.java

private static final XmiMapping readMapping(final XMLStreamReader reader) throws XMLStreamException {
    assertStartElement(reader);/*  w w w . ja  va2 s.c o  m*/
    assertName(XmiMappingConstants.MAPPING, reader);
    XmiFeature lhs = null;
    XmiFeature rhs = null;
    XmiMappingStatus status = null;
    String comment = null;
    String tracking = "";
    boolean done = false;
    while (!done && reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            if (match(XmiMappingConstants.LHS_FEATURE, reader)) {
                if (lhs == null) {
                    lhs = readFeature(reader.getName(), reader);
                } else {
                    throw new XMLStreamException("duplicate " + XmiMappingConstants.LHS_FEATURE + " tag.");
                }
            } else if (match(XmiMappingConstants.RHS_FEATURE, reader)) {
                rhs = readFeature(reader.getName(), reader);
            } else if (match(XmiMappingConstants.STATUS, reader)) {
                status = readStatus(reader);
            } else if (match(XmiMappingConstants.COMMENT, reader)) {
                comment = readStringContent(reader.getName(), reader);
            } else if (match(XmiMappingConstants.TRACKING, reader)) {
                tracking = readStringContent(reader.getName(), reader);
            } else if (match(XmiMappingConstants.LHS_MISSING, reader)) {
                XMLStreamReaderTools.skipElement(reader);
            } else if (match(XmiMappingConstants.RHS_MISSING, reader)) {
                XMLStreamReaderTools.skipElement(reader);
            } else {
                throw new AssertionError(reader.getLocalName());
            }
            break;
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(XmiMappingConstants.MAPPING, reader);
            done = true;
            break;
        }
        case XMLStreamConstants.CHARACTERS:
        case XMLStreamConstants.COMMENT: {
            // Ignore.
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    return new XmiMapping(lhs, rhs, status, tracking, comment);
}

From source file:org.slc.sli.modeling.xmi.comp.XmiMappingReader.java

private static final XmiComparison readMappingList(final XMLStreamReader reader) throws XMLStreamException {
    assertStartElement(reader);//from   ww  w .j  a  va2  s.  com
    assertName(XmiMappingConstants.DOCUMENT_ELEMENT, reader);
    XmiDefinition lhsModel = null;
    XmiDefinition rhsModel = null;
    final List<XmiMapping> mappingList = new LinkedList<XmiMapping>();
    while (reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            if (match(XmiMappingConstants.MAPPING, reader)) {
                mappingList.add(assertNotNull(readMapping(reader)));
            } else if (match(XmiMappingConstants.LHS_MODEL, reader)) {
                lhsModel = assertNotNull(readModel(reader));
            } else if (match(XmiMappingConstants.RHS_MODEL, reader)) {
                rhsModel = assertNotNull(readModel(reader));
            } else {
                throw new AssertionError(reader.getLocalName());
            }
            break;
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(XmiMappingConstants.DOCUMENT_ELEMENT, reader);
            return new XmiComparison(lhsModel, rhsModel, mappingList);
        }
        case XMLStreamConstants.CHARACTERS:
        case XMLStreamConstants.COMMENT:
        case XMLStreamConstants.PROCESSING_INSTRUCTION: {
            // Ignore.
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    throw new AssertionError();
}

From source file:org.slc.sli.modeling.xmi.comp.XmiMappingReader.java

private static final XmiDefinition readModel(final XMLStreamReader reader) throws XMLStreamException {
    assertStartElement(reader);/* w  w w  . jav  a2s.co  m*/
    final QName elementName = reader.getName();
    assertName(elementName, reader);
    String name = null;
    String version = null;
    String xmi = null;
    boolean done = false;
    while (!done && reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            if (match(XmiMappingConstants.NAME, reader)) {
                name = readStringContent(reader.getName(), reader);
            } else if (match(XmiMappingConstants.VERSION, reader)) {
                version = readStringContent(reader.getName(), reader);
            } else if (match(XmiMappingConstants.FILE, reader)) {
                xmi = readStringContent(reader.getName(), reader);
            } else {
                throw new AssertionError(reader.getLocalName());
            }
            break;
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(elementName, reader);
            done = true;
            break;
        }
        case XMLStreamConstants.CHARACTERS:
        case XMLStreamConstants.COMMENT: {
            // Ignore.
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    return new XmiDefinition(name, version, xmi);
}

From source file:org.slc.sli.modeling.xmi.comp.XmiMappingReader.java

private static final XmiMappingStatus readStatus(final XMLStreamReader reader) throws XMLStreamException {
    assertStartElement(reader);//from  w  ww  .  jav  a2s.  co  m
    assertName(XmiMappingConstants.STATUS, reader);
    final StringBuilder sb = new StringBuilder();
    boolean done = false;
    while (!done && reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            throw new AssertionError(reader.getLocalName());
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(XmiMappingConstants.STATUS, reader);
            done = true;
            break;
        }
        case XMLStreamConstants.CHARACTERS: {
            sb.append(reader.getText());
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    // Intentionally make the coupling loose between the serialization and
    // the enumeration.
    final String value = sb.toString().trim();
    if (XmiMappingValues.STATUS_MATCH.equals(value)) {
        return XmiMappingStatus.MATCH;
    } else if (XmiMappingValues.STATUS_IGNORABLE.equals(value)) {
        return XmiMappingStatus.IGNORABLE;
    } else if (XmiMappingValues.STATUS_ALIGN.equals(value)) {
        return XmiMappingStatus.ALIGN;
    } else if (XmiMappingValues.STATUS_UNKNOWN.equals(value)) {
        return XmiMappingStatus.UNKNOWN;
    } else if (XmiMappingValues.STATUS_TRANSIENT.equals(value)) {
        return XmiMappingStatus.TRANSIENT;
    } else if (XmiMappingValues.STATUS_BUG.equals(value)) {
        return XmiMappingStatus.BUG;
    } else if (XmiMappingValues.STATUS_FINANCIAL.equals(value)) {
        return XmiMappingStatus.FINANCIAL;
    } else {
        throw new AssertionError(XmiMappingConstants.STATUS + " : " + value);
    }
}

From source file:org.slc.sli.modeling.xmi.reader.XmiReader.java

protected static final XmiAssociationConnection readAssociationConnection(final XMLStreamReader reader) {
    try {// w w w.  j a  v  a  2  s . com
        assertName(XmiElementName.ASSOCIATION_DOT_CONNECTION, reader);
        final List<AssociationEnd> ends = new ArrayList<AssociationEnd>();
        while (reader.hasNext()) {
            reader.next();
            switch (reader.getEventType()) {
            case XMLStreamConstants.START_ELEMENT: {
                if (match(XmiElementName.ASSOCIATION_END, reader)) {
                    ends.add(readAssociationEnd(reader));
                } else {
                    skipElement(reader, true);
                }
                break;
            }
            case XMLStreamConstants.END_ELEMENT: {
                assertName(XmiElementName.ASSOCIATION_DOT_CONNECTION, reader);
                return new XmiAssociationConnection(ends.get(0), ends.get(1));
            }
            case XMLStreamConstants.CHARACTERS: {
                // Ignore.
                break;
            }
            default: {
                throw new AssertionError(reader.getEventType());
            }
            }
        }
    } catch (final XMLStreamException e) {
        LOG.warn(e.getMessage());
    }
    throw new AssertionError();
}

From source file:org.slc.sli.modeling.xmi.reader.XmiReader.java

protected static final AssociationEnd readAssociationEnd(final XMLStreamReader reader) {
    try {/*from w  ww.j a va 2 s  .  c o m*/
        assertName(XmiElementName.ASSOCIATION_END, reader);
        final List<TaggedValue> taggedValues = new LinkedList<TaggedValue>();
        final Identifier id = getId(reader);
        final String name = getName(reader, DEFAULT_EMPTY_NAME, XmiAttributeName.NAME);
        final String associatedAttribName = getName(reader, DEFAULT_EMPTY_NAME,
                XmiAttributeName.ASSOCIATED_ATTRIBUTE_NAME);
        final boolean isNavigable = getBoolean(XmiAttributeName.IS_NAVIGABLE, true, reader);
        Identifier participant = null;
        final Range range = new Range(Identifier.random(), Occurs.ONE, Occurs.ONE, EMPTY_TAGGED_VALUE_LIST);
        Multiplicity multiplicity = new Multiplicity(Identifier.random(), EMPTY_TAGGED_VALUE_LIST, range);
        while (reader.hasNext()) {
            reader.next();
            switch (reader.getEventType()) {
            case XMLStreamConstants.START_ELEMENT: {
                if (match(XmiElementName.MODEL_ELEMENT_DOT_TAGGED_VALUE, reader)) {
                    taggedValues.addAll(readTaggedValueGroup(reader));
                } else if (match(XmiElementName.ASSOCIATION_END_DOT_MULTIPLICITY, reader)) {
                    multiplicity = assertNotNull(readAssociationEndMultiplicity(reader));
                } else if (match(XmiElementName.ASSOCIATION_END_DOT_PARTICIPANT, reader)) {
                    participant = readAssociationEndParticipant(reader);
                } else {
                    throw new UnsupportedOperationException(reader.getName().toString());
                    // skipElement(reader);
                }
                break;
            }
            case XMLStreamConstants.END_ELEMENT: {
                assertName(XmiElementName.ASSOCIATION_END, reader);
                if (participant == null) {
                    throw new AssertionError(XmiElementName.ASSOCIATION_END_DOT_PARTICIPANT);
                }
                return new AssociationEnd(multiplicity, name, isNavigable, id, taggedValues, participant,
                        associatedAttribName);
            }
            case XMLStreamConstants.CHARACTERS: {
                // Ignore.
                break;
            }
            default: {
                throw new AssertionError(reader.getEventType());
            }
            }
        }
    } catch (final XMLStreamException e) {
        throw new XmiRuntimeException(e);
    }
    throw new AssertionError();
}

From source file:org.slc.sli.modeling.xmi.reader.XmiReader.java

protected static final Multiplicity readAssociationEndMultiplicity(final XMLStreamReader reader)
        throws XMLStreamException {
    assertName(XmiElementName.ASSOCIATION_END_DOT_MULTIPLICITY, reader);
    Multiplicity multiplicity = null;//  w ww.  j av a  2 s  . c o m
    while (reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            if (match(XmiElementName.MULTIPLICITY, reader)) {
                multiplicity = assertNotNull(readMultiplicity(reader));
            } else {
                skipElement(reader, true);
            }
            break;
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(XmiElementName.ASSOCIATION_END_DOT_MULTIPLICITY, reader);
            return assertNotNull(multiplicity);
        }
        case XMLStreamConstants.CHARACTERS: {
            // Ignore.
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    throw new AssertionError();
}

From source file:org.slc.sli.modeling.xmi.reader.XmiReader.java

protected static final Identifier readAssociationEndParticipant(final XMLStreamReader reader)
        throws XMLStreamException {
    assertName(XmiElementName.ASSOCIATION_END_DOT_PARTICIPANT, reader);
    Identifier reference = null;/*w w  w.j a  v a 2s .  c o m*/
    while (reader.hasNext()) {
        reader.next();
        switch (reader.getEventType()) {
        case XMLStreamConstants.START_ELEMENT: {
            if (match(XmiElementName.CLASS, reader)) {
                reference = readIdentifier(reader);
            } else if (match(XmiElementName.ASSOCIATION_CLASS, reader)) {
                reference = readIdentifier(reader);
            } else {
                skipElement(reader, true);
            }
            break;
        }
        case XMLStreamConstants.END_ELEMENT: {
            assertName(XmiElementName.ASSOCIATION_END_DOT_PARTICIPANT, reader);
            return reference;
        }
        case XMLStreamConstants.CHARACTERS: {
            // Ignore.
            break;
        }
        default: {
            throw new AssertionError(reader.getEventType());
        }
        }
    }
    throw new AssertionError();
}