Claims
- 1. A method of marshaling an argument object reference that is to be an argument or part of an argument encapsulated within a marshal buffer, the object reference including a subcontract identifier, the method comprising the steps of:invoking a marshal method of a client representation in the argument object reference passing the marshal buffer as an argument to the marshal method; identifying the marshal buffer type; and determining whether the identified marshal buffer type is known to a subcontract identified by the subcontract identifier of the argument object reference, wherein when it is determined that the identified marshal buffer type is known to the identified subcontract, the argument object reference is encoded into a form appropriate for the identified marshal buffer type.
- 2. A computer readable medium having programmed instructions for marshaling an argument object reference that is at least a part of an argument encapsulated within a marshal buffer, the argument object reference including a subcontract identifier, the computer readable medium having programmed instructions arranged to:invoke a marshal method of a client representation in the argument object reference passing the marshal buffer as an argument to the marshal method; identify the marshal buffer type; and determine whether the identified marshal buffer type is known to a subcontract identified by the subcontract identifier of the argument object reference, wherein when it is determined that the identified marshal buffer type is known to the identified subcontract, the argument object reference is encoded into a form appropriate for the identified marshal buffer type.
- 3. An argument object reference marshaler for use in a distributed, client/server computing system, the argument object reference marshaler comprising:a marshal buffer for encapsulating a distributed request; an identifying mechanism associated with the marshal buffer, the identifying mechanism being arranged to identify the marshal buffer type associated with the marshal buffer; and a marshaling routine which uses the marshal buffer type to determine an appropriate method to use for marshaling information in an argument object reference.
- 4. An argument object reference marshaler as recited in claim 3 wherein the argument object reference constitutes an entire argument in the invocation request.
- 5. A computer program product comprising a computer-usable medium having computer-readable code embodied thereon for marshaling an argument object reference that is to be an argument or part of an argument encapsulated within a marshal buffer, the object reference including a subcontract identifier, the argument object reference defined within a distributed client/server based computer system, the computer program product comprising computer-readable program code for effecting the following steps within the computer system:invoking a marshal method of a client representation in the argument object reference passing the marshal buffer as an argument to the marshal method; identifying the marshal buffer type; and determining whether the identified marshal buffer type is known to a subcontract identified by the subcontract identifier of the argument object reference, wherein when it is determined that the identified marshal buffer type is known to the identified subcontract, the argument object reference is encoded into a form appropriate for the identified marshal buffer type.
CROSS REFERENCE TO RELATED APPLICATIONS
This application is a continuation of prior application No.: 08/670,681, from which priority under 35 U.S.C.§120 is claimed.
U.S. Ser. No. 08/554,794, now U.S. Pat. No. 5,577,251, entitled “Object Oriented System for Executing Application Call by Using Plurality of Client-Side Subcontract Mechanism Associated with Corresponding Plurality of Server-Side Subcontract Mechanism,” issued Nov. 19, 1996 as a continuation to application Ser. No. 07/995,863, filed Dec. 21, 1992 (now abandoned), is related to the present application and is incorporated by reference herein in its entirety. Additionally, the following U.S. patent applications, all filed concurrently herewith, are related to the present application and are also incorporated by reference herein in their entirety: application Ser. No. 08/670,682 now U.S. Pat. No. 6,044,244; application Ser. No. 08/670,684; application Ser. No. 08/673,181 now U.S. Pat. No. 6,032,199; application Ser. No. 08/670,700 now U.S. Pat. No. 6,189,048; and application Ser. No. 08/669,782 now U.S. Pat. No. 5,991,823.
US Referenced Citations (4)
Number |
Name |
Date |
Kind |
5307490 |
Davidson et al. |
Apr 1994 |
|
5577251 |
Hamilton et al. |
Nov 1996 |
|
5737607 |
Hamilton et al. |
Apr 1998 |
|
5787251 |
Hamilton et al. |
Jul 1998 |
|
Non-Patent Literature Citations (1)
Entry |
Hamilton et al., Subcontract: A flexible base for distributed programming, 1993, ACM, pp. 69-79. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
08/670681 |
Jun 1996 |
US |
Child |
09/507284 |
|
US |