import org.springframework.remoting.httpinvoker.HttpInvokerClientConfiguration;
import org.springframework.remoting.support.RemoteInvocation;
import org.springframework.remoting.support.RemoteInvocationResult;
-import org.springframework.security.remoting.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor;
-public abstract class CdmServiceRequestExecutor extends AuthenticationSimpleHttpInvokerRequestExecutor {
-
+public abstract class CdmServiceRequestExecutor extends CdmAuthenticatedHttpInvokerRequestExecutor {
+
private RemoteInvocation currentRemoteInvocation;
-
+
@Override
protected void writeRemoteInvocation(RemoteInvocation invocation, OutputStream os) throws IOException {
currentRemoteInvocation = invocation;
throws java.io.IOException,
java.lang.ClassNotFoundException {
RemoteInvocationResult rir = fromCache(currentRemoteInvocation);
-
+
if(rir == null) {
rir = super.doExecuteRequest(config, baos);
cache(currentRemoteInvocation, rir);
- }
-
+ }
+
currentRemoteInvocation = null;
return rir;
}
-
+
public abstract void cache(RemoteInvocation ri, RemoteInvocationResult rir);
-
+
public abstract RemoteInvocationResult fromCache(RemoteInvocation ri);
}