package org.archive.extract; import java.io.IOException; import java.io.PrintStream; import java.util.List; import org.archive.format.json.JSONUtils; import org.archive.resource.Resource; import org.archive.util.StreamCopy; public class FilteredExtractorOuput implements ExtractorOutput { private String filterPath; private PrintStream out; public FilteredExtractorOuput(PrintStream out, String filterPath) { this.filterPath = filterPath; this.out = out; } public void output(Resource resource) throws IOException { StreamCopy.readToEOF(resource.getInputStream()); List<String> results = JSONUtils.extractFancy(resource.getMetaData().getTopMetaData(), filterPath); if(results != null) { for(String result: results) { out.println("Result: " + result); } } } public void output2(Resource resource) throws IOException { String result = JSONUtils.extractSingle(resource.getMetaData().getTopMetaData(), filterPath); if(result != null) { out.println("Result:" + result); } } }