Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Rice Pastry API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## rice.p2p.past.gc
Class GCIdFactory

    java.lang.Object
      rice.p2p.past.gc.GCIdFactory

All Implemented Interfaces:
  IdFactory

    public class GCIdFactory

extends java.lang.Object
implements IdFactory

Version:
  $Id: GCIdFactory.java 3613 2007-02-15 14:45:14Z jstewart $
Author:
  Alan Mislove, Peter Druschel

Nested Class Summary
`protected class` | `GCIdFactory.GCEntrySet`
`protected class` | `GCIdFactory.GCMapEntry`
`protected class` | `GCIdFactory.GCSortedMap`

Field Summary
`protected IdFactory` | `factory` The underlying IdFactory

Constructor Summary
`GCIdFactory(IdFactory factory)` Constructor

Method Summary
`Id` | `buildId(byte[] material)` Builds a protocol-specific Id given the source data.
`Id` | `buildId(int[] material)` Builds a protocol-specific Id given the source data.
`Id` | `buildId(java.lang.String string)` Builds a protocol-specific Id by using the hash of the given string as source data.
`Id.Distance` | `buildIdDistance(byte[] material)` Builds a protocol-specific Id.Distance given the source data.
`Id` | `buildIdFromToString(char[] chars, int offset, int length)` Builds an Id by converting the given toString() output back to an Id.
`Id` | `buildIdFromToString(java.lang.String string)` Builds an Id by converting the given toString() output back to an Id.
`IdRange` | `buildIdRange(Id cw, Id ccw)` Creates an IdRange given the CW and CCW ids.
`IdRange` | `buildIdRangeFromPrefix(java.lang.String string)` Builds an IdRange based on a prefix.
`IdSet` | `buildIdSet()` Creates an empty IdSet.
`IdSet` | `buildIdSet(java.util.SortedMap map)` Creates an empty IdSet.
`NodeHandleSet` | `buildNodeHandleSet()` Creates an empty NodeHandleSet.
`Id` | `buildNormalId(byte[] material)` Builds a protocol-specific Id given the source data.
`Id` | `buildRandomId(java.util.Random rng)` Builds a random protocol-specific Id.
`Id` | `buildRandomId(RandomSource rng)`
`int` | `getIdToStringLength()` Returns the length a Id.toString should be.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### factory

    protected IdFactory factory

  The underlying IdFactory

Constructor Detail

### GCIdFactory

    public GCIdFactory(IdFactory factory)

  Constructor

  Parameters:
    `factory` - the underlying factory to use

Method Detail

### buildNormalId

    public Id buildNormalId(byte[] material)

  Builds a protocol-specific Id given the source data.

  Parameters:
    `material` - The material to use
  Returns:
    The built Id.

### buildId

    public Id buildId(byte[] material)

  Builds a protocol-specific Id given the source data.

  Specified by:
    `buildId` in interface `IdFactory`
  Parameters:
    `material` - The material to use
  Returns:
    The built Id.

### buildId

    public Id buildId(int[] material)

  Builds a protocol-specific Id given the source data.

  Specified by:
    `buildId` in interface `IdFactory`
  Parameters:
    `material` - The material to use
  Returns:
    The built Id.

### buildId

    public Id buildId(java.lang.String string)

  Builds a protocol-specific Id by using the hash of the given string as source data.

  Specified by:
    `buildId` in interface `IdFactory`
  Parameters:
    `string` - The string to use as source data
  Returns:
    The built Id.

### buildRandomId

    public Id buildRandomId(java.util.Random rng)

  Builds a random protocol-specific Id.

  Specified by:
    `buildRandomId` in interface `IdFactory`
  Parameters:
    `rng` - A random number generator
  Returns:
    The built Id.

### buildRandomId

    public Id buildRandomId(RandomSource rng)

  Specified by:
    `buildRandomId` in interface `IdFactory`

### buildIdFromToString

    public Id buildIdFromToString(java.lang.String string)

  Builds an Id by converting the given toString() output back to an Id. Should not normall be used.

  Specified by:
    `buildIdFromToString` in interface `IdFactory`
  Parameters:
    `string` - The toString() representation of an Id
  Returns:
    The built Id.

### buildIdFromToString

    public Id buildIdFromToString(char[] chars,
                                  int offset,
                                  int length)

  Builds an Id by converting the given toString() output back to an Id. Should not normally be used.

  Specified by:
    `buildIdFromToString` in interface `IdFactory`
  Parameters:
    `chars` - The character array
    `offset` - The offset to start reading at
    `length` - The length to read
  Returns:
    The built Id.

### buildIdRangeFromPrefix

    public IdRange buildIdRangeFromPrefix(java.lang.String string)

  Builds an IdRange based on a prefix. Any id which has this prefix should be inside this IdRange, and any id which does not share this prefix should be outside it.

  Specified by:
    `buildIdRangeFromPrefix` in interface `IdFactory`
  Parameters:
    `string` - The toString() representation of an Id
  Returns:
    The built Id.

### getIdToStringLength

    public int getIdToStringLength()

  Returns the length a Id.toString should be.

  Specified by:
    `getIdToStringLength` in interface `IdFactory`
  Returns:
    The correct length;

### buildIdDistance

    public Id.Distance buildIdDistance(byte[] material)

  Builds a protocol-specific Id.Distance given the source data.

  Specified by:
    `buildIdDistance` in interface `IdFactory`
  Parameters:
    `material` - The material to use
  Returns:
    The built Id.Distance.

### buildIdRange

    public IdRange buildIdRange(Id cw,
                                Id ccw)

  Creates an IdRange given the CW and CCW ids.

  Specified by:
    `buildIdRange` in interface `IdFactory`
  Parameters:
    `cw` - The clockwise Id
    `ccw` - The counterclockwise Id
  Returns:
    An IdRange with the appropriate delimiters.

### buildIdSet

    public IdSet buildIdSet()

  Creates an empty IdSet.

  Specified by:
    `buildIdSet` in interface `IdFactory`
  Returns:
    an empty IdSet

### buildIdSet

    public IdSet buildIdSet(java.util.SortedMap map)

  Creates an empty IdSet.

  Specified by:
    `buildIdSet` in interface `IdFactory`
  Returns:
    an empty IdSet

### buildNodeHandleSet

    public NodeHandleSet buildNodeHandleSet()

  Creates an empty NodeHandleSet.

  Specified by:
    `buildNodeHandleSet` in interface `IdFactory`
  Returns:
    an empty NodeHandleSet

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Rice Pastry API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2005 - Rice Pastry.