1: package body fnd_random_pkg as
2: /* $Header: AFCPRNDB.pls 120.2 2006/05/18 22:31:44 jnurthen ship $ */
3:
4: -- This package is now deprecated. Please use the random number packages
5: -- IN FND_CRYPTO instead.
6: -- Init, Seed and init_arrays are now no-ops here ias fnd_crypto is self-seeding
7: -- and get_next simply covers fnd_crypto, returning a number in the same number
8: -- range as the old get_next from this package.
9:
2: /* $Header: AFCPRNDB.pls 120.2 2006/05/18 22:31:44 jnurthen ship $ */
3:
4: -- This package is now deprecated. Please use the random number packages
5: -- IN FND_CRYPTO instead.
6: -- Init, Seed and init_arrays are now no-ops here ias fnd_crypto is self-seeding
7: -- and get_next simply covers fnd_crypto, returning a number in the same number
8: -- range as the old get_next from this package.
9:
10: procedure init( p_length in number)
3:
4: -- This package is now deprecated. Please use the random number packages
5: -- IN FND_CRYPTO instead.
6: -- Init, Seed and init_arrays are now no-ops here ias fnd_crypto is self-seeding
7: -- and get_next simply covers fnd_crypto, returning a number in the same number
8: -- range as the old get_next from this package.
9:
10: procedure init( p_length in number)
11: is
13: NULL;
14:
15: end init;
16:
17: -- Fnd_crypto takes care of seeding itself
18: procedure seed( value in number,
19: cycles in number,
20: forced in boolean)
21: is
31: l_number number;
32: XTONUM CONSTANT VARCHAR2(32) := 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX';
33: begin
34: LOOP
35: l_number := TO_NUMBER(RAWTOHEX(Fnd_Crypto.RandomBytes(4)), XTONUM);
36: EXIT WHEN l_number > 0 AND l_number < 4294967296;
37: END LOOP;
38:
39: RETURN l_number;