1 PACKAGE IEO_SVR_UTIL_PVT AUTHID CURRENT_USER AS
2 /* $Header: IEOSVUVS.pls 115.21 2004/04/27 00:56:06 edwang ship $ */
3
4
5 -- Sub-Program Unit Declarations
6
7 PROCEDURE GET_SVR_TYPE_LOAD_INFO
8 (P_SERVER_TYPE_UUID IN VARCHAR2
9 );
10
11 PROCEDURE GET_ALL_SUBGROUPS
12 (P_GROUP_ID IN NUMBER
13 ,X_GROUP_ID_LIST OUT NOCOPY SYSTEM.IEO_SVR_ID_ARRAY
14 );
15
16 PROCEDURE LOCATE_ALL_GROUPS
17 (P_SERVER_ID_LOOKING IN NUMBER
18 ,X_GROUP_ID_LIST OUT NOCOPY SYSTEM.IEO_SVR_ID_ARRAY
19 );
20
21 PROCEDURE GET_ALL_SERVERS_IN_GROUP
22 (P_GROUP_ID IN NUMBER
23 ,P_SERVER_TYPE_UUID IN VARCHAR2
24 ,P_WIRE_PROTOCOL IN VARCHAR2
25 ,P_COMP_DEF_NAME IN VARCHAR2
26 ,P_COMP_DEF_VERSION IN NUMBER
27 ,P_COMP_DEF_IMPL IN VARCHAR2
28 ,P_COMP_NAME IN VARCHAR2
29 ,X_SVR_INFO_LIST OUT NOCOPY SYSTEM.IEO_SVR_INFO_ARRAY
30 );
31
32 PROCEDURE GET_CONNECT_INFO_FOR_ALL_SVRS
33 (P_SERVER_ID_LOOKING IN NUMBER
34 ,P_SERVER_TYPE_UUID IN VARCHAR2
35 ,P_WIRE_PROTOCOL IN VARCHAR2
36 ,P_COMP_DEF_NAME IN VARCHAR2
37 ,P_COMP_DEF_VERSION IN NUMBER
38 ,P_COMP_DEF_IMPL IN VARCHAR2
39 ,P_COMP_NAME IN VARCHAR2
40 ,X_DB_TIME OUT NOCOPY DATE
41 ,X_SVR_COUNT OUT NOCOPY NUMBER
42 ,X_SVR_INFO_LIST OUT NOCOPY SYSTEM.IEO_SVR_INFO_ARRAY
43 );
44
45 PROCEDURE GET_ALL_SVRS_IN_GROUP_NST
46 (P_GROUP_ID IN NUMBER
47 ,P_SERVER_TYPE_UUID IN VARCHAR2
48 ,P_WIRE_PROTOCOL IN VARCHAR2
49 ,P_COMP_DEF_NAME IN VARCHAR2
50 ,P_COMP_DEF_VERSION IN NUMBER
51 ,P_COMP_DEF_IMPL IN VARCHAR2
52 ,P_COMP_NAME IN VARCHAR2
53 ,X_SVR_INFO_LIST OUT NOCOPY SYSTEM.IEO_SVR_INFO_NST
54 );
55
56 PROCEDURE GET_CONN_INFO_FOR_ALL_SVRS_NST
57 (P_SERVER_ID_LOOKING IN NUMBER
58 ,P_SERVER_TYPE_UUID IN VARCHAR2
59 ,P_WIRE_PROTOCOL IN VARCHAR2
60 ,P_COMP_DEF_NAME IN VARCHAR2
61 ,P_COMP_DEF_VERSION IN NUMBER
62 ,P_COMP_DEF_IMPL IN VARCHAR2
63 ,P_COMP_NAME IN VARCHAR2
64 ,X_DB_TIME OUT NOCOPY DATE
65 ,X_SVR_COUNT OUT NOCOPY NUMBER
66 ,X_SVR_INFO_LIST OUT NOCOPY SYSTEM.IEO_SVR_INFO_NST
67 );
68
69 /* Updates real-time server information. */
70 PROCEDURE UPDATE_RT_INFO
71 (P_SERVER_ID IN NUMBER
72 ,P_STATUS IN NUMBER
73 ,P_MAJOR_LOAD_FACTOR IN NUMBER
74 ,P_MINOR_LOAD_FACTOR IN NUMBER
75 ,P_EXTRA IN VARCHAR2
76 );
77
78
79 /* Updates real-time server information when server load is not to be specified. */
80 PROCEDURE UPDATE_RT_INFO_NO_LOAD
81 (P_SERVER_ID IN NUMBER
82 ,P_STATUS IN NUMBER
83 ,P_EXTRA IN VARCHAR2
84 );
85
86 /* Updates real-time server information with node id. */
87 PROCEDURE UPDATE_RT_INFO_V2
88 (P_SERVER_ID IN NUMBER
89 ,P_STATUS IN NUMBER
90 ,P_NODE_ID IN NUMBER
91 ,P_MAJOR_LOAD_FACTOR IN NUMBER
92 ,P_MINOR_LOAD_FACTOR IN NUMBER
93 ,P_EXTRA IN VARCHAR2
94 );
95
96
97 /* Updates real-time server information with node id when server load is not to be specified. */
98 PROCEDURE UPDATE_RT_INFO_NO_LOAD_V2
99 (P_SERVER_ID IN NUMBER
100 ,P_STATUS IN NUMBER
101 ,P_NODE_ID IN NUMBER
102 ,P_EXTRA IN VARCHAR2
103 );
104
105
106
107 /* Locates a server of a particular type, given a group. */
108 PROCEDURE LOCATE_LEAST_LOADED_IN_GROUP
109 (P_GROUP_ID IN NUMBER
110 ,P_SERVER_TYPE_UUID IN VARCHAR2
111 ,P_EXCLUDE_SERVER_ID IN NUMBER
112 ,X_SERVER_ID OUT NOCOPY NUMBER
113 ,P_TIMEOUT_TOLERANCE IN NUMBER DEFAULT -1
114 );
115
116
117 /* Locates a server of a particular type, given a group. */
118 PROCEDURE LOCATE_BY_MINOR_LOAD
119 (P_GROUP_ID IN NUMBER
120 ,P_SERVER_TYPE_UUID IN VARCHAR2
121 ,P_EXCLUDE_SERVER_ID IN NUMBER
122 ,X_SERVER_ID OUT NOCOPY NUMBER
123 ,P_TIMEOUT_TOLERANCE IN NUMBER DEFAULT -1
124 );
125
126
127
128 /* Locates a server of a particular type, given a group. */
129 PROCEDURE LOCATE_BY_MAJOR_LOAD
130 (P_GROUP_ID IN NUMBER
131 ,P_SERVER_TYPE_UUID IN VARCHAR2
132 ,P_EXCLUDE_SERVER_ID IN NUMBER
133 ,X_SERVER_ID OUT NOCOPY NUMBER
134 ,P_TIMEOUT_TOLERANCE IN NUMBER DEFAULT -1
135 );
136
137
138
139 /* Locates a server of a particular type, given another server. */
140 PROCEDURE LOCATE_LEAST_LOADED_FOR_SVR
141 (P_SERVER_ID_LOOKING IN NUMBER
142 ,P_SERVER_TYPE_UUID IN VARCHAR2
143 ,X_SERVER_ID_FOUND OUT NOCOPY NUMBER
144 ,P_TIMEOUT_TOLERANCE IN NUMBER DEFAULT -1
145 );
146
147
148 /* Locates a server of a particular type, given another server, and obtains */
149 /* the connection information, based on some default rules. */
150 PROCEDURE LOCATE_LLS_AND_INFO
151 (P_SERVER_ID IN NUMBER
152 ,P_SERVER_TYPE_UUID IN VARCHAR2
153 ,P_WIRE_PROTOCOL IN VARCHAR2
154 ,P_COMP_DEF_NAME IN VARCHAR2
155 ,P_COMP_DEF_VERSION IN NUMBER
156 ,P_COMP_DEF_IMPL IN VARCHAR2
157 ,P_COMP_NAME IN VARCHAR2
158 ,X_SERVER_ID_FOUND OUT NOCOPY NUMBER
159 ,X_USER_ADDRESS OUT NOCOPY VARCHAR2
160 ,X_DNS_NAME OUT NOCOPY VARCHAR2
161 ,X_IP_ADDRESS OUT NOCOPY VARCHAR2
162 ,X_PORT OUT NOCOPY NUMBER
163 ,X_COMP_NAME OUT NOCOPY VARCHAR2
164 ,P_TIMEOUT_TOLERANCE IN NUMBER DEFAULT -1
165 );
166
167
168 /* Locates a server of a particular type, given another server, and obtains */
169 /* the connection information, based on some default rules. */
170 PROCEDURE LOCATE_LLS_AND_INFO_BY_GROUP
171 (P_SERVER_GROUP_ID IN NUMBER
172 ,P_SERVER_TYPE_UUID IN VARCHAR2
173 ,P_WIRE_PROTOCOL IN VARCHAR2
174 ,P_COMP_DEF_NAME IN VARCHAR2
175 ,P_COMP_DEF_VERSION IN NUMBER
176 ,P_COMP_DEF_IMPL IN VARCHAR2
177 ,P_COMP_NAME IN VARCHAR2
178 ,X_SERVER_ID_FOUND OUT NOCOPY NUMBER
179 ,X_USER_ADDRESS OUT NOCOPY VARCHAR2
180 ,X_DNS_NAME OUT NOCOPY VARCHAR2
181 ,X_IP_ADDRESS OUT NOCOPY VARCHAR2
182 ,X_PORT OUT NOCOPY NUMBER
183 ,X_COMP_NAME OUT NOCOPY VARCHAR2
184 ,P_TIMEOUT_TOLERANCE IN NUMBER DEFAULT -1
185 );
186
187
188
189
190 PROCEDURE GET_SVR_CONNECT_INFO
191 (
192 p_api_version IN NUMBER,
193 p_init_msg_list IN VARCHAR2 ,
194 p_commit IN VARCHAR2,
195 p_server_id IN NUMBER,
196 p_server_type_id IN NUMBER,
197 p_comp_def_name IN VARCHAR2,
198 p_comp_def_version IN NUMBER,
199 x_return_status OUT NOCOPY VARCHAR2 ,
200 x_msg_count OUT NOCOPY NUMBER ,
201 x_msg_data OUT NOCOPY VARCHAR2,
202 x_comp_id OUT NOCOPY NUMBER,
203 x_comp_name OUT NOCOPY VARCHAR2,
204 x_wire_protocol OUT NOCOPY VARCHAR2,
205 x_port OUT NOCOPY NUMBER,
206 x_ip OUT NOCOPY VARCHAR2,
207 x_base_url OUT NOCOPY VARCHAR2,
208 x_url OUT NOCOPY VARCHAR2
209
210 );
211
212
213 PROCEDURE IS_SERVER_UP
214 (
215 p_api_version IN NUMBER,
216 p_init_msg_list IN VARCHAR2 ,
217 p_commit IN VARCHAR2,
218 p_server_id IN NUMBER,
219 p_server_type_id IN NUMBER,
220 x_return_status OUT NOCOPY VARCHAR2 ,
221 x_msg_count OUT NOCOPY NUMBER ,
222 x_msg_data OUT NOCOPY VARCHAR2,
223 x_is_server_up OUT NOCOPY VARCHAR2,
224 x_server_status OUT NOCOPY NUMBER,
225 x_server_name OUT NOCOPY VARCHAR2,
226 x_server_group_name OUT NOCOPY VARCHAR2
227 );
228
229 -- Removes all the agent bindings to a particular server
230 -- This should be called by the servers during startup. To clear any
231 -- leftover bindings from a previous server crash.
232 PROCEDURE CLEAR_SERVER_BINDINGS
233 (P_SERVER_ID IN NUMBER
234 );
235
236
237 END IEO_SVR_UTIL_PVT;