Commit f17d8e36 authored by Nicola Fulvio Calabria's avatar Nicola Fulvio Calabria
Browse files

Task #3637 - Added Fault management for transfer services up to 3/6

redmine subtasks
parent d5d6e78a
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
package it.inaf.oats.vospace.exception;

import net.ivoa.xml.uws.v1.ErrorSummaryFactory;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ResponseStatus;

@ResponseStatus(value = HttpStatus.CONFLICT)
public class DuplicateNodeException extends VoSpaceException {
public class DuplicateNodeException extends VoSpaceErrorSummarizableException {

    public DuplicateNodeException(String path) {
        super("Duplicate Node at path: " + path);
        super("Duplicate Node at path: " + path,
                ErrorSummaryFactory.VOSpaceFault.DUPLICATE_NODE);
    }
}
+6 −3
Original line number Diff line number Diff line
package it.inaf.oats.vospace.exception;

import net.ivoa.xml.uws.v1.ErrorSummaryFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ResponseStatus;

@ResponseStatus(value = HttpStatus.INTERNAL_SERVER_ERROR)   // Status code 500
public class InternalFaultException extends VoSpaceException {
public class InternalFaultException extends VoSpaceErrorSummarizableException {

    private static final Logger LOG = LoggerFactory.getLogger(InternalFaultException.class);

    public InternalFaultException(String msg) {
        super("InternalFaultException: " + msg);
        super("InternalFaultException: " + msg,
                ErrorSummaryFactory.VOSpaceFault.INTERNAL_FAULT);
    }

    public InternalFaultException(Throwable cause) {
        super("InternalFaultException: " + getMessage(cause));
        super("InternalFaultException: " + getMessage(cause),
                ErrorSummaryFactory.VOSpaceFault.INTERNAL_FAULT);
    }

    private static String getMessage(Throwable cause) {
+8 −4
Original line number Diff line number Diff line
package it.inaf.oats.vospace.exception;

import net.ivoa.xml.uws.v1.ErrorSummaryFactory;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ResponseStatus;

@ResponseStatus(value = HttpStatus.BAD_REQUEST)
public class InvalidURIException extends VoSpaceException {
public class InvalidURIException extends VoSpaceErrorSummarizableException {

    public InvalidURIException(String URI, String path) {
        super("InvalidURI. Payload node URI: " + URI
                + " is not consistent with request path: " + path);
                + " is not consistent with request path: " + path,
                ErrorSummaryFactory.VOSpaceFault.INVALID_URI);
    }

    public InvalidURIException(String URI) {
        super("InvalidURI. URI: " + URI + " is not in a valid format");
        super("InvalidURI. URI: " + URI + " is not in a valid format",
                ErrorSummaryFactory.VOSpaceFault.INVALID_URI);
    }

    public InvalidURIException(IllegalArgumentException ex) {
        super("InvalidURI. " + ex.getMessage());
        super("InvalidURI. " + ex.getMessage(),
                ErrorSummaryFactory.VOSpaceFault.INVALID_URI);
    }
}
+12 −0
Original line number Diff line number Diff line
package it.inaf.oats.vospace.exception;

import net.ivoa.xml.uws.v1.ErrorSummaryFactory;

public class NodeBusyException extends VoSpaceErrorSummarizableException {

    public NodeBusyException(String path) {
        super("Node Busy: at path " + path,
                 ErrorSummaryFactory.VOSpaceFault.NODE_BUSY);
    }

}
+4 −2
Original line number Diff line number Diff line
package it.inaf.oats.vospace.exception;

import net.ivoa.xml.uws.v1.ErrorSummaryFactory;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.ResponseStatus;

@ResponseStatus(value = HttpStatus.NOT_FOUND)
public class NodeNotFoundException extends VoSpaceException {
public class NodeNotFoundException extends VoSpaceErrorSummarizableException {

    public NodeNotFoundException(String path) {
        super("NodeNotFound: " + path);
        super("NodeNotFound: " + path,
                ErrorSummaryFactory.VOSpaceFault.NODE_NOT_FOUND);
    }
}
Loading