24:
25: begin
26:
27: if name is null or value is null then
28: raise_application_error(BISM_ERRORCODES.INVALID_ARGUMENTS,'Null value specified');
29: end if;
30:
31: -- lookuphelper walks through the path checking privileges all the way down
32: -- the user only needs LIST access on the all but last folders making up
52: -- check for exceptions and map them as being related to the source object
53: -- so that the caller can distringuish
54:
55: when object_not_found then
56: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
57: when no_privileges then
58: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
59: when insufficient_provileges then
60: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
54:
55: when object_not_found then
56: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
57: when no_privileges then
58: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
59: when insufficient_provileges then
60: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
61: when folder_not_found then
62: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
56: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
57: when no_privileges then
58: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
59: when insufficient_provileges then
60: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
61: when folder_not_found then
62: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
63: when others then
64: raise;
58: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
59: when insufficient_provileges then
60: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
61: when folder_not_found then
62: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
63: when others then
64: raise;
65: end;
66:
84: -- check for exceptions and map them as being related to the target object
85: -- so that the caller can distringuish
86:
87: when object_not_found then
88: raise_application_error(BISM_ERRORCODES.TGT_OBJECT_NOT_FOUND,'Target object not found');
89: when no_privileges then
90: raise_application_error(BISM_ERRORCODES.NO_PRIV_TGT_FOLDER,'No privileges for target folder');
91: when insufficient_provileges then
92: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_TGT_FOLDER,'Insufficient privileges for target folder');
86:
87: when object_not_found then
88: raise_application_error(BISM_ERRORCODES.TGT_OBJECT_NOT_FOUND,'Target object not found');
89: when no_privileges then
90: raise_application_error(BISM_ERRORCODES.NO_PRIV_TGT_FOLDER,'No privileges for target folder');
91: when insufficient_provileges then
92: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_TGT_FOLDER,'Insufficient privileges for target folder');
93: when folder_not_found then
94: raise_application_error(BISM_ERRORCODES.TGT_FOLDER_NOT_FOUND,'Target folder not found');
88: raise_application_error(BISM_ERRORCODES.TGT_OBJECT_NOT_FOUND,'Target object not found');
89: when no_privileges then
90: raise_application_error(BISM_ERRORCODES.NO_PRIV_TGT_FOLDER,'No privileges for target folder');
91: when insufficient_provileges then
92: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_TGT_FOLDER,'Insufficient privileges for target folder');
93: when folder_not_found then
94: raise_application_error(BISM_ERRORCODES.TGT_FOLDER_NOT_FOUND,'Target folder not found');
95: when others then
96: raise;
90: raise_application_error(BISM_ERRORCODES.NO_PRIV_TGT_FOLDER,'No privileges for target folder');
91: when insufficient_provileges then
92: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_TGT_FOLDER,'Insufficient privileges for target folder');
93: when folder_not_found then
94: raise_application_error(BISM_ERRORCODES.TGT_FOLDER_NOT_FOUND,'Target folder not found');
95: when others then
96: raise;
97: end;
98:
146: -- check for exceptions and map them as being related to the source object
147: -- so that the caller can distringuish
148: exception
149: when object_not_found then
150: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
151: when no_privileges then
152: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
153: when insufficient_provileges then
154: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
148: exception
149: when object_not_found then
150: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
151: when no_privileges then
152: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
153: when insufficient_provileges then
154: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
155: when folder_not_found then
156: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
150: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
151: when no_privileges then
152: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
153: when insufficient_provileges then
154: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
155: when folder_not_found then
156: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
157: when others then
158: raise;
152: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
153: when insufficient_provileges then
154: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
155: when folder_not_found then
156: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
157: when others then
158: raise;
159: end;
160:
173: end if;
174:
175: rows_deleted := SQL%ROWCOUNT;
176: if rows_deleted = 0 then
177: raise_application_error(BISM_ERRORCODES.ASSOCIATION_NOT_FOUND, 'Association not found');
178: end if;
179: -- if there is any exceptions, let it bubble up
180:
181: end;
216: -- check for exceptions and map them as being related to the source object
217: -- so that the caller can distringuish
218: exception
219: when object_not_found then
220: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
221: when no_privileges then
222: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
223: when insufficient_provileges then
224: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
218: exception
219: when object_not_found then
220: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
221: when no_privileges then
222: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
223: when insufficient_provileges then
224: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
225: when folder_not_found then
226: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
220: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
221: when no_privileges then
222: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
223: when insufficient_provileges then
224: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
225: when folder_not_found then
226: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
227: when others then
228: raise;
222: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
223: when insufficient_provileges then
224: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
225: when folder_not_found then
226: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
227: when others then
228: raise;
229: end;
230:
231: begin
232: select target_id into b_tgtid from bism_associates where source_id = a_srcid and name = a_attrname and value = a_attrvalue;
233: exception
234: when no_data_found then
235: raise_application_error(BISM_ERRORCODES.ASSOCIATION_NOT_FOUND,'Association not found');
236: when others then
237: raise;
238: end;
239:
270: T ;
271: return rc;
272: exception
273: when no_data_found then
274: raise_application_error(BISM_ERRORCODES.OBJECT_NOT_FOUND,'Object not found');
275: when others then
276: raise;
277: end;
278:
315: end if;
316: end if;
317: exception
318: when no_data_found then
319: raise_application_error(BISM_ERRORCODES.OBJECT_NOT_FOUND,'Object not found');
320: end;
321: else
322: raise_application_error(BISM_ERRORCODES.INVALID_FOLDER_PATH,'Invalid atomic name');
323: end if;
318: when no_data_found then
319: raise_application_error(BISM_ERRORCODES.OBJECT_NOT_FOUND,'Object not found');
320: end;
321: else
322: raise_application_error(BISM_ERRORCODES.INVALID_FOLDER_PATH,'Invalid atomic name');
323: end if;
324:
325: end;
326:
368: end if;
369: end if;
370: exception
371: when object_not_found then
372: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
373: when no_privileges then
374: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
375: when insufficient_provileges then
376: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
370: exception
371: when object_not_found then
372: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
373: when no_privileges then
374: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
375: when insufficient_provileges then
376: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
377: when folder_not_found then
378: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
372: raise_application_error(BISM_ERRORCODES.SRC_OBJECT_NOT_FOUND,'Source object not found');
373: when no_privileges then
374: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
375: when insufficient_provileges then
376: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
377: when folder_not_found then
378: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
379: when others then
380: raise;
374: raise_application_error(BISM_ERRORCODES.NO_PRIV_SRC_FOLDER,'No privileges for source folder');
375: when insufficient_provileges then
376: raise_application_error(BISM_ERRORCODES.INSUFFICIENT_PRIV_SRC_FOLDER,'Insufficient privileges for source folder');
377: when folder_not_found then
378: raise_application_error(BISM_ERRORCODES.SRC_FOLDER_NOT_FOUND,'Source folder not found');
379: when others then
380: raise;
381: end;
382: