IP Library Granted Patent US 7,493,601
Granted Patent B2
US 7,493,601 · App. 10/993,743 · Granted Feb 17, 2009

System and method for providing access to programmer created JAVA classes

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,493,601
App. No.
10/993,743
Granted
Feb 17, 2009
Kind
B2
Abstract

A system and method implementable in a JAVA® application for providing C++ language friend-style access that grants JAVA® objects access to methods of another JAVA® object. The method comprises steps of: providing a method in the implementing JAVA object for determining the name of a JAVA object class that has called a method within the implementing JAVA object; comparing the JAVA object class name against a list of object names that have been granted access rights to the method in the implementing JAVA object; and, in response to the comparing, one of: enabling execution of the method of the implementing JAVA object upon determination that the calling object class is a member of the list, or, preventing execution of the method upon determination that the calling object is not a member of the list.

Claims (32)

1. A computer implemented method for granting one or more first object-oriented programming language classes access to a method of an implementing class that is created without granting unnecessary access to other methods within that implementing class, said method comprising the steps of:

providing an array comprising a list of names of first classes that have been granted access rights to said method in said implementing class;

providing a method in said implementing class for determining the name of a first class that has called a method within the implementing class, said method creating an exception object prior to accessing said method within the implementing class to perform a stack traceback to determine the name of the class that has called a method within the implementing first class;

comparing said class name against said list of first classes that have been granted access rights to said method in said implementing class; and, one of:

executing code of said method of the implementing class upon determination that said calling class is a member of said list, or, preventing execution of said code in said method upon determination that said calling class is not a member of the list.

2. The computer implemented method of claim 1 , further comprising the steps of:

determining the name of a method in one or more first classes that have called a method within the implementing class;

comparing said method name against a list of method names that have been granted access rights to said method in said implementing class; and, one of:

executing said method of the implementing class upon determination that said calling method is a member of said list, or, preventing execution of said method upon determination that said calling method is not a member of the list.

3. The computer implemented method of claim 2 , further comprising the step of filling an array comprising a list of names of methods of first classes that have been granted access fights to said method in said implementing class.

4. An access system implementable in an object-oriented programming application executing on a computing device for granting objects access to methods of another object comprising:

computer implemented code means executable by a computing device for providing an array comprising a list of names of friend classes that have been granted access rights to said method in said implementing object;

computer implemented code means executable by a computing device for executing a method in an implementing object for determining the name of an object class that has called a method within the implementing object, said computer implemented code means creating an exception object prior to accessing said method within the implementing object to perform a stack traceback to determine the name of calling object class;

computer implemented code means executable by a computing device for comparing said object class name against said list of friend class objects that have been granted access rights to said method in said implementing object; and,

computer implemented code means executable by a computing device responsive to said comparing means for enabling execution of said method of the implementing object upon determination that said calling object class is a member of said list, or, preventing execution of said method upon determination that said calling object class is not a member of the list.

5. The access system implementable in an object-oriented programming application as claimed in claim 4 , wherein said utility friend class further comprises means for determining the name of a method in a calling object that has called a method within the implementing class, said comparing means further comparing said method name against a list of method names that have been granted access rights to said method in said implementing object; and, one of: executing said method of the implementing object upon determination that said calling method is a member of said list, or, preventing execution of said method upon determination that said calling method is not a member of the list.

6. The access system implementable in an object-oriented programming application as claimed in claim 5 , further comprising means for filling an array comprising a list of names of methods included in objects that have been granted access rights to said method in said implementing object.

7. A method implementable in an object-oriented programming application for providing C++ language friend-style access that grants objects access to methods of another object comprising:

providing an array comprising a list of object names associated with classes that have been granted access rights to said method in said implementing object;

providing a method in said implementing object for determining the name of an object class that has called a method within the implementing object, said method creating an exception object prior to accessing said method within the implementing object to perform a stack traceback to determine the name of the class that has called a method within the implementing object;

comparing said object class name against said list of object names that have been granted access rights to said method in said implementing object; and, in response to said comparing, one of:

enabling execution of said method of the implementing object upon determination that said calling object class is a member of said list or, preventing execution of said method upon determination that said calling object is not a member of the list.

8. The method as claimed in claim 7 , further comprising the steps of:

determining the name of a method in an object that has called a method within the implementing object;

comparing said method name against a list of method names that have been granted access rights to said method in said implementing object; and, one of:

executing said method of the implementing class upon determination that said calling method is a member of said list, or, preventing execution of said method upon determination that said calling method is not a member of the list.

9. The method as claimed in claim 8 , further comprising means for filling an array comprising a list of methods included in objects that have been granted access rights to said method in said implementing object.

10. A program storage device readable by a machine, tangibly embodying a program of instructions executable by the machine to perform method steps for granting object-oriented programming objects access to methods of another object, said method steps comprising:

providing an array comprising a list of objects that have been granted access rights to said method in said implementing object;

providing a method in said implementing object for determining the name of a object class that has called a method within the implementing object, said method creating an exception object prior to accessing said method within the implementing object to perform a stack traceback to determine the name of the object class that has called a method within the implementing object;

comparing said object class name against said list of objects that have been granted access rights to said method in said implementing object; and, in response to said comparing, one of:

enabling execution of said method of the implementing object upon determination that said calling object is not a member of said list or, preventing execution of said method upon determination that said calling object is not a member of the list.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: AIRBNB, INC.
Reel/Frame 056427/0193 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 19, 2005
From: GIMNESS, JOSEPH A.; PEIPELMAN, JASON L.; JENNAS, PAUL A., II
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015607/0731 →