26:
27: l_StartFlag boolean := FALSE;
28:
29: BEGIN
30: IF( FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
31: FND_LOG.STRING (FND_LOG.LEVEL_PROCEDURE, 'XDP_RECOVERY.START_WATCHDOG_PROCESS', 'BEGIN:');
32: END IF;
33:
34:
27: l_StartFlag boolean := FALSE;
28:
29: BEGIN
30: IF( FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
31: FND_LOG.STRING (FND_LOG.LEVEL_PROCEDURE, 'XDP_RECOVERY.START_WATCHDOG_PROCESS', 'BEGIN:');
32: END IF;
33:
34:
35: -- So that Dequeuer blocks as per parameter else it immediately starts
63: l_GenCountFuture := 0;
64:
65: if v_AllAdapters.adapter_status = XDP_ADAPTER.pv_statusNotAvailable then
66:
67: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
68: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
69: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
70: 'Adapter not available: '||v_AllAdapters.CHANNEL_NAME);
71: END IF;
64:
65: if v_AllAdapters.adapter_status = XDP_ADAPTER.pv_statusNotAvailable then
66:
67: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
68: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
69: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
70: 'Adapter not available: '||v_AllAdapters.CHANNEL_NAME);
71: END IF;
72:
81: -- p_AdapterType => v_AllAdapters.ADAPTER_TYPE) then
82:
83: if l_GenCountActive > 0 then
84:
85: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
86: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
87: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
88: 'Adapter NOW available: '||v_AllAdapters.CHANNEL_NAME);
89: END IF;
82:
83: if l_GenCountActive > 0 then
84:
85: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
86: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
87: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
88: 'Adapter NOW available: '||v_AllAdapters.CHANNEL_NAME);
89: END IF;
90:
109: -- p_AdapterType => v_AllAdapters.ADAPTER_TYPE) then
110:
111: if l_GenCountActive = 0 then
112:
113: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
114: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
115: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
116: 'Adapter NO LONGER available: '||v_AllAdapters.CHANNEL_NAME);
117: END IF;
110:
111: if l_GenCountActive = 0 then
112:
113: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
114: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
115: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
116: 'Adapter NO LONGER available: '||v_AllAdapters.CHANNEL_NAME);
117: END IF;
118:
152:
153: XDP_ADAPTER_CORE.NotifyAdapterTerminateFailure
154: (v_AllAdapters.adapter_display_name);
155:
156: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
157: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
158: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
159: 'Adapter was running, termination failed with error: '||
160: l_RetCode||', message: '||l_ErrBuf);
153: XDP_ADAPTER_CORE.NotifyAdapterTerminateFailure
154: (v_AllAdapters.adapter_display_name);
155:
156: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
157: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
158: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
159: 'Adapter was running, termination failed with error: '||
160: l_RetCode||', message: '||l_ErrBuf);
161: END IF;
160: l_RetCode||', message: '||l_ErrBuf);
161: END IF;
162: else
163: if l_RetCode = 0 then
164: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
165: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
166: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
167: 'Adapter was running, terminated successfully');
168: END IF;
161: END IF;
162: else
163: if l_RetCode = 0 then
164: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
165: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
166: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
167: 'Adapter was running, terminated successfully');
168: END IF;
169: END IF;
251: END IF;
252:
253: if (l_StartFlag) then
254:
255: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
256: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
257: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
258: 'Automatic adapter required to be started: '||v_GetAutoAdapters.CHANNEL_NAME);
259: END IF;
252:
253: if (l_StartFlag) then
254:
255: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
256: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
257: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
258: 'Automatic adapter required to be started: '||v_GetAutoAdapters.CHANNEL_NAME);
259: END IF;
260:
272:
273: if (l_RetCode not in (0,
274: XDP_ADAPTER.pv_retAdapterInvalidState,
275: XDP_ADAPTER.pv_retAdapterCannotLock)) then
276: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
277: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
278: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
279: 'Adapter start failed with error: '||l_RetCode||
280: ', message: '||l_ErrBuf);
273: if (l_RetCode not in (0,
274: XDP_ADAPTER.pv_retAdapterInvalidState,
275: XDP_ADAPTER.pv_retAdapterCannotLock)) then
276: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
277: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
278: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
279: 'Adapter start failed with error: '||l_RetCode||
280: ', message: '||l_ErrBuf);
281: END IF;
279: 'Adapter start failed with error: '||l_RetCode||
280: ', message: '||l_ErrBuf);
281: END IF;
282: else
283: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
284: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
285: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
286: 'Adapter started successfully');
287: END IF;
280: ', message: '||l_ErrBuf);
281: END IF;
282: else
283: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
284: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
285: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
286: 'Adapter started successfully');
287: END IF;
288: END IF;
303: if (v_DWIAdapters.STARTUP_MODE = XDP_ADAPTER.pv_startOnDemand) then
304:
305: -- Stop IDLE SOD adapters
306:
307: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
308: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
309: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
310: 'Adapter idle, required to be stopped: '||v_DWIAdapters.CHANNEL_NAME);
311: END IF;
304:
305: -- Stop IDLE SOD adapters
306:
307: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
308: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
309: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
310: 'Adapter idle, required to be stopped: '||v_DWIAdapters.CHANNEL_NAME);
311: END IF;
312:
324: if (l_RetCode not in (0,
325: XDP_ADAPTER.pv_retAdapterInvalidState,
326: XDP_ADAPTER.pv_retAdapterCannotLockReqSub,
327: XDP_ADAPTER.pv_retAdapterOpFailed)) then
328: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
329: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
330: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
331: 'Adapter stop failed with error: '||l_RetCode||
332: ', message: '||l_ErrBuf);
325: XDP_ADAPTER.pv_retAdapterInvalidState,
326: XDP_ADAPTER.pv_retAdapterCannotLockReqSub,
327: XDP_ADAPTER.pv_retAdapterOpFailed)) then
328: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
329: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
330: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
331: 'Adapter stop failed with error: '||l_RetCode||
332: ', message: '||l_ErrBuf);
333: END IF;
337: -- We donot need to stop adapter as it needs to be used
338: -- as someother process (FA) has locked it for use
339: rollback;
340: else
341: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
342: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
343: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
344: 'Adapter stopped successfully');
345: END IF;
338: -- as someother process (FA) has locked it for use
339: rollback;
340: else
341: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
342: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
343: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
344: 'Adapter stopped successfully');
345: END IF;
346: END IF;
346: END IF;
347: else
348: -- Disconnect IDLE COD adapters
349:
350: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
351: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
352: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
353: 'Adapter idle, required to be disconnected: '||v_DWIAdapters.CHANNEL_NAME);
354: END IF;
347: else
348: -- Disconnect IDLE COD adapters
349:
350: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
351: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION,
352: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
353: 'Adapter idle, required to be disconnected: '||v_DWIAdapters.CHANNEL_NAME);
354: END IF;
355:
367: if (l_RetCode not in (0,
368: XDP_ADAPTER.pv_retAdapterInvalidState,
369: XDP_ADAPTER.pv_retAdapterCannotLock,
370: XDP_ADAPTER.pv_retAdapterOpFailed)) then
371: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
372: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
373: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
374: 'Adapter disconnect failed with error: '||l_RetCode||
375: ', message: '||l_ErrBuf);
368: XDP_ADAPTER.pv_retAdapterInvalidState,
369: XDP_ADAPTER.pv_retAdapterCannotLock,
370: XDP_ADAPTER.pv_retAdapterOpFailed)) then
371: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
372: FND_LOG.STRING (FND_LOG.LEVEL_ERROR,
373: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
374: 'Adapter disconnect failed with error: '||l_RetCode||
375: ', message: '||l_ErrBuf);
376: END IF;
374: 'Adapter disconnect failed with error: '||l_RetCode||
375: ', message: '||l_ErrBuf);
376: END IF;
377: else
378: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
379: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
380: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
381: 'Adapter disconnected successfully');
382: END IF;
375: ', message: '||l_ErrBuf);
376: END IF;
377: else
378: IF( FND_LOG.LEVEL_STATEMENT >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
379: FND_LOG.STRING (FND_LOG.LEVEL_STATEMENT,
380: 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
381: 'Adapter disconnected successfully');
382: END IF;
383: end if;
393: END LOOP; -- Controller loop
394:
395: if l_ControllersNotRunning <> 'NONE' then
396:
397: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
398: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION, 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
399: 'Controllers NOT running: '||l_ControllersNotRunning);
400: END IF;
401:
394:
395: if l_ControllersNotRunning <> 'NONE' then
396:
397: IF( FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
398: FND_LOG.STRING (FND_LOG.LEVEL_EXCEPTION, 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
399: 'Controllers NOT running: '||l_ControllersNotRunning);
400: END IF;
401:
402: -- Send notification with messages text as
407: end if;
408:
409: EXCEPTION
410: WHEN OTHERS THEN
411: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
412: FND_LOG.STRING (FND_LOG.LEVEL_ERROR, 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
413: 'Unhandled error, SQLCODE: '||SQLCODE);
414: END IF;
415: commit;
408:
409: EXCEPTION
410: WHEN OTHERS THEN
411: IF( FND_LOG.LEVEL_ERROR >= FND_LOG.G_CURRENT_RUNTIME_LEVEL ) THEN -- Fix: 4256771, dbhagat, 28 Apr 05
412: FND_LOG.STRING (FND_LOG.LEVEL_ERROR, 'XDP_RECOVERY.START_WATCHDOG_PROCESS',
413: 'Unhandled error, SQLCODE: '||SQLCODE);
414: END IF;
415: commit;
416: