Skip to content
Snippets Groups Projects
Commit ca54bd5e authored by Sonia Zorba's avatar Sonia Zorba
Browse files

Use default file service URL if no location is specified

parent 65764bfb
No related branches found
No related tags found
No related merge requests found
Pipeline #1042 passed
......@@ -15,7 +15,6 @@ import it.inaf.oats.vospace.exception.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import net.ivoa.xml.vospace.v2.Property;
import java.util.List;
@RestController
public class CreateNodeController extends BaseNodeController {
......
......@@ -11,6 +11,7 @@ import it.inaf.oats.vospace.exception.PermissionDeniedException;
import it.inaf.oats.vospace.persistence.LocationDAO;
import it.inaf.oats.vospace.persistence.NodeDAO;
import it.inaf.oats.vospace.persistence.model.Location;
import it.inaf.oats.vospace.persistence.model.LocationType;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.ArrayList;
......@@ -78,20 +79,18 @@ public class UriService {
Node node = nodeDao.listNode(relativePath).orElseThrow(() -> new NodeNotFoundException(relativePath));
Location location = locationDAO.getNodeLocation(relativePath).orElseThrow(()
-> new InternalFaultException("No registered location found for vos_path " + relativePath));
Location location = locationDAO.getNodeLocation(relativePath).orElse(null);
String endpoint;
switch (location.getType()) {
case PORTAL:
if (location != null && location.getType() == LocationType.PORTAL) {
String fileName = nodeDao.getNodeOsName(relativePath);
endpoint = "http://" + location.getSource().getHostname() + location.getSource().getBasePath();
if (!endpoint.endsWith("/")) {
endpoint += "/";
}
endpoint += fileName;
break;
default:
} else {
endpoint = fileServiceUrl + urlEncodePath(relativePath);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment