Data processing: software development – installation – and managem – Software program development tool – Managing software components
Reexamination Certificate
2000-10-19
2004-08-10
Ingberg, Todd (Department: 2122)
Data processing: software development, installation, and managem
Software program development tool
Managing software components
C717S136000, C709S202000, C719S317000
Reexamination Certificate
active
06775822
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates to passing null references between software components and, in particular, to passing null references between a null-capable software component and a component that is not null-capable. More particularly, the present invention passes null references using sentinel values.
2. Description of Related Art
Application frameworks communicate with persistent data stores to retrieve application-specific data. In a client-server environment, clients typically are implemented using programming models, such as common object architecture the Common Object Request Broker Architecture (CORBA™) programming model, to communicate with application servers to persist application-specific information backend databases. The CORBA™ programming model is a standard from the Object Management Group (OMG) for communicating between distributed objects. Objects are self-contained software modules. The CORBA™ programming model provides a way to execute objects written in different programming languages running on different platforms no matter where they reside in the network. The CORBA™ programming model is often described as an “object bus” or “software bus,” because it is a software-based communications interface through which objects are located and accessed.
The application servers that the applications run on typically provide “containers” that transfer information between a persistent backend and the application logic. In cases where the application logic is implemented using an objected-oriented paradigm, application-specific information may be in the form of primitive data types or more complex object types. For object types that need to be persisted, a common value to be stored is a “null” value. For a null value, the object is not created. An “object” is any data that can exist and have a state, meaning primitive types as well as, but distinct from class instances.
Some recent databases, such as the Database 2™ database from International Business Machines Corporation, are null-capable, meaning they are capable of storing null values. However, many legacy backend systems, such as applications written in Customer Information Control System (CICS™) and Information Management System (IMS™) programming models from IBM, are not null-capable. The use of legacy backend systems that are not null-capable creates a problem in deploying null-capable client applications that need to persist null values in the legacy systems.
Conversely, certain programming models, such as clients using the legacy CORBA™ programming model, are not null-capable. Client applications written in programming models that are not null-capable cannot retrieve data from null-capable backend systems.
Additionally, certain legacy application frameworks, referred to as “containers” or “glue code,” that provide communication between server applications and data stores do not support null values. The use of glue code that is not null-capable creates a problem, even for null-capable client applications that attempt to persist data in null-capable databases.
Therefore, it would be advantageous to have a method and apparatus for passing null references between software components through a legacy framework.
SUMMARY OF THE INVENTION
The present invention allows software components to agree on sentinel values. When a software component attempts to pass a null value to a software component that does not support null values, an intermediate framework replaces the null value with a corresponding sentinel value. When a software component that is not null-capable attempts to pass a sentinel value to a null-capable software component, the intermediate framework replaces the sentinel with a null value. The sentinel values may be randomly generated or assigned by a user. A sentinel value is a valid data value that is never used during program execution. For example, for an integer sentinel value one would not use a fraction or floating point number, but one would use an integer, such as 9999, that will never be used during regular program execution.
REFERENCES:
patent: 5878411 (1999-03-01), Burroughs et al.
patent: 6044370 (2000-03-01), Anfindsen
patent: 6085196 (2000-07-01), Motoyama et al.
patent: 6094664 (2000-07-01), Ungar
patent: 6112207 (2000-08-01), Nori et al.
patent: 6112210 (2000-08-01), Nori et al.
patent: 6332163 (2001-12-01), Bowman-Amuah
Apte Ajay A.
Brealey Christohper Lawrence
Ingberg Todd
Kiss Eric B.
Mims Jr. David A.
Walder, Jr. Stephen J.
Yee Duke W.
LandOfFree
Method and apparatus for passing null references between... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method and apparatus for passing null references between..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for passing null references between... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3356361