mirror of https://github.com/apache/jclouds.git
Implement Comparable in GoGrid ErrorResponse
Gson collects errors in a TreeMap which requires a well-behaved Comparable method. This addresses a Java 7 GoGrid failure seen in GridServerClientExpectTest.testGetServerCredentialsWhenNotFoundThrowsResourceNotFoundExceptionWithNiceMessage: java.lang.ClassCastException: org.jclouds.gogrid.domain.internal.ErrorResponse cannot be cast to java.lang.Comparable
This commit is contained in:
parent
e7354c6f4a
commit
67b3f78838
|
@ -24,13 +24,14 @@ import java.beans.ConstructorProperties;
|
||||||
|
|
||||||
import com.google.common.base.Objects;
|
import com.google.common.base.Objects;
|
||||||
import com.google.common.base.Objects.ToStringHelper;
|
import com.google.common.base.Objects.ToStringHelper;
|
||||||
|
import com.google.common.collect.ComparisonChain;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class ErrorResponse
|
* Class ErrorResponse
|
||||||
*
|
*
|
||||||
* @author Oleksiy Yarmula
|
* @author Oleksiy Yarmula
|
||||||
*/
|
*/
|
||||||
public class ErrorResponse {
|
public class ErrorResponse implements Comparable<ErrorResponse> {
|
||||||
|
|
||||||
public static Builder<?> builder() {
|
public static Builder<?> builder() {
|
||||||
return new ConcreteBuilder();
|
return new ConcreteBuilder();
|
||||||
|
@ -113,6 +114,14 @@ public class ErrorResponse {
|
||||||
&& Objects.equal(this.errorCode, that.errorCode);
|
&& Objects.equal(this.errorCode, that.errorCode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int compareTo(ErrorResponse that) {
|
||||||
|
return ComparisonChain.start()
|
||||||
|
.compare(errorCode, that.errorCode)
|
||||||
|
.compare(message, that.message)
|
||||||
|
.result();
|
||||||
|
}
|
||||||
|
|
||||||
protected ToStringHelper string() {
|
protected ToStringHelper string() {
|
||||||
return Objects.toStringHelper(this)
|
return Objects.toStringHelper(this)
|
||||||
.add("message", message).add("errorCode", errorCode);
|
.add("message", message).add("errorCode", errorCode);
|
||||||
|
|
Loading…
Reference in New Issue