Class DynamicMethodMarshallerImpl
java.lang.Object
com.sun.corba.ee.impl.presentation.rmi.DynamicMethodMarshallerImpl
- All Implemented Interfaces:
DynamicMethodMarshaller
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface(package private) static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate DynamicMethodMarshallerImpl.ReaderWriter[]private static DynamicMethodMarshallerImpl.ReaderWriterprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate ExceptionHandlerprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate booleanprivate booleanprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate Methodprivate booleanprivate booleanprivate static DynamicMethodMarshallerImpl.ReaderWriterprivate static final ORBUtilSystemException -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static booleanObject[]copyArguments(Object[] args, ORB orb) Copy the arguments as needed for this particular method.copyResult(Object result, ORB orb) Copy the result as needed for this particular method.Returns the method used to create this DynamicMethodMarshaller.private static booleanisAbstractInterface(Class cls) private static booleanisAnyClass(Class cls) booleanReturns true iff thr's class is a declared exception (or a subclass of a declared exception) for this DynamicMethodMarshaller's method.makeReaderWriter(Class cls) Object[]Read the arguments for this method from the InputStream.Reads an exception ID and the corresponding exception from the input stream.Read the result from the InputStream.private static booleanthrowsRemote(Method method) voidwriteArguments(OutputStream os, Object[] args) Write arguments for this method to the OutputStream.voidwriteException(OutputStream os, Exception ex) Write the repository ID of the exception and the value of the exception to the OutputStream.voidwriteResult(OutputStream os, Object result) Write the result to the OutputStream.
-
Field Details
-
method
-
ehandler
-
hasArguments
private boolean hasArguments -
hasVoidResult
private boolean hasVoidResult -
needsArgumentCopy
private boolean needsArgumentCopy -
needsResultCopy
private boolean needsResultCopy -
argRWs
-
resultRW
-
wrapper
-
booleanRW
-
byteRW
-
charRW
-
shortRW
-
intRW
-
longRW
-
floatRW
-
doubleRW
-
corbaObjectRW
-
anyRW
-
abstractInterfaceRW
-
-
Constructor Details
-
DynamicMethodMarshallerImpl
-
-
Method Details
-
isAnyClass
-
isAbstractInterface
-
allMethodsThrowRemoteException
-
throwsRemote
-
makeReaderWriter
-
getMethod
Description copied from interface:DynamicMethodMarshallerReturns the method used to create this DynamicMethodMarshaller.- Specified by:
getMethodin interfaceDynamicMethodMarshaller- Returns:
- the method used
-
copyArguments
Description copied from interface:DynamicMethodMarshallerCopy the arguments as needed for this particular method. Can be optimized so that as little copying as possible is performed.- Specified by:
copyArgumentsin interfaceDynamicMethodMarshaller- Parameters:
args- arguments to copyorb- ORB to use- Returns:
- a copy of the arguments
- Throws:
RemoteException- if there is a remote error
-
readArguments
Description copied from interface:DynamicMethodMarshallerRead the arguments for this method from the InputStream. Returns null if there are no arguments.- Specified by:
readArgumentsin interfaceDynamicMethodMarshaller- Parameters:
is- stream to read arguments from- Returns:
- array of arguments
-
writeArguments
Description copied from interface:DynamicMethodMarshallerWrite arguments for this method to the OutputStream. Does nothing if there are no arguments.- Specified by:
writeArgumentsin interfaceDynamicMethodMarshaller- Parameters:
os- stream to write toargs- arguments to write
-
copyResult
Description copied from interface:DynamicMethodMarshallerCopy the result as needed for this particular method. Can be optimized so that as little copying as possible is performed.- Specified by:
copyResultin interfaceDynamicMethodMarshaller- Parameters:
result- Object to copyorb- ORB to use for copying- Returns:
- copied object
- Throws:
RemoteException- if there is an error with the ORB
-
readResult
Description copied from interface:DynamicMethodMarshallerRead the result from the InputStream. Returns null if the result type is null.- Specified by:
readResultin interfaceDynamicMethodMarshaller- Parameters:
is- stream to read from- Returns:
- result
-
writeResult
Description copied from interface:DynamicMethodMarshallerWrite the result to the OutputStream. Does nothing if the result type is null.- Specified by:
writeResultin interfaceDynamicMethodMarshaller- Parameters:
os- stream to write toresult- result to write to stream
-
isDeclaredException
Description copied from interface:DynamicMethodMarshallerReturns true iff thr's class is a declared exception (or a subclass of a declared exception) for this DynamicMethodMarshaller's method.- Specified by:
isDeclaredExceptionin interfaceDynamicMethodMarshaller- Parameters:
thr- throwable to checl- Returns:
- if it is a declared (non-runtime) exception
-
writeException
Description copied from interface:DynamicMethodMarshallerWrite the repository ID of the exception and the value of the exception to the OutputStream. ex should be a declared exception for this DynamicMethodMarshaller's method.- Specified by:
writeExceptionin interfaceDynamicMethodMarshaller- Parameters:
os- stream to write toex- exception to write
-
readException
Description copied from interface:DynamicMethodMarshallerReads an exception ID and the corresponding exception from the input stream. This should be an exception declared in this method.- Specified by:
readExceptionin interfaceDynamicMethodMarshaller- Parameters:
ae- id of exception to read- Returns:
- read exception
-