Public Methods | |
SaMethodDescription (String key) | |
Construct a method description for the given key. More... | |
boolean | valid () |
Indicates whether the description is valid. More... | |
String | className () |
The name of the class to which the function belongs. More... | |
String | description () |
The function description. More... | |
int | isStatic () |
Indicates whether the function is static. More... | |
int | nArgs () |
The number of arguments of the function. More... | |
String | name () |
The name of the function. More... | |
String | returnType () |
The return type of the function. More... | |
String[] | argNames () |
The names of the function arguments. More... | |
String[] | argTypes () |
The types of the function arguments. More... | |
void | dump () |
Dumps the description on OutputStreamArea. More... |
|
Construct a method description for the given key.
00025 { 00026 boolean foundReturn = false; // may not be present in the registry 00027 int i = key.indexOf("::"); 00028 if (i == -1) 00029 return; 00030 _className = key.substring(0, i); 00031 _methodKey = key.substring(i+2); 00032 String cKey = "/sasystem/classes/" + _className + "/methods/" + _methodKey; 00033 HxMediatorPeer _mediator = new HxMediatorPeer(); 00034 String[] names = _mediator.getValueNames(cKey); 00035 String[] data = _mediator.getValueData(cKey); 00036 _nArgs = 0; 00037 for (i=0 ; i<names.length ; i++) { 00038 if (names[i].compareTo("description") == 0) 00039 _description = data[i]; 00040 if (names[i].compareTo("isStatic") == 0) 00041 _isStatic = java.lang.Integer.parseInt(data[i]); 00042 if (names[i].compareTo("nArgs") == 0) 00043 _nArgs = java.lang.Integer.parseInt(data[i]); 00044 if (names[i].compareTo("name") == 0) 00045 _name = data[i]; 00046 if (names[i].compareTo("returnType") == 0) { 00047 _returnType = data[i]; 00048 foundReturn = true; 00049 } 00050 } 00051 if (! foundReturn) { 00052 // _returnType = new String("void"); 00053 _returnType = _name; // assume it is a constructor 00054 } 00055 _argNames = new String[_nArgs]; 00056 for (i=0 ; i<_nArgs ; i++) 00057 _argNames[i] = new String("argument" + java.lang.String.valueOf(i)); 00058 _argTypes = new String[_nArgs]; 00059 for (i=0 ; i<names.length ; i++) { 00060 int j; 00061 for (j=0 ; j<_nArgs ; j++) { 00062 if (names[i].compareTo("name" + j) == 0) 00063 _argNames[j] = data[i]; 00064 } 00065 for (j=0 ; j<_nArgs ; j++) { 00066 if (names[i].compareTo("type" + j) == 0) 00067 _argTypes[j] = data[i]; 00068 } 00069 } 00070 _valid = true; 00071 } |
|
Indicates whether the description is valid.
00077 { 00078 return _valid; 00079 } |
|
The name of the class to which the function belongs.
00085 { 00086 return _className; 00087 } |
|
The function description.
00093 { 00094 return _description; 00095 } |
|
Indicates whether the function is static.
00101 { 00102 return _isStatic; 00103 } |
|
The number of arguments of the function.
00109 { 00110 return _nArgs; 00111 } |
|
The name of the function.
00117 { 00118 return _name; 00119 } |
|
The return type of the function.
00125 { 00126 return _returnType; 00127 } |
|
The names of the function arguments.
00133 { 00134 return _argNames; 00135 } |
|
The types of the function arguments.
00141 { 00142 return _argTypes; 00143 } |
|
Dumps the description on OutputStreamArea.
00149 { 00150 OutputStreamArea.println("_description: " + _description); 00151 OutputStreamArea.println("_isStatic: " + _isStatic); 00152 OutputStreamArea.println("_nArgs: " + _nArgs); 00153 OutputStreamArea.println("_name: " + _name); 00154 OutputStreamArea.println("_returnType: " + _returnType); 00155 int i; 00156 for (i=0 ; i<_argNames.length ; i++) 00157 OutputStreamArea.println("_arg" + i + ": " + _argTypes[i] + " " + _argNames[i]); 00158 } |