private void parse(final StreamTokenizer tokeniser, Reader in, final ContentHandler handler) throws IOException, ParseException, URISyntaxException, ParserException { assertToken(tokeniser, in, ':'); assertToken(tokeniser, in, StreamTokenizer.TT_WORD); final String name = tokeniser.sval; handler.startComponent(name); assertToken(tokeniser, in, StreamTokenizer.TT_EOL); propertyListParser.parse(tokeniser, in, handler); /* * // a special case for VTIMEZONE component which contains * // sub-components.. * if (Component.VTIMEZONE.equals(name)) { * parseComponentList(tokeniser, handler); * } * // VEVENT/VTODO components may optionally have embedded VALARM * // components.. * else if ((Component.VEVENT.equals(name) || Component.VTODO.equals(name)) * && Component.BEGIN.equals(tokeniser.sval)) { * parseComponentList(tokeniser, handler); * } */ assertToken(tokeniser, in, ':'); assertToken(tokeniser, in, name); assertToken(tokeniser, in, StreamTokenizer.TT_EOL); handler.endComponent(name); } }
private void parse(final StreamTokenizer tokeniser, Reader in, final ContentHandler handler) throws IOException, ParseException, URISyntaxException, ParserException { assertToken(tokeniser, in, ':'); assertToken(tokeniser, in, StreamTokenizer.TT_WORD); final String name = tokeniser.sval; handler.startComponent(name); assertToken(tokeniser, in, StreamTokenizer.TT_EOL); propertyListParser.parse(tokeniser, in, handler); /* * // a special case for VTIMEZONE component which contains * // sub-components.. * if (Component.VTIMEZONE.equals(name)) { * parseComponentList(tokeniser, handler); * } * // VEVENT/VTODO components may optionally have embedded VALARM * // components.. * else if ((Component.VEVENT.equals(name) || Component.VTODO.equals(name)) * && Component.BEGIN.equals(tokeniser.sval)) { * parseComponentList(tokeniser, handler); * } */ assertToken(tokeniser, in, ':'); assertToken(tokeniser, in, name); assertToken(tokeniser, in, StreamTokenizer.TT_EOL); handler.endComponent(name); } }
private void parse(final StreamTokenizer tokeniser, Reader in, final ContentHandler handler) throws IOException, ParseException, URISyntaxException, ParserException { assertToken(tokeniser, in, ':'); assertToken(tokeniser, in, StreamTokenizer.TT_WORD); final String name = tokeniser.sval; handler.startComponent(name); assertToken(tokeniser, in, StreamTokenizer.TT_EOL); propertyListParser.parse(tokeniser, in, handler); /* * // a special case for VTIMEZONE component which contains * // sub-components.. * if (Component.VTIMEZONE.equals(name)) { * parseComponentList(tokeniser, handler); * } * // VEVENT/VTODO components may optionally have embedded VALARM * // components.. * else if ((Component.VEVENT.equals(name) || Component.VTODO.equals(name)) * && Component.BEGIN.equals(tokeniser.sval)) { * parseComponentList(tokeniser, handler); * } */ assertToken(tokeniser, in, ':'); assertToken(tokeniser, in, name); assertToken(tokeniser, in, StreamTokenizer.TT_EOL); handler.endComponent(name); } }
private void processComponent(final BaseComponentType comp, final BuildState bs) throws Throwable { final ComponentInfoIndex cii = ComponentInfoIndex.fromXmlClass(comp.getClass()); if (cii == null) { throw new Exception("Unknown component " + comp.getClass()); } final String name = cii.getPname(); bs.getContentHandler().startComponent(name); processProperties(comp.getProperties(), bs); processCalcomps(comp, bs); bs.getContentHandler().endComponent(name); }
handler.startComponent(name);
handler.startComponent(name);
private void processComponent(final Element el, final BuildState bs) throws ParserException { try { bs.getContentHandler().startComponent(el.getLocalName().toUpperCase()); for (Element e: XmlUtil.getElements(el)) { if (XmlUtil.nodeMatches(e, XcalTags.properties)) { processProperties(e, bs); } else if (XmlUtil.nodeMatches(e, XcalTags.components)) { for (Element ce: XmlUtil.getElements(e)) { processComponent(ce, bs); } } else { throw new ParserException("Unexpected element: found " + e, 0); } } bs.getContentHandler().endComponent(el.getLocalName().toUpperCase()); } catch (SAXException e) { throw new ParserException(e.getMessage(), 0, e); } }
private void processComponent(final JsonParser parser, final BuildState bs) throws ParserException { currentArrayStart(parser); final String cname = textField(parser).toUpperCase(); lastComponent = cname; bs.getContentHandler().startComponent(cname); /* Properties first */ processProperties(parser, bs); /* Now components */ processCalcomps(parser, bs); bs.getContentHandler().endComponent(cname); arrayEnd(parser); }
LOG.debug("Building event"); handler.startComponent(Component.VEVENT);
handler.startComponent(Component.VEVENT);
handler.startComponent(Component.VEVENT);
private void buildEvent(Element element, ContentHandler handler) throws ParserException { if (LOG.isDebugEnabled()) LOG.debug("Building event"); handler.startComponent(Component.VEVENT); buildProperty(findElement(XPATH_DTSTART, element), Property.DTSTART, handler); buildProperty(findElement(XPATH_DTEND, element), Property.DTEND, handler); buildProperty(findElement(XPATH_DURATION, element), Property.DURATION, handler); buildProperty(findElement(XPATH_SUMMARY, element), Property.SUMMARY, handler); buildProperty(findElement(XPATH_UID, element), Property.UID, handler); buildProperty(findElement(XPATH_DTSTAMP, element), Property.DTSTAMP, handler); List<Element> categories = findElements(XPATH_CATEGORY, element); for (Element category : categories) { buildProperty(category, Property.CATEGORIES, handler); } buildProperty(findElement(XPATH_LOCATION, element), Property.LOCATION, handler); buildProperty(findElement(XPATH_URL, element), Property.URL, handler); buildProperty(findElement(XPATH_DESCRIPTION, element), Property.DESCRIPTION, handler); buildProperty(findElement(XPATH_LAST_MODIFIED, element), Property.LAST_MODIFIED, handler); buildProperty(findElement(XPATH_STATUS, element), Property.STATUS, handler); buildProperty(findElement(XPATH_CLASS, element), Property.CLASS, handler); List<Element> attendees = findElements(XPATH_ATTENDEE, element); for (Element attendee : attendees) { buildProperty(attendee, Property.ATTENDEE, handler); } buildProperty(findElement(XPATH_CONTACT, element), Property.CONTACT, handler); buildProperty(findElement(XPATH_ORGANIZER, element), Property.ORGANIZER, handler); buildProperty(findElement(XPATH_SEQUENCE, element), Property.SEQUENCE, handler); buildProperty(findElement(XPATH_ATTACH, element), Property.ATTACH, handler); handler.endComponent(Component.VEVENT); }
private void buildEvent(Element element, ContentHandler handler) throws ParserException { if (LOG.isDebugEnabled()) LOG.debug("Building event"); handler.startComponent(Component.VEVENT); buildProperty(findElement(XPATH_DTSTART, element), Property.DTSTART, handler); buildProperty(findElement(XPATH_DTEND, element), Property.DTEND, handler); buildProperty(findElement(XPATH_DURATION, element), Property.DURATION, handler); buildProperty(findElement(XPATH_SUMMARY, element), Property.SUMMARY, handler); buildProperty(findElement(XPATH_UID, element), Property.UID, handler); buildProperty(findElement(XPATH_DTSTAMP, element), Property.DTSTAMP, handler); List<Element> categories = findElements(XPATH_CATEGORY, element); for (Element category : categories) { buildProperty(category, Property.CATEGORIES, handler); } buildProperty(findElement(XPATH_LOCATION, element), Property.LOCATION, handler); buildProperty(findElement(XPATH_URL, element), Property.URL, handler); buildProperty(findElement(XPATH_DESCRIPTION, element), Property.DESCRIPTION, handler); buildProperty(findElement(XPATH_LAST_MODIFIED, element), Property.LAST_MODIFIED, handler); buildProperty(findElement(XPATH_STATUS, element), Property.STATUS, handler); buildProperty(findElement(XPATH_CLASS, element), Property.CLASS, handler); List<Element> attendees = findElements(XPATH_ATTENDEE, element); for (Element attendee : attendees) { buildProperty(attendee, Property.ATTENDEE, handler); } buildProperty(findElement(XPATH_CONTACT, element), Property.CONTACT, handler); buildProperty(findElement(XPATH_ORGANIZER, element), Property.ORGANIZER, handler); buildProperty(findElement(XPATH_SEQUENCE, element), Property.SEQUENCE, handler); buildProperty(findElement(XPATH_ATTACH, element), Property.ATTACH, handler); handler.endComponent(Component.VEVENT); }
private void buildEvent(Element element, ContentHandler handler) throws ParserException { if (LOG.isDebugEnabled()) LOG.debug("Building event"); handler.startComponent(Component.VEVENT); buildProperty(findElement(XPATH_DTSTART, element), Property.DTSTART, handler); buildProperty(findElement(XPATH_DTEND, element), Property.DTEND, handler); buildProperty(findElement(XPATH_DURATION, element), Property.DURATION, handler); buildProperty(findElement(XPATH_SUMMARY, element), Property.SUMMARY, handler); buildProperty(findElement(XPATH_UID, element), Property.UID, handler); buildProperty(findElement(XPATH_DTSTAMP, element), Property.DTSTAMP, handler); List<Element> categories = findElements(XPATH_CATEGORY, element); for (Element category : categories) { buildProperty(category, Property.CATEGORIES, handler); } buildProperty(findElement(XPATH_LOCATION, element), Property.LOCATION, handler); buildProperty(findElement(XPATH_URL, element), Property.URL, handler); buildProperty(findElement(XPATH_DESCRIPTION, element), Property.DESCRIPTION, handler); buildProperty(findElement(XPATH_LAST_MODIFIED, element), Property.LAST_MODIFIED, handler); buildProperty(findElement(XPATH_STATUS, element), Property.STATUS, handler); buildProperty(findElement(XPATH_CLASS, element), Property.CLASS, handler); List<Element> attendees = findElements(XPATH_ATTENDEE, element); for (Element attendee : attendees) { buildProperty(attendee, Property.ATTENDEE, handler); } buildProperty(findElement(XPATH_CONTACT, element), Property.CONTACT, handler); buildProperty(findElement(XPATH_ORGANIZER, element), Property.ORGANIZER, handler); buildProperty(findElement(XPATH_SEQUENCE, element), Property.SEQUENCE, handler); buildProperty(findElement(XPATH_ATTACH, element), Property.ATTACH, handler); handler.endComponent(Component.VEVENT); }
private void buildEvent(Element element, ContentHandler handler) throws ParserException { if (LOG.isDebugEnabled()) LOG.debug("Building event"); handler.startComponent(Component.VEVENT); buildProperty(findElement(XPATH_DTSTART, element), Property.DTSTART, handler); buildProperty(findElement(XPATH_DTEND, element), Property.DTEND, handler); buildProperty(findElement(XPATH_DURATION, element), Property.DURATION, handler); buildProperty(findElement(XPATH_SUMMARY, element), Property.SUMMARY, handler); buildProperty(findElement(XPATH_UID, element), Property.UID, handler); buildProperty(findElement(XPATH_DTSTAMP, element), Property.DTSTAMP, handler); List<Element> categories = findElements(XPATH_CATEGORY, element); for (Element category : categories) { buildProperty(category, Property.CATEGORIES, handler); } buildProperty(findElement(XPATH_LOCATION, element), Property.LOCATION, handler); buildProperty(findElement(XPATH_URL, element), Property.URL, handler); buildProperty(findElement(XPATH_DESCRIPTION, element), Property.DESCRIPTION, handler); buildProperty(findElement(XPATH_LAST_MODIFIED, element), Property.LAST_MODIFIED, handler); buildProperty(findElement(XPATH_STATUS, element), Property.STATUS, handler); buildProperty(findElement(XPATH_CLASS, element), Property.CLASS, handler); List<Element> attendees = findElements(XPATH_ATTENDEE, element); for (Element attendee : attendees) { buildProperty(attendee, Property.ATTENDEE, handler); } buildProperty(findElement(XPATH_CONTACT, element), Property.CONTACT, handler); buildProperty(findElement(XPATH_ORGANIZER, element), Property.ORGANIZER, handler); buildProperty(findElement(XPATH_SEQUENCE, element), Property.SEQUENCE, handler); buildProperty(findElement(XPATH_ATTACH, element), Property.ATTACH, handler); handler.endComponent(Component.VEVENT); }