@Override public void create(RootElement element) { elementFinder.find(element, elementTag); }
public SexpMediumXmlBenchmark.Feed getResult() { feedHolder.id = idFinder.getResultOrThrow(); feedHolder.title = titleFinder.getResultOrThrow(); feedHolder.updated = updatedFinder.getResultOrThrow(); feedHolder.author = authorFinder.getResultOrThrow(); feedHolder.logo = logoFinder.getResultOrThrow(); feedHolder.generator = generatorFinder.getResultOrThrow(); feedHolder.link = linkFinder.getResultOrThrow(); return feedHolder.asFeed(); }
@Override public void end(String body) { elementFinder.onParsed(body); parseFinishWatcher.onFinish(); } }
@Override public void create(RootElement rootElement) { elementFinder.find(rootElement, "name"); }
@Override public void onFinish() { System.out.println("Found : " + elementFinder.getResultOrThrow()); } };
public void parse(Element element) { feedHolder = new FeedHolder(); idFinder.find(element, TAG_ID); titleFinder.find(element, TAG_TITLE); updatedFinder.find(element, TAG_UPDATED); authorFinder.find(element, TAG_AUTHOR); logoFinder.find(element, TAG_LOGO); generatorFinder.find(element, TAG_GENERATOR); linkFinder.find(element, TAG_LINK); entryFinder.find(element, TAG_ENTRY); }
@Override public void onFinish() { System.out.println("Found : " + elementFinder.getResultOrThrow()); } };
@Override public void parse(Element element, final ParseWatcher<Channel> listener) { this.listener = listener; element.setElementListener(channelParseListener); podcastItemFinder.find(element, TAG_ITEM); titleFinder.find(element, TAG_TITLE); linkFinder.find(element, TAG_LINK); imageFinder.find(element, TAG_IMAGE); }
@Override public void end() { itemHolder.title = titleFinder.getResultOrThrow(); itemHolder.author = authorFinder.getResultOrThrow(); itemHolder.link = linkFinder.getResultOrThrow(); itemHolder.image = itunesImageFinder.getResultOrThrow(); itemHolder.itunesDuration = itunesDurationFinder.getResultOrThrow(); listener.onParsed(itemHolder.asItem()); } };
@Override public void parse(Element element, ParseWatcher<ChannelImage> listener) { this.listener = listener; element.setElementListener(imageListener); titleFinder.find(element, TAG_TITLE); linkFinder.find(element, TAG_LINK); urlFinder.find(element, TAG_URL); widthFinder.find(element, TAG_WIDTH); heightFinder.find(element, TAG_HEIGHT); }
@Override public void onFinish() { System.out.println("Found : " + elementFinder.getResultOrThrow()); } };
@Override public void parse(Element element, ParseWatcher<SexpMediumXmlBenchmark.Entry> listener) { this.listener = listener; element.setElementListener(entryListener); idFinder.find(element, TAG_ID); titleFinder.find(element, TAG_TITLE); summaryFinder.find(element, TAG_SUMMARY); updatedFinder.find(element, TAG_UPDATE); linkFinder.find(element, TAG_LINK); }
@Override public void end() { imageHolder.title = titleFinder.getResultOrThrow(); imageHolder.link = linkFinder.getResultOrThrow(); imageHolder.url = urlFinder.getResultOrThrow(); imageHolder.width = widthFinder.getResultOrThrow(); imageHolder.height = heightFinder.getResultOrThrow(); listener.onParsed(imageHolder.asImage()); } };
@Override public void parse(Element element, final ParseWatcher<PodcastItem> listener) { this.listener = listener; element.setElementListener(itemParseListener); titleFinder.find(element, TAG_TITLE); authorFinder.find(element, TAG_AUTHOR); linkFinder.find(element, TAG_LINK); itunesDurationFinder.find(element, TAG_ITUNES_NAMESPACE, TAG_ITUNES_DURATION); itunesImageFinder.find(element, TAG_ITUNES_NAMESPACE, TAG_ITUNES_IMAGE); }
@Override public void end() { SexpMediumXmlBenchmark.Entry entry = new SexpMediumXmlBenchmark.Entry(); entry.id = idFinder.getResultOrThrow(); entry.summary = summaryFinder.getResultOrThrow(); entry.title = titleFinder.getResultOrThrow(); entry.updated = updatedFinder.getResultOrThrow(); entry.links = new ArrayList<>(linkList); listener.onParsed(entry); } };
@Override public void parse(Element element, ParseWatcher<SexpMediumXmlBenchmark.Author> listener) { this.listener = listener; element.setElementListener(authorListener); nameFinder.find(element, TAG_NAME); }
@Override public void end() { channelHolder.title = titleFinder.getResultOrThrow(); channelHolder.link = linkFinder.getResultOrThrow(); channelHolder.image = imageFinder.getResultOrThrow(); listener.onParsed(channelHolder.asChannel()); } };
@Override public void parse(Element element, ParseWatcher<List<T>> listener) { this.listener = listener; element.setElementListener(this); listCreator.find(element, tag); }
@Override public void end() { String result = elementFinder.getResultOrThrow(); callback.onFinish(result); }
@Test public void delegateToElementCreatorToParseEachItem_whenParsing() throws Exception { Element element = mock(Element.class); listParser.parse(element, mockListener); verify(mockListCreator).find(element, "individualItemTag"); }