net.i2p.util
Class PooledRandomSource

java.lang.Object
  extended by java.util.Random
      extended by java.security.SecureRandom
          extended by net.i2p.util.RandomSource
              extended by net.i2p.util.PooledRandomSource
All Implemented Interfaces:
java.io.Serializable, EntropyHarvester

Deprecated. Unused! See FortunaRandomSource

public class PooledRandomSource
extends RandomSource

Maintain a set of PRNGs to feed the apps

See Also:
Serialized Form

Field Summary
protected  int _nextPool
          Deprecated.  
protected  RandomSource[] _pool
          Deprecated.  
static int POOL_SIZE
          Deprecated.  
static java.lang.String PROP_BUFFER_SIZE
          Deprecated. How much random data will we precalculate and feed from (as opposed to on demand reseeding, etc).
 
Fields inherited from class net.i2p.util.RandomSource
_context
 
Constructor Summary
PooledRandomSource(I2PAppContext context)
          Deprecated.  
 
Method Summary
 EntropyHarvester harvester()
          Deprecated.  
protected  void initializePool(I2PAppContext context)
          Deprecated.  
static void main(java.lang.String[] args)
          Deprecated.  
 boolean nextBoolean()
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 void nextBytes(byte[] buf)
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 double nextDouble()
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 float nextFloat()
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 double nextGaussian()
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 int nextInt()
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 int nextInt(int n)
          Deprecated. According to the java docs (http://java.sun.com/j2se/1.4.1/docs/api/java/util/Random.html#nextInt(int)) nextInt(n) should return a number between 0 and n (including 0 and excluding n).
 long nextLong()
          Deprecated. override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)
 long nextLong(long n)
          Deprecated. Like the modified nextInt, nextLong(n) returns a random number from 0 through n, including 0, excluding n.
 
Methods inherited from class net.i2p.util.RandomSource
feedEntropy, feedEntropy, getInstance, initSeed, loadSeed, saveSeed, writeSeed
 
Methods inherited from class java.security.SecureRandom
generateSeed, getAlgorithm, getInstance, getInstance, getInstance, getProvider, getSeed, next, setSeed, setSeed
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_pool

protected RandomSource[] _pool
Deprecated. 

_nextPool

protected volatile int _nextPool
Deprecated. 

POOL_SIZE

public static final int POOL_SIZE
Deprecated. 
See Also:
Constant Field Values

PROP_BUFFER_SIZE

public static final java.lang.String PROP_BUFFER_SIZE
Deprecated. 
How much random data will we precalculate and feed from (as opposed to on demand reseeding, etc). If this is not set, a default will be used (4MB), or if it is set to 0, no buffer will be used, otherwise the amount specified will be allocated across the pooled PRNGs.

See Also:
Constant Field Values
Constructor Detail

PooledRandomSource

public PooledRandomSource(I2PAppContext context)
Deprecated. 
Method Detail

initializePool

protected void initializePool(I2PAppContext context)
Deprecated. 

nextInt

public int nextInt(int n)
Deprecated. 
According to the java docs (http://java.sun.com/j2se/1.4.1/docs/api/java/util/Random.html#nextInt(int)) nextInt(n) should return a number between 0 and n (including 0 and excluding n). However, their pseudocode, as well as sun's, kaffe's, and classpath's implementation INCLUDES NEGATIVE VALUES. WTF. Ok, so we're going to have it return between 0 and n (including 0, excluding n), since thats what it has been used for.

Overrides:
nextInt in class RandomSource

nextLong

public long nextLong(long n)
Deprecated. 
Like the modified nextInt, nextLong(n) returns a random number from 0 through n, including 0, excluding n.

Overrides:
nextLong in class RandomSource

nextBoolean

public boolean nextBoolean()
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextBoolean in class RandomSource

nextBytes

public void nextBytes(byte[] buf)
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextBytes in class RandomSource

nextDouble

public double nextDouble()
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextDouble in class RandomSource

nextFloat

public float nextFloat()
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextFloat in class RandomSource

nextGaussian

public double nextGaussian()
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextGaussian in class RandomSource

nextInt

public int nextInt()
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextInt in class RandomSource

nextLong

public long nextLong()
Deprecated. 
override as synchronized, for those JVMs that don't always pull via nextBytes (cough ibm)

Overrides:
nextLong in class RandomSource

harvester

public EntropyHarvester harvester()
Deprecated. 
Overrides:
harvester in class RandomSource

main

public static void main(java.lang.String[] args)
Deprecated.