diff --git a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java b/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java index 45112e8073ece412d2d2f01c067820d869c1f70c..5cc58e8d1597cc1f661a4d5d059c7d691e79f536 100644 --- a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java +++ b/src/main/java/net/ivoa/xml/uws/v1/ErrorSummary.java @@ -13,6 +13,7 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.XmlTransient; /** @@ -53,6 +54,10 @@ public class ErrorSummary { protected ErrorType type; @XmlAttribute(name = "hasDetail", required = true) protected boolean hasDetail; + + // Required by {job-id}/error endpoint + @XmlTransient + protected String detailMessage; /** * Gets the value of the message property. @@ -117,5 +122,13 @@ public class ErrorSummary { public void setHasDetail(boolean value) { this.hasDetail = value; } + + // Added by NFC by hand to implement {job-id}/error endpoint + public String getDetailMessage() { + return detailMessage; + } + public void setDetailMessage(String detailMessage) { + this.detailMessage = detailMessage; + } } diff --git a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummaryFactory.java b/src/main/java/net/ivoa/xml/uws/v1/ErrorSummaryFactory.java deleted file mode 100644 index 6851e32f1cc8a59a5785f73d19e82857e436906d..0000000000000000000000000000000000000000 --- a/src/main/java/net/ivoa/xml/uws/v1/ErrorSummaryFactory.java +++ /dev/null @@ -1,58 +0,0 @@ -package net.ivoa.xml.uws.v1; - -public class ErrorSummaryFactory { - - public static ErrorSummary newErrorSummary(VOSpaceFault error) - { - ErrorSummary result = new ErrorSummary(); - result.setMessage(error.getFaultRepresentation()); - result.setType(error.getType()); - // Set to false since /error endpoint is not supported yet - result.setHasDetail(false); - return result; - } - - // NFC: ErrorType usage is not covered in documentation, as far as I can see - // these are tentative default values. - public enum VOSpaceFault { - // pushto - OPERATION_NOT_SUPPORTED("OperationNotSupported", ErrorType.FATAL), - INTERNAL_FAULT("InternalFault", ErrorType.TRANSIENT), - PERMISSION_DENIED("PermissionDenied", ErrorType.FATAL), - VIEW_NOT_SUPPORTED("ViewNotSupported", ErrorType.FATAL), - PROTOCOL_NOT_SUPPORTED("ProtocolNotSupported", ErrorType.FATAL), - INVALID_ARGUMENT("InvalidArgument", ErrorType.FATAL), - NODE_BUSY("NodeBusy", ErrorType.TRANSIENT), - // additional for pullto - INVALID_URI("InvalidURI", ErrorType.FATAL), - INVALID_DATA("InvalidData", ErrorType.FATAL), - // additional for pullfrom - NODE_NOT_FOUND("NodeNotFound", ErrorType.FATAL), - // additional for pushfrom - TRANSFER_FAILED("TransferFailed", ErrorType.FATAL), - // additional for movenode/copynode - DUPLICATE_NODE("DuplicateNode", ErrorType.FATAL); - - - private final String faultRepresentation; - private final ErrorType type; - - private VOSpaceFault(String faultRepresentation, ErrorType type) - { - this.faultRepresentation = faultRepresentation; - this.type = type; - } - - public String getFaultRepresentation() - { - return this.faultRepresentation; - } - - public ErrorType getType() - { - return this.type; - } - - } - -}