You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.5 KiB
Java
54 lines
1.5 KiB
Java
package eu.dnetlib.enabling.resultset;
|
|
|
|
import javax.xml.ws.wsaddressing.W3CEndpointReference;
|
|
|
|
import eu.dnetlib.enabling.tools.ServiceResolver;
|
|
import eu.dnetlib.miscutils.functional.UnaryFunction;
|
|
|
|
/**
|
|
* Create a new resultset which takes each record of the input resultset and applies the mapping function to it.
|
|
*
|
|
* @author marko
|
|
*
|
|
*/
|
|
public class MappedResultSetFactory {
|
|
|
|
/**
|
|
* underlying resultset factory, which exposes local resultsets to the world.
|
|
*/
|
|
private ResultSetFactory resultSetFactory;
|
|
|
|
/**
|
|
* service resolver, transforms eprs to services.
|
|
*/
|
|
private ServiceResolver serviceResolver;
|
|
|
|
/**
|
|
* Create a new resultset which takes each record of the input resultset and applies the mapping function to it.
|
|
*
|
|
* @param source source resultset epr
|
|
* @param mapper mapper function
|
|
* @return mapped resultset epr
|
|
*/
|
|
public W3CEndpointReference createMappedResultSet(final W3CEndpointReference source, final UnaryFunction<String, String> mapper) {
|
|
return resultSetFactory.createResultSet(new MappedResultSet(source, mapper, serviceResolver));
|
|
}
|
|
|
|
public ResultSetFactory getResultSetFactory() {
|
|
return resultSetFactory;
|
|
}
|
|
|
|
public void setResultSetFactory(final ResultSetFactory resultSetFactory) {
|
|
this.resultSetFactory = resultSetFactory;
|
|
}
|
|
|
|
public ServiceResolver getServiceResolver() {
|
|
return serviceResolver;
|
|
}
|
|
|
|
public void setServiceResolver(final ServiceResolver serviceResolver) {
|
|
this.serviceResolver = serviceResolver;
|
|
}
|
|
|
|
}
|