in commons-transfer/commons-transfer-api/src/main/java/org/apache/archiva/commons/transfer/defaults/DefaultTransferDiscovery.java [48:85]
public synchronized Set<Transfer> findAvailableTransfers() {
if (availableTransfers == null) {
availableTransfers = new HashSet<Transfer>();
try {
Enumeration<URL> en = this.getClass().getClassLoader().getResources("META-INF/commons-transfer.properties");
while (en.hasMoreElements()) {
URL url = en.nextElement();
Properties props = new Properties();
InputStream stream = url.openStream();
props.load(stream);
String transferProvider = props.getProperty("commons-transfer.provider");
if ((transferProvider != null) && (transferProvider.length() > 0)) {
try {
Class<?> transferclazz = Class.forName(transferProvider);
Transfer transfer = (Transfer) transferclazz.newInstance();
availableTransfers.add(transfer);
} catch (ClassNotFoundException e) {
// Class Not Found.
e.printStackTrace();
} catch (InstantiationException e) {
// Cannot create a new Transfer instance.
e.printStackTrace();
} catch (IllegalAccessException e) {
// Cannot create new Transfer instance due to Security settings.
e.printStackTrace();
}
}
}
} catch (IOException e) {
// Issue finding resources.
e.printStackTrace();
}
}
return availableTransfers;
}