/* * <p> * 版权: ©2011 * </p> */ package org.young.isocket.service; /** * <p> * 描述:消息对象 * </p> * * @see * @author yangjun2 * @email yangjun1120@gmail.com * */ public class ServiceResponse { /** * 转换类型 1 json 2 xml */ private String transformType; /** * 消息ID,32位 */ private String id; private String sessionId; private String serviceId; public String getServiceId() { return serviceId; } public void setServiceId(String serviceId) { this.serviceId = serviceId; } public String getSessionId() { return sessionId; } public void setSessionId(String sessionId) { this.sessionId = sessionId; } //private boolean auth = false; // /** // * 服务ID, 10位 // */ // private String serviceId; /** * 结果码分类 * 1.成功 * 2.超时异常 * 3.通讯异常 * 4.服务器异常 * 5.消息解析异常 * 6.服务方异常 * 7.其他未知异常 */ private int responseCode = -1; // public boolean isAuth() { // return auth; // } // // public void setAuth(boolean authFlag) { // this.auth = authFlag; // } private Object responseObject; private String responseMessage; public String getId() { return id; } public void setId(String id) { this.id = id; } /** * 传递的内容类名 */ //private String cname; public String getTransformType() { return transformType; } // public TransformType getTransformTypeDesc() { // if (transformType == (byte) 1) { // return TransformType.JSON; // } else if (transformType == (byte) 2) { // return TransformType.XML; // } else { // throw new IllegalArgumentException("no support!"); // } // } public int getResponseCode() { return responseCode; } public void setResponseCode(int responseCode) { this.responseCode = responseCode; } public <T> T getResponseObject() { return (T) responseObject; } public void setResponseObject(Object responseObject) { this.responseObject = responseObject; } public String getResponseMessage() { return responseMessage; } public void setResponseMessage(String responseMessage) { this.responseMessage = responseMessage; } public void setTransformType(String transformType) { // if (!(transformType.equals(SocketKeys.TRANSFORM_JSON) || transformType.equals(SocketKeys.TRANSFORM_XML))) { // throw new IllegalArgumentException("transformType:" + transformType + " isn't support!"); // } this.transformType = transformType; } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("sid:").append(getServiceId()).append("id:").append(getId()).append(",transformType:") .append(getTransformType()); if (getResponseObject() != null) { sb.append("result class:").append(getResponseObject().getClass().getName()).append(",responseObject:") .append(getResponseObject()); } sb.append(",responseCode:").append(getResponseCode()).append("responseMessage:") .append(this.getResponseMessage()).toString(); return sb.toString(); } @Override public int hashCode() { int hash = 7; hash = 97 * hash + this.transformType.hashCode(); hash = 97 * hash + (this.id != null ? this.id.hashCode() : 0); hash = 97 * hash + responseCode; hash = 97 * hash + (this.responseMessage != null ? this.responseMessage.hashCode() : 0); hash = 97 * hash + (this.responseObject != null ? this.responseObject.hashCode() : 0); return hash; } @Override public boolean equals(Object obj) { if (obj == null) return false; ServiceResponse m = (ServiceResponse) obj; if (m.getId() == null) return false; if (this.getId().equals(m.getId()) && this.transformType == m.transformType) { // if (m.getBody() == null && this.getBody() == null) { // return true; // } else if (m.getBody() != null) { // if (m.getBody().equals(this.getBody())) { // return true; // } else { // return false; // } // // } else { // return false; // } return true; } else return false; } }