Package org.glassfish.rmic.iiop
Class StubGenerator
java.lang.Object
org.glassfish.rmic.iiop.Generator
org.glassfish.rmic.iiop.StubGenerator
- All Implemented Interfaces:
Constants,Generator,Constants,Constants,RuntimeConstants
An IIOP stub/tie generator for rmic.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.glassfish.rmic.iiop.Generator
Generator.OutputType -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate Stringprivate Stringprivate static final Stringprivate static final Stringprivate static final String(package private) static final Stringprivate booleanprivate intprivate booleanprivate static final Stringprivate booleanprivate boolean(package private) static final Stringprivate booleanprivate Stringprivate Stringprivate booleanFields inherited from interface org.glassfish.rmic.Constants
idRemote, idRemoteExceptionFields inherited from interface org.glassfish.rmic.iiop.Constants
ATTRIBUTE_GET, ATTRIBUTE_GET_RW, ATTRIBUTE_IS, ATTRIBUTE_IS_RW, ATTRIBUTE_NONE, ATTRIBUTE_SET, ATTRIBUTE_WIRE_PREFIX, ERROR_SUFFIX, EX_SUFFIX, EXCEPTION_SUFFIX, idApplicationException, idBadMethodException, idBoolean, idBoxedIDL, idBoxedRMI, idByte, idChar, idClassDesc, idCorbaObject, idCorbaORB, idCorbaUserException, idDelegate, idDouble, idExtInputStream, idExtOutputStream, idFloat, idIDLEntity, idInputStream, idInt, idJavaIoExternalizable, idJavaIoIOException, IDL_ANY, IDL_BOOLEAN, IDL_BOXEDIDL_MODULE, IDL_BYTE, IDL_CHAR, IDL_CLASS, IDL_CLASS_MODULE, IDL_CONSTANT_STRING, IDL_CONSTRUCTOR, IDL_CORBA_MODULE, IDL_CORBA_OBJECT, IDL_DOUBLE, IDL_EXTERNALIZABLE, IDL_FILE_EXTENSION, IDL_FLOAT, IDL_IDLENTITY, IDL_INT, IDL_JAVA_IO_MODULE, IDL_JAVA_LANG_MODULE, IDL_JAVA_LANG_OBJECT, IDL_JAVA_RMI_MODULE, IDL_JAVA_RMI_REMOTE, IDL_KEYWORDS, IDL_LONG, IDL_NAME_SEPARATOR, IDL_ORG_OMG_CORBA_MODULE, IDL_ORG_OMG_CORBA_PORTABLE_MODULE, IDL_REPOSITORY_ID_PREFIX, IDL_REPOSITORY_ID_VERSION, IDL_SEQUENCE, IDL_SEQUENCE_MODULE, IDL_SERIALIZABLE, IDL_SHORT, IDL_STRING, IDL_VOID, idLong, idOutputStream, idPOAServantType, idPortableUnknownException, idRemarshalException, idReplyHandler, idShort, idStubBase, idSystemException, idTieBase, idTieInterface, idValueBase, idVoid, INDENT_STEP, NAME_SEPARATOR, SERIAL_VERSION_UID, SOURCE_FILE_EXTENSION, STATUS_INVALID, STATUS_PENDING, STATUS_VALID, TAB_SIZE, TM_CLASS, TM_COMPOUND, TM_INNER, TM_INTERFACE, TM_MASK, TM_NON_CONFORMING, TM_PRIMITIVE, TM_SPECIAL_CLASS, TM_SPECIAL_INTERFACE, TYPE_ABSTRACT, TYPE_ALL, TYPE_ANY, TYPE_ARRAY, TYPE_BOOLEAN, TYPE_BYTE, TYPE_CHAR, TYPE_CORBA_OBJECT, TYPE_DOUBLE, TYPE_FLOAT, TYPE_IMPLEMENTATION, TYPE_INT, TYPE_JAVA_RMI_REMOTE, TYPE_LONG, TYPE_MASK, TYPE_NC_CLASS, TYPE_NC_INTERFACE, TYPE_NONE, TYPE_REMOTE, TYPE_SHORT, TYPE_STRING, TYPE_VALUE, TYPE_VOIDFields inherited from interface org.glassfish.rmic.tools.java.Constants
ABSTRACT, ACCM_CLASS, ACCM_FIELD, ACCM_INNERCLASS, ACCM_MEMBER, ACCM_METHOD, ADD, AND, ARRAY, ARRAYACCESS, ASGADD, ASGBITAND, ASGBITOR, ASGBITXOR, ASGDIV, ASGLSHIFT, ASGMUL, ASGREM, ASGRSHIFT, ASGSUB, ASGURSHIFT, ASSIGN, ATT_ALL, ATT_ALLCLASSES, ATT_CODE, BITAND, BITNOT, BITOR, BITXOR, BOOLEAN, BOOLEANVAL, BREAK, BYTE, BYTEVAL, CASE, CAST, CATCH, CHAR, CHARVAL, CLASS, COLON, COMMA, COMMENT, COND, CONST, CONTINUE, CONVERT, CS_BINARY, CS_CHECKED, CS_COMPILED, CS_NOTFOUND, CS_PARSED, CS_SOURCE, CS_UNDECIDED, CS_UNDEFINED, CT_BLOCK, CT_BRANCH_FALSE, CT_BRANCH_TRUE, CT_CASE, CT_FIKT_METHOD, CT_FIKT_RET, CT_FIRST_KIND, CT_LAST_KIND, CT_METHOD, CT_SWITH_WO_DEF, DEC, DECLARATION, DEFAULT, DIV, DO, DOUBLE, DOUBLEVAL, ELSE, EQ, ERROR, EXPR, EXPRESSION, EXTENDS, F_COVDATA, F_COVERAGE, F_DEBUG_LINES, F_DEBUG_SOURCE, F_DEBUG_VARS, F_DEPENDENCIES, F_DEPRECATION, F_DUMP, F_ERRORSREPORTED, F_OPT, F_OPT_INTERCLASS, F_PRINT_DEPENDENCIES, F_STRICTDEFAULT, F_VERBOSE, F_VERSION12, F_WARNINGS, FALSE, FIELD, FINAL, FINALLY, FLOAT, FLOATVAL, FOR, GE, GOTO, GT, idAppend, idClass, idClassInit, idClone, idCode, idConstantValue, idCoverageTable, idDeprecated, idDocumentation, IDENT, idExceptions, idFinallyReturnValue, idGetClass, idInit, idInnerClasses, idJavaIoSerializable, idJavaLang, idJavaLangClass, idJavaLangCloneable, idJavaLangError, idJavaLangException, idJavaLangObject, idJavaLangRuntimeException, idJavaLangString, idJavaLangStringBuffer, idJavaLangThrowable, idLength, idLineNumberTable, idLocalVariableTable, idNew, idNull, idSourceFile, idStar, idSuper, idSynthetic, idThis, idToString, idTYPE, idValueOf, IF, IMPLEMENTS, IMPORT, INC, INLINEMETHOD, INLINENEWINSTANCE, INLINERETURN, INSTANCEOF, INT, INTERFACE, INTVAL, LBRACE, LE, LENGTH, LONG, LONGVAL, LPAREN, LSHIFT, LSQBRACKET, LT, M_ABSTRACT, M_ANONYMOUS, M_DEPRECATED, M_FINAL, M_INLINEABLE, M_INTERFACE, M_LOCAL, M_NATIVE, M_PRIVATE, M_PROTECTED, M_PUBLIC, M_STATIC, M_STRICTFP, M_SYNCHRONIZED, M_SYNTHETIC, M_TRANSIENT, M_VOLATILE, MAXFILESIZE, MAXLINENUMBER, METHOD, MM_CLASS, MM_FIELD, MM_MEMBER, MM_METHOD, MUL, NATIVE, NE, NEG, NEW, NEWARRAY, NEWFROMNAME, NEWINSTANCE, NOT, NULL, opNames, opPrecedence, OR, PACKAGE, paraDeprecated, POS, POSTDEC, POSTINC, PREDEC, prefixAccess, prefixArray, prefixClass, prefixLoc, prefixThis, prefixVal, PREINC, PRIVATE, PROTECTED, PUBLIC, QUESTIONMARK, RBRACE, REM, RETURN, RPAREN, RSHIFT, RSQBRACKET, SEMICOLON, SHORT, SHORTVAL, SIG_INNERCLASS, SIGC_INNERCLASS, STAT, STATIC, STRICTFP, STRINGVAL, SUB, SUPER, SWITCH, SYNCHRONIZED, TC_ARRAY, TC_BOOLEAN, TC_BYTE, TC_CHAR, TC_CLASS, TC_DOUBLE, TC_ERROR, TC_FLOAT, TC_INT, TC_LONG, TC_METHOD, TC_NULL, TC_SHORT, TC_VOID, THIS, THROW, THROWS, TM_ARRAY, TM_BOOLEAN, TM_BYTE, TM_CHAR, TM_DOUBLE, TM_ERROR, TM_FLOAT, TM_INT, TM_INT32, TM_INTEGER, TM_LONG, TM_METHOD, TM_NULL, TM_NUM32, TM_NUM64, TM_NUMBER, TM_REAL, TM_REFERENCE, TM_SHORT, TM_VOID, tracing, TRANSIENT, TRUE, TRY, TYPE, URSHIFT, VARDECLARATION, VOID, VOLATILE, WHEREOFFSETBITS, WHILEFields inherited from interface org.glassfish.rmic.tools.java.RuntimeConstants
ACC_ABSTRACT, ACC_FINAL, ACC_INTERFACE, ACC_NATIVE, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_STRICT, ACC_SUPER, ACC_SYNCHRONIZED, ACC_TRANSIENT, ACC_VOLATILE, CONSTANT_CLASS, CONSTANT_DOUBLE, CONSTANT_FIELD, CONSTANT_FLOAT, CONSTANT_INTEGER, CONSTANT_INTERFACEMETHOD, CONSTANT_INVOKEDYNAMIC, CONSTANT_LONG, CONSTANT_METHOD, CONSTANT_METHODHANDLE, CONSTANT_METHODTYPE, CONSTANT_NAMEANDTYPE, CONSTANT_STRING, CONSTANT_UNICODE, CONSTANT_UTF8, JAVA_DEFAULT_MINOR_VERSION, JAVA_DEFAULT_VERSION, JAVA_MAGIC, JAVA_MAX_SUPPORTED_MINOR_VERSION, JAVA_MAX_SUPPORTED_VERSION, JAVA_MIN_SUPPORTED_VERSION, opc_aaload, opc_aastore, opc_aconst_null, opc_aload, opc_aload_0, opc_aload_1, opc_aload_2, opc_aload_3, opc_anewarray, opc_areturn, opc_arraylength, opc_astore, opc_astore_0, opc_astore_1, opc_astore_2, opc_astore_3, opc_athrow, opc_baload, opc_bastore, opc_bipush, opc_breakpoint, opc_caload, opc_castore, opc_checkcast, opc_d2f, opc_d2i, opc_d2l, opc_dadd, opc_daload, opc_dastore, opc_dcmpg, opc_dcmpl, opc_dconst_0, opc_dconst_1, opc_ddiv, opc_dead, opc_dload, opc_dload_0, opc_dload_1, opc_dload_2, opc_dload_3, opc_dmul, opc_dneg, opc_drem, opc_dreturn, opc_dstore, opc_dstore_0, opc_dstore_1, opc_dstore_2, opc_dstore_3, opc_dsub, opc_dup, opc_dup_x1, opc_dup_x2, opc_dup2, opc_dup2_x1, opc_dup2_x2, opc_f2d, opc_f2i, opc_f2l, opc_fadd, opc_faload, opc_fastore, opc_fcmpg, opc_fcmpl, opc_fconst_0, opc_fconst_1, opc_fconst_2, opc_fdiv, opc_fload, opc_fload_0, opc_fload_1, opc_fload_2, opc_fload_3, opc_fmul, opc_fneg, opc_frem, opc_freturn, opc_fstore, opc_fstore_0, opc_fstore_1, opc_fstore_2, opc_fstore_3, opc_fsub, opc_getfield, opc_getstatic, opc_goto, opc_goto_w, opc_i2b, opc_i2c, opc_i2d, opc_i2f, opc_i2l, opc_i2s, opc_iadd, opc_iaload, opc_iand, opc_iastore, opc_iconst_0, opc_iconst_1, opc_iconst_2, opc_iconst_3, opc_iconst_4, opc_iconst_5, opc_iconst_m1, opc_idiv, opc_if_acmpeq, opc_if_acmpne, opc_if_icmpeq, opc_if_icmpge, opc_if_icmpgt, opc_if_icmple, opc_if_icmplt, opc_if_icmpne, opc_ifeq, opc_ifge, opc_ifgt, opc_ifle, opc_iflt, opc_ifne, opc_ifnonnull, opc_ifnull, opc_iinc, opc_iload, opc_iload_0, opc_iload_1, opc_iload_2, opc_iload_3, opc_imul, opc_ineg, opc_instanceof, opc_invokedynamic, opc_invokeinterface, opc_invokespecial, opc_invokestatic, opc_invokevirtual, opc_ior, opc_irem, opc_ireturn, opc_ishl, opc_ishr, opc_istore, opc_istore_0, opc_istore_1, opc_istore_2, opc_istore_3, opc_isub, opc_iushr, opc_ixor, opc_jsr, opc_jsr_w, opc_l2d, opc_l2f, opc_l2i, opc_label, opc_ladd, opc_laload, opc_land, opc_lastore, opc_lcmp, opc_lconst_0, opc_lconst_1, opc_ldc, opc_ldc_w, opc_ldc2_w, opc_ldiv, opc_lload, opc_lload_0, opc_lload_1, opc_lload_2, opc_lload_3, opc_lmul, opc_lneg, opc_lookupswitch, opc_lor, opc_lrem, opc_lreturn, opc_lshl, opc_lshr, opc_lstore, opc_lstore_0, opc_lstore_1, opc_lstore_2, opc_lstore_3, opc_lsub, opc_lushr, opc_lxor, opc_monitorenter, opc_monitorexit, opc_multianewarray, opc_new, opc_newarray, opc_nop, opc_pop, opc_pop2, opc_putfield, opc_putstatic, opc_ret, opc_return, opc_saload, opc_sastore, opc_sipush, opc_swap, opc_tableswitch, opc_try, opc_wide, opcLengths, opcNames, SIG_ARRAY, SIG_BOOLEAN, SIG_BYTE, SIG_CHAR, SIG_CLASS, SIG_DOUBLE, SIG_ENDCLASS, SIG_ENDMETHOD, SIG_FLOAT, SIG_INT, SIG_LONG, SIG_METHOD, SIG_PACKAGE, SIG_SHORT, SIG_VOID, SIGC_ARRAY, SIGC_BOOLEAN, SIGC_BYTE, SIGC_CHAR, SIGC_CLASS, SIGC_DOUBLE, SIGC_ENDCLASS, SIGC_ENDMETHOD, SIGC_FLOAT, SIGC_INT, SIGC_LONG, SIGC_METHOD, SIGC_PACKAGE, SIGC_SHORT, SIGC_VOID, T_BOOLEAN, T_BYTE, T_CHAR, T_CLASS, T_DOUBLE, T_FLOAT, T_INT, T_LONG, T_SHORT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) voidaddClassesInUse(CompoundType type, RemoteType[] interfaces) private voidaddClassInUse(String qualifiedName) (package private) voidaddClassInUse(String unqualifiedName, String qualifiedName, String packageName) private voidaddClassInUse(Type type) private voidaddClassInUse(Type[] types) (package private) voidaddNameInUse(String name) (package private) voidaddNamesInUse(CompoundType.Method method) (package private) voidaddNamesInUse(CompoundType.Method[] methods) (package private) voidaddRemoteInterfaces(Vector<CompoundType> list, CompoundType theType) Add all the inherited remote interfaces to list.private voidaddStubInUse(Type type) private voidaddStubInUse(Type[] types) (package private) voidallocateResult(IndentingWriter p, Type returnType) voidvoidvoid(package private) Type[]collectAllRemoteInterfaces(CompoundType theType) Collect all the inherited remote interfaces.(package private) intcountRemote(Type[] list, boolean includeAbstract) voidgenerate(BatchEnvironment env, File destDir, ClassDefinition cdef) Overridden in order to set the standardPackage flag.(package private) String[]getAllRemoteRepIDs(CompoundType theType) Get a list of all the RepositoryIDs for interfaces implemented directly or indirectly by theType.(package private) RemoteType[]getDirectRemoteInterfaces(CompoundType theType) Get a list of all the remote interfaces which this stub should declare.(package private) StringgetExceptionName(Type type) (package private) StringgetExceptionRepositoryID(Type type) protected StringgetFileNameExtensionFor(Generator.OutputType outputType) Return the file name extension for the given file name (e.g.(package private) String(package private) String(package private) StringgetName(Identifier id) protected FilegetOutputDirectory(File destinationDir, Identifier id, BatchEnvironment environment) protected Generator.OutputType[]getOutputTypesFor(CompoundType topType, HashSet alreadyChecked) Return an array containing all the file names and types that need to be generated for the given top-level type.(package private) StringgetRepositoryID(Type type) (package private) StaticStringsHashgetStringsHash(CompoundType.Method[] methods) (package private) ValueType[]getStubExceptions(CompoundType.Method method, boolean sort) (package private) StringgetStubName(Type type) private StringgetStubNameFor(Type type, boolean qualified) (package private) ValueType[]getTieExceptions(CompoundType.Method method) protected CompoundTypegetTopType(ClassDefinition cdef, ContextStack stack) Create and return a top-level type.(package private) intgetTypeCode(Type type) (package private) StringgetVariableName(String proposed) private booleanimplementsRemote(CompoundType theType) private booleanisStubType(Generator.OutputType outputType) (package private) static boolean(package private) static booleanneedNewReadStreamClass(Type type) (package private) static booleanneedNewWriteStreamClass(Type type) booleanExamine and consume command line arguments.protected booleanparseNonConforming(ContextStack stack) Return true if non-conforming types should be parsed.protected voidpostProcessFile(BatchEnvironment env, File file) protected booleanReturn true if a new instance should be created for each class on the command line.(package private) voidsetStandardClassesInUse(CompoundType type, boolean stub) (package private) StringAdded for IASRI 4987274.voidvoidvoidvoidwrite_tie_thisObject_method(IndentingWriter p, Identifier idCorbaObject) (package private) void(package private) String[]writeCopyArguments(CompoundType.Method method, IndentingWriter p) (package private) voidwriteIds(IndentingWriter p, CompoundType theType, boolean isTie) (package private) voidwriteLocalStubMethodBody(IndentingWriter p, CompoundType.Method method, CompoundType theType) (package private) voidwriteMarshalArgument(IndentingWriter p, String streamName, Type type, String name) Write a snippet of Java code to marshal a value named "name" of type "type" to the java.io.ObjectOutput stream named "stream".(package private) voidwriteMarshalArguments(IndentingWriter p, String streamName, Type[] types, String[] names) Write Java statements to marshal a series of values in order as named in the "names" array, with types as specified in the "types" array", to the java.io.ObjectOutput stream named "stream".(package private) voidwriteNonLocalStubMethodBody(IndentingWriter p, CompoundType.Method method, CompoundType theType) protected voidwriteOutputFor(Generator.OutputType outputType, HashSet alreadyChecked, IndentingWriter writer) Write the output for the given OutputFileName into the output stream.private voidprivate voidwriteStub(Generator.OutputType outputType, IndentingWriter p) Write a stub for the specified type.private voidwriteStubMethod(IndentingWriter p, CompoundType.Method method, CompoundType theType) protected voidwriteTie(Generator.OutputType outputType, IndentingWriter p) Write the Tie for the remote class to a stream.(package private) voidwriteTieMethod(IndentingWriter p, CompoundType type, CompoundType.Method method) (package private) voidwriteUnmarshalArgument(IndentingWriter p, String streamName, Type type, String name) Write a snippet of Java code to unmarshal a value of type "type" from the java.io.ObjectInput stream named "stream" into a variable named "name" (if "name" is null, the value in unmarshalled and discarded).Methods inherited from class org.glassfish.rmic.iiop.Generator
getOutputId
-
Field Details
-
DEFAULT_STUB_CLASS
- See Also:
-
DEFAULT_TIE_CLASS
- See Also:
-
DEFAULT_POA_TIE_CLASS
- See Also:
-
reverseIDs
private boolean reverseIDs -
localStubs
private boolean localStubs -
standardPackage
private boolean standardPackage -
useHash
private boolean useHash -
stubBaseClass
-
tieBaseClass
-
namesInUse
-
classesInUse
-
imports
-
importCount
private int importCount -
currentPackage
-
currentClass
-
castArray
private boolean castArray -
transactionalObjects
-
POATie
private boolean POATie -
emitPermissionCheck
private boolean emitPermissionCheck -
NO_IMPORT
-
SINGLE_SLASH
- See Also:
-
DOUBLE_SLASH
- See Also:
-
-
Constructor Details
-
StubGenerator
public StubGenerator()Default constructor for Main to use.
-
-
Method Details
-
generate
Overridden in order to set the standardPackage flag. -
requireNewInstance
protected boolean requireNewInstance()Return true if a new instance should be created for each class on the command line. Subclasses which return true should override newInstance() to return an appropriately constructed instance.- Specified by:
requireNewInstancein classGenerator
-
parseNonConforming
Return true if non-conforming types should be parsed.- Specified by:
parseNonConformingin classGenerator- Parameters:
stack- The context stack.
-
getTopType
Create and return a top-level type.- Specified by:
getTopTypein classGenerator- Parameters:
cdef- The top-level class definition.stack- The context stack.- Returns:
- The compound type or null if is non-conforming.
-
parseArgs
Examine and consume command line arguments.- Specified by:
parseArgsin interfaceGenerator- Overrides:
parseArgsin classGenerator- Parameters:
argv- The command line arguments. Ignore null and unknown arguments. Set each consumed argument to null.main- Report any errors using the main.error() methods.- Returns:
- true if no errors, false otherwise.
-
getOutputTypesFor
Return an array containing all the file names and types that need to be generated for the given top-level type. The file names must NOT have an extension (e.g. ".java").- Specified by:
getOutputTypesForin classGenerator- Parameters:
topType- The type returned by getTopType().alreadyChecked- A set of Types which have already been checked. Intended to be passed to topType.collectMatching(filter,alreadyChecked).
-
getFileNameExtensionFor
Return the file name extension for the given file name (e.g. ".java"). All files generated with the ".java" extension will be compiled. To change this behavior for ".java" files, override the compileJavaSourceFile method to return false.- Specified by:
getFileNameExtensionForin classGenerator- Parameters:
outputType- One of the items returned by getOutputTypesFor(...)
-
writeOutputFor
protected void writeOutputFor(Generator.OutputType outputType, HashSet alreadyChecked, IndentingWriter writer) throws IOException Write the output for the given OutputFileName into the output stream.- Specified by:
writeOutputForin classGenerator- Parameters:
outputType- One of the items returned by getOutputTypesFor(...)alreadyChecked- A set of Types which have already been checked. Intended to be passed to Type.collectMatching(filter,alreadyChecked).writer- The output stream.- Throws:
IOException
-
isStubType
-
writeStub
Write a stub for the specified type.- Throws:
IOException
-
addClassInUse
-
addClassInUse
-
addClassInUse
-
addStubInUse
-
getStubNameFor
-
addStubInUse
-
addClassInUse
-
getName
-
getExceptionName
-
getName
-
getName
-
getStubName
-
setStandardClassesInUse
- Throws:
IOException
-
addClassesInUse
-
writePackageAndImports
- Throws:
IOException
-
implementsRemote
-
writeStubMethod
private void writeStubMethod(IndentingWriter p, CompoundType.Method method, CompoundType theType) throws IOException - Throws:
IOException
-
writeLocalStubMethodBody
void writeLocalStubMethodBody(IndentingWriter p, CompoundType.Method method, CompoundType theType) throws IOException - Throws:
IOException
-
writeNonLocalStubMethodBody
void writeNonLocalStubMethodBody(IndentingWriter p, CompoundType.Method method, CompoundType theType) throws IOException - Throws:
IOException
-
allocateResult
- Throws:
IOException
-
getTypeCode
-
writeMarshalArgument
void writeMarshalArgument(IndentingWriter p, String streamName, Type type, String name) throws IOException Write a snippet of Java code to marshal a value named "name" of type "type" to the java.io.ObjectOutput stream named "stream".- Throws:
IOException
-
writeUnmarshalArgument
void writeUnmarshalArgument(IndentingWriter p, String streamName, Type type, String name) throws IOException Write a snippet of Java code to unmarshal a value of type "type" from the java.io.ObjectInput stream named "stream" into a variable named "name" (if "name" is null, the value in unmarshalled and discarded).- Throws:
IOException
-
getAllRemoteRepIDs
Get a list of all the RepositoryIDs for interfaces implemented directly or indirectly by theType. In the case of an ImplementationType which implements 2 or more remote interfaces, this list will begin with the Identifier for the implementation (see section 5.9 in the Java -> IDL mapping). Ensures that the most derived type is first in the list because the IOR is generated using that entry in the _ids array. -
collectAllRemoteInterfaces
Collect all the inherited remote interfaces. -
addRemoteInterfaces
Add all the inherited remote interfaces to list. -
getDirectRemoteInterfaces
Get a list of all the remote interfaces which this stub should declare. -
countRemote
-
writeCastArray
- Throws:
IOException
-
writeIds
- Throws:
IOException
-
writeTie
Write the Tie for the remote class to a stream.- Throws:
IOException
-
catchWrongPolicy
- Throws:
IOException
-
catchServantNotActive
- Throws:
IOException
-
catchObjectNotActive
- Throws:
IOException
-
write_tie_thisObject_method
public void write_tie_thisObject_method(IndentingWriter p, Identifier idCorbaObject) throws IOException - Throws:
IOException
-
write_tie_deactivate_method
- Throws:
IOException
-
write_tie_orb_method
- Throws:
IOException
-
write_tie__ids_method
- Throws:
IOException
-
getStringsHash
-
needNewReadStreamClass
-
needNewWriteStreamClass
-
writeCopyArguments
- Throws:
IOException
-
getRepositoryID
-
getExceptionRepositoryID
-
getVariableName
-
addNamesInUse
-
addNamesInUse
-
addNameInUse
-
mustCopy
-
getStubExceptions
-
getTieExceptions
-
writeTieMethod
void writeTieMethod(IndentingWriter p, CompoundType type, CompoundType.Method method) throws IOException - Throws:
IOException
-
writeMarshalArguments
void writeMarshalArguments(IndentingWriter p, String streamName, Type[] types, String[] names) throws IOException Write Java statements to marshal a series of values in order as named in the "names" array, with types as specified in the "types" array", to the java.io.ObjectOutput stream named "stream".- Throws:
IOException
-
testUtil
Added for IASRI 4987274. Remote classes named "Util" were getting confused with javax.rmi.CORBA.Util and the unqualifiedName "Util". -
getOutputDirectory
- Specified by:
getOutputDirectoryin classGenerator
-
postProcessFile
- Overrides:
postProcessFilein classGenerator- Throws:
FileNotFoundException
-