package org.gcube.data.transfer.library; import org.gcube.data.transfer.library.faults.HostingNodeNotFoundException; import org.gcube.data.transfer.library.faults.ServiceNotFoundException; import org.gcube.data.transfer.library.faults.UnreachableNodeException; public class TransfererBuilder { public Transferer getTransfererByHost(String host) throws UnreachableNodeException, ServiceNotFoundException{ // Check reachable host // Check DTS presence // get capabilities // return transferer by capabilities } public Transferer getTransfererByhostingNodeId(String hostId) throws HostingNodeNotFoundException, UnreachableNodeException, ServiceNotFoundException{ String hostname=retrieveHostnameByNodeId(hostId); return getTransfererByHost(hostname); } private String retrieveHostnameByNodeId(String nodeId)throws HostingNodeNotFoundException{ } }