package com.netifera.platform.net.http.web.model; import com.netifera.platform.api.model.AbstractEntity; import com.netifera.platform.api.model.IEntity; import com.netifera.platform.api.model.IEntityReference; import com.netifera.platform.api.model.IWorkspace; import com.netifera.platform.net.model.ClientServiceConnectionEntity; public class HTTPResponseEntity extends AbstractEntity { private static final long serialVersionUID = 8560224246576871994L; final public static String ENTITY_TYPE = "http.response"; private final IEntityReference connection; private IEntityReference request; private final String statusLine; // private Map<String,String> header; // private String contents; public HTTPResponseEntity(IWorkspace workspace, ClientServiceConnectionEntity connection, String statusLine) { super(ENTITY_TYPE, workspace, connection.getRealmId()); this.connection = connection.createReference(); this.statusLine = statusLine; } HTTPResponseEntity() { connection = null; statusLine = null; } public ClientServiceConnectionEntity getConnection() { return (ClientServiceConnectionEntity) referenceToEntity(connection); } public HTTPRequestEntity getRequest() { return (HTTPRequestEntity) referenceToEntity(request); } public String getStatusLine() { return statusLine; } public int getStatusCode() { return Integer.parseInt(statusLine.split(" ")[1]); } @Override protected void synchronizeEntity(AbstractEntity masterEntity) { request = ((HTTPResponseEntity)masterEntity).request; } @Override protected IEntity cloneEntity() { HTTPResponseEntity clone = new HTTPResponseEntity(getWorkspace(),getConnection(),statusLine); clone.request = request; return clone; } }