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.
gcube-cms-suite/geoportal-service/src/test/java/org/gcube/application/geoportal/service/DescribeGSFolder.java

44 lines
1.6 KiB
Java

package org.gcube.application.geoportal.service;
import lombok.extern.slf4j.Slf4j;
import org.gcube.application.cms.tests.TokenSetter;
import org.gcube.data.transfer.library.DataTransferClient;
import org.gcube.data.transfer.library.faults.RemoteServiceException;
import org.gcube.data.transfer.library.faults.ServiceNotFoundException;
import org.gcube.data.transfer.library.faults.UnreachableNodeException;
import org.gcube.data.transfer.model.RemoteFileDescriptor;
@Slf4j
public class DescribeGSFolder {
public static void main(String[] args) throws UnreachableNodeException, ServiceNotFoundException, RemoteServiceException {
TokenSetter.set("/gcube/devsec/devVRE");
String gsEndpoint="https://geoserver-218.dev.d4science.org/";
String gsBasePath="geoserver/GNA/6157089e596924b380a174b7_1633101414296/";
DataTransferClient client=DataTransferClient.getInstanceByEndpoint(gsEndpoint);
// System.out.println(getFileDescriptor(gsBasePath,client.getWebClient()));
print(client,gsBasePath,"");
}
public static void print(DataTransferClient client, String path, String pad) throws RemoteServiceException {
RemoteFileDescriptor desc=client.getWebClient().getInfo(path);
System.out.println(pad+desc.getFilename() + "["+desc.getSize()+"]");
if(desc.isDirectory())
desc.getChildren().forEach(f->{
try {
print(client,path+"/"+f,pad+"\t");
} catch (RemoteServiceException e) {
e.printStackTrace();
}
});
}
}