org.springframework.remoting.support
Class RemoteInvocationResult

java.lang.Object
  extended by org.springframework.remoting.support.RemoteInvocationResult
All Implemented Interfaces:
java.io.Serializable

public class RemoteInvocationResult
extends java.lang.Object
implements java.io.Serializable

Encapsulates a remote invocation result, holding a result value or an exception. Used for HTTP-based serialization invokers.

This is an SPI class, typically not used directly by applications. Can be subclassed for additional invocation parameters.

Since:
1.1
Author:
Juergen Hoeller
See Also:
RemoteInvocation, Serialized Form

Field Summary
private  java.lang.Throwable exception
           
private static long serialVersionUID
          Use serialVersionUID from Spring 1.1 for interoperability
private  java.lang.Object value
           
 
Constructor Summary
RemoteInvocationResult(java.lang.Object value)
          Create a new RemoteInvocationResult for the given result value.
RemoteInvocationResult(java.lang.Throwable exception)
          Create a new RemoteInvocationResult for the given exception.
 
Method Summary
 java.lang.Throwable getException()
          Return the exception thrown by an unsuccessful invocation of the target method, if any.
 java.lang.Object getValue()
          Return the result value returned by a successful invocation of the target method, if any.
 boolean hasException()
          Return whether this invocation result holds an exception.
 boolean hasInvocationTargetException()
          Return whether this invocation result holds an InvocationTargetException, thrown by an invocation of the target method itself.
 java.lang.Object recreate()
          Recreate the invocation result, either returning the result value in case of a successful invocation of the target method, or rethrowing the exception thrown by the target method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
Use serialVersionUID from Spring 1.1 for interoperability

See Also:
Constant Field Values

value

private java.lang.Object value

exception

private java.lang.Throwable exception
Constructor Detail

RemoteInvocationResult

public RemoteInvocationResult(java.lang.Object value)
Create a new RemoteInvocationResult for the given result value.

Parameters:
value - the result value returned by a successful invocation of the target method

RemoteInvocationResult

public RemoteInvocationResult(java.lang.Throwable exception)
Create a new RemoteInvocationResult for the given exception.

Parameters:
exception - the exception thrown by an unsuccessful invocation of the target method
Method Detail

getValue

public java.lang.Object getValue()
Return the result value returned by a successful invocation of the target method, if any.

See Also:
hasException()

getException

public java.lang.Throwable getException()
Return the exception thrown by an unsuccessful invocation of the target method, if any.

See Also:
hasException()

hasException

public boolean hasException()
Return whether this invocation result holds an exception. If this returns false, the result value applies (even if null).

See Also:
getValue(), getException()

hasInvocationTargetException

public boolean hasInvocationTargetException()
Return whether this invocation result holds an InvocationTargetException, thrown by an invocation of the target method itself.

See Also:
hasException()

recreate

public java.lang.Object recreate()
                          throws java.lang.Throwable
Recreate the invocation result, either returning the result value in case of a successful invocation of the target method, or rethrowing the exception thrown by the target method.

Returns:
the result value, if any
Throws:
java.lang.Throwable - the exception, if any