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.pastry.testing
Class DistHelloWorld

    java.lang.Object
      rice.pastry.testing.DistHelloWorld

    public class DistHelloWorld

extends java.lang.Object

A hello world example for pastry. This is the distributed driver. For example, run with default arguments on two machines, both with args -bootstrap firstmachine. Read the messages and follow the protocols. Either separately or with the above, try -nodes 3 and -nodes 20. Try -msgs 100. Try the two machine configuration, kill it, restart, and watch it join as a different node. Do that a few times, watch LeafSet entries accumulate, then in 30 seconds, watch the maintenance take over.

Version:
  $Id: DistHelloWorld.java 4654 2009-01-08 16:33:07Z jeffh $
Author:
  Sitaram Iyer, Peter Druschel

Field Summary
`Environment` | `environment`
`static int` | `protocol`

Constructor Summary
`DistHelloWorld(Environment env)` Constructor

Method Summary
`protected NodeHandle` | `getBootstrap(boolean firstNode)` Gets a handle to a bootstrap node.
`static void` | `main(java.lang.String[] args)` Usage: DistHelloWorld [-msgs m] [-nodes n] [-port p] [-bootstrap bshost[:bsport]] [-verbose|-silent|-verbosity v] [-help].
`PastryNode` | `makePastryNode(boolean firstNode)` Create a Pastry node and add it to pastryNodes.

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

Field Detail

### protocol

    public static int protocol

### environment

    public Environment environment

Constructor Detail

### DistHelloWorld

    public DistHelloWorld(Environment env)
                   throws java.io.IOException

  Constructor

  Throws:
    `java.io.IOException`

Method Detail

### getBootstrap

    protected NodeHandle getBootstrap(boolean firstNode)

  Gets a handle to a bootstrap node. First we try localhost, to see whether a previous virtual node has already bound itself there. Then we try nattempts times on bshost:bsport. Then we fail.

  Parameters:
    `firstNode` - true of the first virtual node is being bootstrapped on this host
  Returns:
    handle to bootstrap node, or null.

### makePastryNode

    public PastryNode makePastryNode(boolean firstNode)

  Create a Pastry node and add it to pastryNodes. Also create a client application for this node, so that when this node comes up ( when pn.isReady() is true) , this application's notifyReady() method is called, and it can do any interesting stuff it wants.

### main

    public static void main(java.lang.String[] args)
                     throws java.io.IOException

  Usage: DistHelloWorld [-msgs m] [-nodes n] [-port p] [-bootstrap bshost[:bsport]] [-verbose|-silent|-verbosity v] [-help]. Ports p and bsport refer to Socket port numbers (default = 5009). Without -bootstrap bshost[:bsport], only localhost:p is used for bootstrap. Default verbosity is 8, -verbose is 1, and -silent is 10 (error msgs only).

  Throws:
    `java.io.IOException`

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.