Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing
Reexamination Certificate
1996-03-14
2001-07-31
Banankhah, Majid A. (Department: 2151)
Electrical computers and digital processing systems: multicomput
Computer-to-computer data routing
Least weight routing
Reexamination Certificate
active
06269407
ABSTRACT:
BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates in general to a method and system for data processing and, in particular, to a method and system for data filtering within a data processing system. Still more particularly, the present invention relates to a data processing system and method for filtering an input sequence based upon a selected policy utilizing a filter object within an object-oriented environment.
2. Description of the Related Art
The development of application and system software for data processing systems has traditionally been a time-consuming and somewhat repetitive task, with software developers often having to write or rewrite code to perform well-known user interface and system functions in addition to writing the code utilized to implement the desired new functionality. Recently, object-oriented programming (OOP) has emerged as a dominant new programming paradigm that enables the rapid development and implementation of functionality while permitting the customization and reuse of objects.
The power of OOP as a software development philosophy is realized chiefly through object frameworks, which provide a collection of base object classes that can be selectively utilized by a system developer to create a software system, much like a hardware developer might construct a desktop computer from standard hardware components. Object frameworks are particularly advantageous when utilized within a distributed computing environment in which multiple, possibly heterogeneous, computer systems are interconnected to allow system hardware and software resources to be shared between computer systems. In order to permit programs written in multiple diverse languages to utilize object classes defined within a single object framework, it is necessary to develop a minimum level of object standardization, thereby enabling, at least to some degree, the interoperability of object-oriented software. One organization that is working to establish industry guidelines and object management specifications to provide a common object framework for applicaton development is the Object Management Group (OMG). The specifications promulgated by OMG enable the reusability, portability, and interoperability of object-based software in distributed heterogeneous computing environments (HDCE). An example of a commercially available object framework that conforms to OMG specifications is the Distributed System Object Model (DSOM), which is described, for example, in the SOM Objects Toolkit version 3.0
Programmer's Guide, Volume
1:
SOM and DSOM
, available from International Business Machines Corporation.
The Object Management Group (OMG) defines an industry standard for Life Cycle Services in
CORBAservices: Common Object Services Specification
, OMG Document No. 95-3-31. Within the OMG Life Cycle Services standard, a number of object-oriented programming interfaces are defined in support of the creation and destruction of objects within a heterogeneous distributed computing environment (HDCE). Among the interfaces introduced within the OMG Life Cycle Services standard is the FactoryFinder interface, which provides a standard service that can be utilized by applications to locate a Factory object (i.e., an object that creates other objects) within the heterogeneous distributed computing environment (HDCE).
The OMG FactoryFinder interface introduces an operation called find_factories, which returns an Interface Definition Language (IDL) sequence of Factory objects that satisfy input criteria specified within a factory_key input parameter. In heterogeneous distributed data processing systems that contains hundreds or thousands of objects, of which many may satisfy a particular factory_key, the number of Factory objects returned in the sequence can be large. Consequently, the user may desire to reduce the number of objects returned by the FactoryFinder on the basis of an additional static policy, such as a specific server on which the Factory objects reside. In addition, the user may desire to limit the number of Factory objects returned in the FactoryFinder search on the basis of a dynamic policy, for example, the CPU usage of the servers on which the Factory objects reside.
Although additional filtering of IDL sequences returned by OMG FactoryFinder objects is highly desirable, the OMG specifications do not define a standard interface which enables a user to reduce the number of Factory objects remaining within the sequence. Although additional policies may be encapsulated within a FactoryFinder object, each of these additional policies would require a unique implementation of FactoryFinder. In addition, a unique FactoryFinder implementation would be required to combine multiple policies within a single FactofyFinder. Consequently, it would be desirable to provide an interface capable of filtering input sequences based upon a selected policy, and more particularly, an interface compatible with the OMG FactoryFinder interface that filters IDL sequences generated by a FactoryFinder based upon a user-selected dynamic policy. It is also desirable to be able to associate one or more filtering objects with a FactoryFinder object so that any combination of policies can be supported by a single FactoryFinder implementation.
SUMMARY OF THE INVENTION
It is therefore one object of the present invention to provide an improved data processing system.
It is another object of the present invention to provide a method and system for data filtering within a data processing system.
It is yet another object of the present invention to provide a data processing system and method for filtering an input sequence based upon a selected policy utilizing a filter object within an object-oriented environment.
It is still another object of the present invention to provide one or more filter objects within an object-oriented environment which are each associated with a particular object such that a combination of filtering policies is supported for a single implementation of the particular object.
The foregoing objects are achieved as is now described. A method and system for filtering a list of data elements within an object-oriented environment are disclosed. According to the present invention, a filter object is created that supports a filter method which discriminates data elements within an input list utilizing a filter criterion. A message is then sent to the filter object specifying an input list of data elements to be filtered. In response to receipt of the message, data elements within the specified input list are discriminated utilizing the filter criterion. In one embodiment, one or more filter objects are registered with a finder object such that a list of data elements satisfying a search criterion produced by the finder object are automatically furnished to the filter objects as an input list.
The above as well as additional objects, features, and advantages of the present invention will become apparent in the following detailed written description.
REFERENCES:
patent: 5161225 (1992-11-01), Abraham et al.
patent: 5247669 (1993-09-01), Abraham et al.
patent: 5287504 (1994-02-01), Carpenter et al.
patent: 5379426 (1995-01-01), Foss et al.
patent: 5602729 (1997-02-01), Krueger et al.
patent: 5664182 (1997-09-01), Niernberg et al.
patent: 5680563 (1997-10-01), Edelman
patent: 5881315 (1999-03-01), Cohen
patent: WO 95/31780 (1995-11-01), None
Johnson et al., “Using Case Based Reasoning to Locate and Match Object Oriented Classes and Libraries,” IBM Technical Disclosure Bulletin, vol. 37, No. 12, pp. 155-160.
Object Management Group, “Joint Object Services Submission: Life Cycle Services Specification,” pp. 1-50, Jul. 2, 1993.
OMG, Joint Object Services Submission, Compound Life Cycle Addendum, OMG TC Document 94.5.6, May 30, 1994.*
Timothy O'Brien, “Ion's Orbix: key low-end alternative in the emerging CORBA-compliant market” Distribute Computing Monitor v9 n7 p3(10), Jul. 1994.*
Michael Kelly, “Multithreading with OS/2 and Borland C+ +”, C Users Journal v
Cink Kimberly Ann
Newcombe Russell Ley
Banankhah Majid A.
Bracewell & Patterson L.L.P.
Caldwell P. G.
International Business Machines - Corporation
Mims Jr. David A.
LandOfFree
Method and system for data filtering within an... 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 system for data filtering within an..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for data filtering within an... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2549573