168: else
169: l_lock_name := l_entity;
170: end if;
171:
172: dbms_lock.allocate_unique(lockname => l_lock_name,
173: lockhandle => l_lock_handle,
174: expiration_secs => g_lock_lifetime);
175:
176: l_lock_status := dbms_lock.request(lockhandle => l_lock_handle,
172: dbms_lock.allocate_unique(lockname => l_lock_name,
173: lockhandle => l_lock_handle,
174: expiration_secs => g_lock_lifetime);
175:
176: l_lock_status := dbms_lock.request(lockhandle => l_lock_handle,
177: lockmode => dbms_lock.x_mode,
178: timeout => g_lock_waittime,
179: release_on_commit => TRUE);
180:
173: lockhandle => l_lock_handle,
174: expiration_secs => g_lock_lifetime);
175:
176: l_lock_status := dbms_lock.request(lockhandle => l_lock_handle,
177: lockmode => dbms_lock.x_mode,
178: timeout => g_lock_waittime,
179: release_on_commit => TRUE);
180:
181: if (l_lock_status <> 0) then
180:
181: if (l_lock_status <> 0) then
182: raise_application_error(ERROR_UNABLE_TO_LOCK,
183: 'Unable to lock entity : ' || l_entity ||
184: '. dbms_lock.request(' || l_lock_name ||
185: ') returned : ' || l_lock_status);
186: end if;
187: end lock_entity;
188: