package org.mitre.provenance.asias; import java.util.Iterator; import org.mitre.provenance.Metadata; import org.mitre.provenance.client.RESTProvenanceClient; import org.mitre.provenance.plusobject.PLUSObject; import org.mitre.provenance.plusobject.ProvenanceCollection; /** * @author piekut * Simple call to http://localhost:8080/plus/api/object/metadata/{field:.*}/{value:.*} via RESTProvenanceClient, * which corresponds to method search() in DAGServices.java */ public class Test_SearchByMetadata { public static void main(String [] args) throws Exception { RESTProvenanceClient client = new RESTProvenanceClient("localhost", "8080"); Metadata parameters = new Metadata(); // Edit the below line to search by other metadata. String key = "execution_id"; String value = "-31988842"; parameters.put(key, value); int maxReturn = 500; ProvenanceCollection matchResults = client.search(parameters, maxReturn); // print collection info, save to disk. System.out.println("Collection of results with metadata field "+key+" possessing value '" + value +"': "); System.out.println(" # nodes= " + matchResults.getNodes().size() + ": "); Iterator<PLUSObject> nodeIt = matchResults.getNodes().iterator(); while (nodeIt.hasNext()) { PLUSObject o = nodeIt.next(); System.out.println(" OID: " + o.getId()); } System.out.println("Done!"); System.exit(0); } // End main }