Iterator<Triple> resultTripleIterator = resultGraph.filter(FIELD_QUERY_RESULT_SET, FIELD_QUERY_RESULT, null); Iterator<RdfRepresentation> resultIterator = new AdaptingIterator<Triple,RdfRepresentation>( resultTripleIterator, new AdaptingIterator.Adapter<Triple,RdfRepresentation>() {
Iterator<Triple> resultTripleIterator = resultGraph.filter(FIELD_QUERY_RESULT_SET, FIELD_QUERY_RESULT, null); Iterator<RdfRepresentation> resultIterator = new AdaptingIterator<Triple,RdfRepresentation>( resultTripleIterator, new AdaptingIterator.Adapter<Triple,RdfRepresentation>() {
@Override public Iterator<Text> getText(String field) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<Literal, Text>( graphNode.getLiterals(new IRI(field)), new Literal2TextAdapter<Literal>(), Text.class); }
@Override public Iterator<Object> get(String field) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<RDFTerm, Object>(graphNode.getObjects(new IRI(field)), new Resource2ValueAdapter<RDFTerm>(),Object.class); }
@Override public Iterator<Reference> getReferences(String field) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<IRI,Reference>( graphNode.getIRIObjects(new IRI(field)), new IRI2ReferenceAdapter(),Reference.class); }
@Override public Iterator<Object> get(String field) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<RDFTerm, Object>(graphNode.getObjects(new IRI(field)), new Resource2ValueAdapter<RDFTerm>(),Object.class); }
@Override public Iterator<Reference> getReferences(String field) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<IRI,Reference>( graphNode.getIRIObjects(new IRI(field)), new IRI2ReferenceAdapter(),Reference.class); }
@Override public Iterator<Text> get(String field, String...languages) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<Literal, Text>( graphNode.getLiterals(new IRI(field)), new Literal2TextAdapter<Literal>(languages), Text.class); }
@Override public Iterator<Text> getText(String field) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<Literal, Text>( graphNode.getLiterals(new IRI(field)), new Literal2TextAdapter<Literal>(), Text.class); }
@Override public Iterator<Text> get(String field, String...languages) { if(field == null){ throw new IllegalArgumentException("The parsed field MUST NOT be NULL"); } else if(field.isEmpty()){ throw new IllegalArgumentException("The parsed field MUST NOT be Empty"); } return new AdaptingIterator<Literal, Text>( graphNode.getLiterals(new IRI(field)), new Literal2TextAdapter<Literal>(languages), Text.class); }
@Override public Iterator<String> getFieldNames() { return new AdaptingIterator<IRI, String>(graphNode.getProperties(), new Resource2StringAdapter<IRI>(), String.class); }
@Override public Iterator<String> getFieldNames() { return new AdaptingIterator<IRI, String>(graphNode.getProperties(), new Resource2StringAdapter<IRI>(), String.class); }
return new AdaptingIterator<IRI, T>( graphNode.getIRIObjects(fieldIRI), new IRIAdapter<T>(), type); } else if(Reference.class.isAssignableFrom(type)){ return (Iterator<T>) new AdaptingIterator<IRI,Reference>( graphNode.getIRIObjects(fieldIRI), new IRI2ReferenceAdapter(),Reference.class); } else if(Text.class.isAssignableFrom(type)){ return (Iterator<T>)new AdaptingIterator<Literal, Text>( graphNode.getLiterals(fieldIRI), new Literal2TextAdapter<Literal>(), Text.class); } else { //support for Literals -> Type conversions return new AdaptingIterator<Literal, T>( graphNode.getLiterals(fieldIRI), new LiteralAdapter<Literal, T>(),
resultIt = new AdaptingIterator<Entity,Representation>(site.findEntities(query).iterator(), new AdaptingIterator.Adapter<Entity,Representation>() { @Override
Iterator<Representation> representationIterator = new AdaptingIterator<SolutionMapping, Representation>( result, new AdaptingIterator.Adapter<SolutionMapping, Representation>() {
return new AdaptingIterator<IRI, T>( graphNode.getIRIObjects(fieldIRI), new IRIAdapter<T>(), type); } else if(Reference.class.isAssignableFrom(type)){ return (Iterator<T>) new AdaptingIterator<IRI,Reference>( graphNode.getIRIObjects(fieldIRI), new IRI2ReferenceAdapter(),Reference.class); } else if(Text.class.isAssignableFrom(type)){ return (Iterator<T>)new AdaptingIterator<Literal, Text>( graphNode.getLiterals(fieldIRI), new Literal2TextAdapter<Literal>(), Text.class); } else { //support for Literals -> Type conversions return new AdaptingIterator<Literal, T>( graphNode.getLiterals(fieldIRI), new LiteralAdapter<Literal, T>(),
new AdaptingIterator<SolrDocument,String>(response.getResults().iterator(),
@Override public QueryResultList<String> findReferences(FieldQuery parsedQuery) throws YardException, IllegalArgumentException { if(parsedQuery == null){ throw new IllegalArgumentException("The parsed query MUST NOT be NULL!"); } final SparqlFieldQuery query = SparqlFieldQueryFactory.getSparqlFieldQuery(parsedQuery); final ResultSet result = executeSparqlFieldQuery(query); //A little bit complex construct ... // first we use the adaptingIterator to convert reseource to string // to get the resources we have to retrieve the root-variable of the // Iterator<SolutionMapping> provided by the ResultSet of the SPARQL query Iterator<String> representationIdIterator = new AdaptingIterator<RDFTerm, String>( new Iterator<RDFTerm>() { @Override public void remove() { result.remove(); } @Override public RDFTerm next() { return result.next().get(query.getRootVariableName()); } @Override public boolean hasNext() { return result.hasNext(); } }, new Resource2StringAdapter<RDFTerm>(), String.class); return new QueryResultListImpl<String>(query,representationIdIterator,String.class); } /**
new AdaptingIterator<SolrDocument,String>(response.getResults().iterator(),
@Override public QueryResultList<Entity> findEntities(FieldQuery query) throws ManagedSiteException { QueryResultList<Representation> results; try { results = getYard().findRepresentation(query); } catch (YardException e) { throw new ManagedSiteException(e.getMessage(), e); } return new QueryResultListImpl<Entity>(results.getQuery(), new AdaptingIterator<Representation,Entity>( results.iterator(), new AdaptingIterator.Adapter<Representation,Entity>() { private final String siteId = config.getId(); @Override public Entity adapt(Representation value, Class<Entity> type) { Entity entity = new EntityImpl(siteId,value,null); SiteUtils.initEntityMetadata(entity, siteMetadata, null); return entity; } }, Entity.class),Entity.class); }