[Home] [Help]
PACKAGE BODY: APPS.QP_JAVA_ENGINE_SUPPORT_PVT
Source
1 package body QP_JAVA_ENGINE_SUPPORT_PVT as
2 /* $Header: QPXSUPPB.pls 120.0 2005/06/02 01:26:11 appldev noship $ */
3
4 function request_lock(p_lock_name in varchar2, p_lock_mode in number, p_timeout in number, p_release_on_commit in number) return number is
5 pragma autonomous_transaction;
6
7 l_release_on_commit boolean;
8 begin
9 if (p_release_on_commit = 1) then
10 l_release_on_commit := true;
11 else
12 l_release_on_commit := false;
13 end if;
14 return request_lock(p_lock_name, p_lock_mode, p_timeout, l_release_on_commit);
15 end request_lock;
16
17 function request_lock(p_lock_name in varchar2, p_lock_mode in number, p_timeout in number, p_release_on_commit in boolean) return number is
18 pragma autonomous_transaction;
19
20 l_lock_handle varchar2(128);
21 l_status number;
22 begin
23 dbms_lock.allocate_unique(p_lock_name, l_lock_handle);
24 l_status := dbms_lock.request(l_lock_handle, p_lock_mode, p_timeout, p_release_on_commit);
25 return l_status;
26 end request_lock;
27
28 function release_lock(p_lock_name in varchar2) return number is
29
30 l_lock_handle varchar2(128);
31 l_status number;
32 begin
33 dbms_lock.allocate_unique(p_lock_name, l_lock_handle);
34 l_status := dbms_lock.release(l_lock_handle);
35 return l_status;
36 end release_lock;
37
38 end QP_JAVA_ENGINE_SUPPORT_PVT;