Commit 09036c82 authored by Sonia Zorba's avatar Sonia Zorba
Browse files

Merge branch 'master' into moveNode

parents fb29972d 2c789ef9
Loading
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -121,7 +121,7 @@ public class CreateNodeService {
            }
            }
        }
        }
                                
                                
        nodeDao.createNode(node, decodedURIPathFromNode);
        nodeDao.createNode(node);


        return node;
        return node;


+5 −1
Original line number Original line Diff line number Diff line
@@ -12,6 +12,7 @@ import net.ivoa.xml.uws.v1.JobSummary;
import net.ivoa.xml.vospace.v2.Protocol;
import net.ivoa.xml.vospace.v2.Protocol;
import net.ivoa.xml.vospace.v2.Transfer;
import net.ivoa.xml.vospace.v2.Transfer;
import it.inaf.oats.vospace.exception.ErrorSummaryFactory;
import it.inaf.oats.vospace.exception.ErrorSummaryFactory;
import it.inaf.oats.vospace.exception.InvalidArgumentException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.stereotype.Service;
import it.inaf.oats.vospace.exception.VoSpaceErrorSummarizableException;
import it.inaf.oats.vospace.exception.VoSpaceErrorSummarizableException;
@@ -131,7 +132,10 @@ public class JobService {
                    asyncTransfService.startJob(job);
                    asyncTransfService.startJob(job);
                    return;
                    return;
                case "ivo://ivoa.net/vospace/core#httpget":
                case "ivo://ivoa.net/vospace/core#httpget":
                    String nodeUri = transfer.getTarget();
                    if (transfer.getTarget().size() != 1) {
                        throw new InvalidArgumentException("Invalid target size for pullToVoSpace: " + transfer.getTarget().size());
                    }
                    String nodeUri = transfer.getTarget().get(0);
                    String contentUri = protocol.getEndpoint();
                    String contentUri = protocol.getEndpoint();
                    uriService.setNodeRemoteLocation(nodeUri, contentUri);
                    uriService.setNodeRemoteLocation(nodeUri, contentUri);
                    uriService.setTransferJobResult(job, transfer);
                    uriService.setTransferJobResult(job, transfer);
+6 −1
Original line number Original line Diff line number Diff line
@@ -8,6 +8,7 @@ package it.inaf.oats.vospace;
import it.inaf.ia2.aa.data.User;
import it.inaf.ia2.aa.data.User;
import it.inaf.oats.vospace.datamodel.NodeUtils;
import it.inaf.oats.vospace.datamodel.NodeUtils;
import it.inaf.oats.vospace.exception.InternalFaultException;
import it.inaf.oats.vospace.exception.InternalFaultException;
import it.inaf.oats.vospace.exception.InvalidArgumentException;
import it.inaf.oats.vospace.exception.NodeBusyException;
import it.inaf.oats.vospace.exception.NodeBusyException;
import it.inaf.oats.vospace.exception.NodeNotFoundException;
import it.inaf.oats.vospace.exception.NodeNotFoundException;
import it.inaf.oats.vospace.exception.PermissionDeniedException;
import it.inaf.oats.vospace.exception.PermissionDeniedException;
@@ -40,8 +41,12 @@ public class MoveService {
    @Transactional(rollbackFor = { Exception.class }, isolation = Isolation.REPEATABLE_READ)
    @Transactional(rollbackFor = { Exception.class }, isolation = Isolation.REPEATABLE_READ)
    public void processMoveJob(Transfer transfer) {
    public void processMoveJob(Transfer transfer) {


        if (transfer.getTarget().size() != 1) {
            throw new InvalidArgumentException("Invalid target size for moveNode: " + transfer.getTarget().size());
        }

        // Get Source Vos Path
        // Get Source Vos Path
        String sourcePath = URIUtils.returnVosPathFromNodeURI(transfer.getTarget(), authority);
        String sourcePath = URIUtils.returnVosPathFromNodeURI(transfer.getTarget().get(0), authority);


        // Get Destination Vos Path (it's in transfer direction)
        // Get Destination Vos Path (it's in transfer direction)
        String destinationPath = URIUtils.returnVosPathFromNodeURI(transfer.getDirection(), authority);
        String destinationPath = URIUtils.returnVosPathFromNodeURI(transfer.getDirection(), authority);
+3 −3
Original line number Original line Diff line number Diff line
@@ -13,7 +13,6 @@ import javax.servlet.http.HttpServletRequest;
import net.ivoa.xml.uws.v1.ExecutionPhase;
import net.ivoa.xml.uws.v1.ExecutionPhase;
import net.ivoa.xml.uws.v1.JobSummary;
import net.ivoa.xml.uws.v1.JobSummary;
import net.ivoa.xml.uws.v1.Jobs;
import net.ivoa.xml.uws.v1.Jobs;
import net.ivoa.xml.vospace.v2.Transfer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.HttpStatus;
@@ -32,6 +31,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.List;
import net.ivoa.xml.uws.v1.ErrorSummary;
import net.ivoa.xml.uws.v1.ErrorSummary;
import net.ivoa.xml.vospace.v2.Protocol;
import net.ivoa.xml.vospace.v2.Protocol;
import net.ivoa.xml.vospace.v2.Transfer;


@RestController
@RestController
public class TransferController {
public class TransferController {
@@ -81,7 +81,7 @@ public class TransferController {
            @RequestParam("DIRECTION") String direction, @RequestParam("PROTOCOL") String protocolUris, User principal) {
            @RequestParam("DIRECTION") String direction, @RequestParam("PROTOCOL") String protocolUris, User principal) {


        Transfer transfer = new Transfer();
        Transfer transfer = new Transfer();
        transfer.setTarget(target);
        transfer.setTarget(Arrays.asList(target));
        transfer.setDirection(direction);
        transfer.setDirection(direction);


        // CADC client sends multiple protocol parameters and Spring join them using a comma separator.
        // CADC client sends multiple protocol parameters and Spring join them using a comma separator.
+5 −1
Original line number Original line Diff line number Diff line
@@ -144,7 +144,11 @@ public class UriService {


    private String getEndpoint(JobSummary job, Transfer transfer) {
    private String getEndpoint(JobSummary job, Transfer transfer) {


        String relativePath = transfer.getTarget().substring("vos://".length() + authority.length());
        if (transfer.getTarget().size() != 1) {
            throw new InvalidArgumentException("Invalid target size: " + transfer.getTarget().size());
        }

        String relativePath = transfer.getTarget().get(0).substring("vos://".length() + authority.length());


        User user = (User) servletRequest.getUserPrincipal();
        User user = (User) servletRequest.getUserPrincipal();
        String creator = user.getName();
        String creator = user.getName();
Loading