IP Library Granted Patent US 7,831,960
Granted Patent B2
US 7,831,960 · App. 11/449,355 · Granted Nov 9, 2010

Configuration tool with multi-level priority semantic

Assignee: Oracle America, Inc.
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,831,960
App. No.
11/449,355
Granted
Nov 9, 2010
Kind
B2
Abstract

A method for configuration of a program with a plurality of configuration variables to operate on a computer system that includes obtaining a plurality of priority semantics for the plurality of configuration variables, wherein the plurality of priority semantics are heterogeneous, assigning a value for each of the plurality of configuration variables based on the plurality of priority semantics, and configuring the program using the value to operate on the computer system.

Claims (61)

1. A method for configuration of a single program with a plurality of configuration variables to operate on a computer system comprising:

identifying a first plurality of configuration variable levels from a configuration variable repository corresponding to the single program,

wherein each of the first plurality of configuration variable levels is associated with a location of a possible value for a first configuration variable of the plurality of configuration variables, and

wherein the first plurality of configuration variable levels defines a first priority semantic for locations of possible values for the first configuration variable;

identifying a second plurality of configuration variable levels from the configuration variable repository,

wherein each of the second plurality of configuration variable levels is associated with a location of a possible value for a second configuration variable of the plurality of configuration variables, and

wherein the second plurality of configuration variable levels defines a second priority semantic for locations of possible values for the second configuration variable, and

wherein the first priority semantic and the second priority semantic are different;

assigning, using a first configuration variable level of the first plurality of configuration variable levels, a first value to the first configuration variable based on the first priority semantic;

assigning, using a second configuration variable level of the second plurality of configuration variable levels, a second value to the second configuration variable based on the second priority semantic; and

configuring the program using the first value and the second value to operate on the computer system.

2. The method of claim 1 , wherein the configuration variable repository comprises only a subset of a plurality of configurable variables in the program.

3. The method of claim 2 , wherein the subset is a plurality of mandatory configuration variables in a program.

4. The method of claim 1 , wherein assigning the first value comprises:

obtaining the first value with a highest priority by using a function and an argument,

wherein the function and the argument is stored in the first configuration level, and

wherein the first configuration level has the highest priority, with a defined value, as defined by the first priority semantic.

5. The method of claim 1 , further comprising:

setting a reconfigure signal for the program; and

halting the program at a safe location based on the reconfigure signal before configuring the program.

6. A computer system comprising:

a processor configured to execute a program using a first configuration variable and a second configuration variable; and

memory configured to store a configuration variable repository corresponding to the single program, the configuration variable repository comprising:

a first data structure for the first configuration variable of the program, the first data structure comprising:

a first element comprising a first argument defining a location of a first value for the first configuration variable; and

a second element comprising a second argument defining a location of a second value for the first configuration variable,

wherein the first data structure defines a first priority semantic for the first argument and the second argument; and

a second data structure for the second configuration variable of the program, the second data structure comprising:

a third element comprising a third argument defining a location of a third value for the second configuration variable; and

a fourth element comprising a fourth argument defining a location of a fourth value for the second configuration variable,

wherein the second data structure defines a second priority semantic for the third argument and the fourth argument,

wherein the first priority semantic and the second priority semantic are different, and

wherein the first priority semantic and the second priority semantic are used to configure the program to operate on the computer system.

7. The computer system of claim 6 , wherein the first data structure further comprises:

a fifth element comprising a variable name of the first configuration variable.

8. The computer system of claim 7 , wherein the variable name is a natural name.

9. The computer system of claim 6 , wherein the data structure further comprises:

a fifth element comprising a variable state of the first configuration variable.

10. The computer system of claim 9 , wherein the variable state specifies whether the configuration is mandatory.

11. The computer system of claim 9 , wherein the variable state specifies whether the first configuration variable is set.

12. The computer system of claim 6 , wherein the first data structure further comprises:

a fifth element comprising a variable value of the first configuration variable.

13. The computer system of claim 12 , wherein the variable value comprises a reference to a current value of the first configuration variable.

14. The computer system of claim 6 , wherein the first argument identifies a location of the first value.

15. The computer system of claim 14 , wherein the first element comprises a function for obtaining the first value from the first location.

16. The computer system of claim 6 , wherein the first data structure is a struct.

17. A computer readable storage medium having computer readable program code embodied therein for causing a computer system to:

identify a first plurality of configuration variable levels from a configuration variable repository corresponding to a single program,

wherein each of the first plurality of configuration variable levels is associated with a location of a possible value for a first configuration variable of the plurality of configuration variables, and

wherein the first plurality of configuration variable levels defines a first priority semantic for locations of possible values for the first configuration variable;

identify a second plurality of configuration variable levels from the configuration variable repository,

wherein each of the second plurality of configuration variable levels is associated with a location of a possible value for a second configuration variable of the plurality of configuration variables, and

wherein the second plurality of configuration variable levels defines a second priority semantic for locations of possible values for the second configuration variable, and

wherein the first priority semantic and the second priority semantic are different;

assign, using a first configuration variable level of the first plurality of configuration variable levels, a first value to the first configuration variable based on the first priority semantic;

assign, using a second configuration variable level of the second plurality of configuration variable levels, a second value to the second configuration variable based on the second priority semantic; and

configure the program using the first value and the second value to operate on the computer system.

18. The computer readable storage medium of claim 17 , wherein assigning the first value comprises:

obtaining the first value with a highest priority by using a function and an argument,

wherein the function and the argument is stored in the first configuration level, and

wherein the configuration level has the highest priority as defined by the first priority semantic.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037306/0556 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2006
From: VAZQUEZ, PEDRO; LOPEZ, ALEJANDRO; MARTIKIAN, PABLO
To: SUN MICROSYSTEMS, INC.
Reel/Frame 017988/0644 →
Continuity (1)
Related Publication 20070288895A1 · Dec 13, 2007