org.jgroups.demos.wb

## Class Whiteboard

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - java.awt.Panel
      - - java.applet.Applet
        - - org.jgroups.demos.wb.Whiteboard

- All Implemented Interfaces:
    java.awt.event.ActionListener, java.awt.event.ComponentListener, java.awt.event.FocusListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, MembershipListener, MessageListener

      public class Whiteboard
      extends java.applet.Applet
      implements java.awt.event.ActionListener, MessageListener, MembershipListener, java.awt.event.ComponentListener, java.awt.event.FocusListener

  Shared whiteboard: members are represented by rectangles that contain their names and the OS/arch of the machine they are working on. The boxes can be moved by anyone and by clicking on them, messages can be sent to specific or all members. Whiteboard is both an application and an applet.
  Author:
    Bela Ban
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class java.applet.Applet

      `java.applet.Applet.AccessibleApplet`

    - ### Nested classes/interfaces inherited from class java.awt.Panel

      `java.awt.Panel.AccessibleAWTPanel`

    - ### Nested classes/interfaces inherited from class java.awt.Container

      `java.awt.Container.AccessibleAWTContainer`

    - ### Nested classes/interfaces inherited from class java.awt.Component

      `java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `RpcDispatcher` | `disp`
    `static java.lang.String` | `groupname`

    - ### Fields inherited from class java.awt.Component

      `BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Whiteboard()`
    `Whiteboard(java.lang.String properties)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `actionPerformed(java.awt.event.ActionEvent e)`
    `void` | `addNode(java.lang.String lbl, Address addr, int xloc, int yloc)`
    `void` | `block()` Called (usually by the FLUSH protocol), as an indication that the member should stop sending messages.
    `void` | `componentHidden(java.awt.event.ComponentEvent e)`
    `void` | `componentMoved(java.awt.event.ComponentEvent e)`
    `void` | `componentResized(java.awt.event.ComponentEvent e)`
    `void` | `componentShown(java.awt.event.ComponentEvent e)`
    `void` | `destroy()`
    `void` | `displayMessage(java.lang.String sender, java.lang.String msg)`
    `void` | `focusGained(java.awt.event.FocusEvent e)`
    `void` | `focusLost(java.awt.event.FocusEvent e)`
    `byte[]` | `getState()` Answers the group state; e.g., when joining.
    `void` | `init()`
    `static void` | `main(java.lang.String[] args)`
    `void` | `moveNode(Node n)`
    `void` | `receive(Message m)` Called when a message is received.
    `void` | `removeNode(java.lang.Object addr)`
    `void` | `repaint()`
    `void` | `setState(byte[] new_state)` Sets the group state; e.g., when joining.
    `void` | `suspect(Address obj)` Called whenever a member is suspected of having crashed, but has not yet been excluded.
    `void` | `viewAccepted(View v)` Called when a change in membership has occurred.

    - ### Methods inherited from class java.applet.Applet

      `getAccessibleContext, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, start, stop`

    - ### Methods inherited from class java.awt.Panel

      `addNotify`

    - ### Methods inherited from class java.awt.Container

      `add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusDownCycle, update, validate, validateTree`

    - ### Methods inherited from class java.awt.Component

      `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### disp

          public RpcDispatcher disp

    - #### groupname

          public static final java.lang.String groupname

      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Whiteboard

          public Whiteboard()

    - #### Whiteboard

          public Whiteboard(java.lang.String properties)

  - ### Method Detail

    - #### receive

          public void receive(Message m)

      Description copied from interface: `MessageListener`
      Called when a message is received.
      Specified by:
        `receive` in interface `MessageListener`

    - #### getState

          public byte[] getState()

      Description copied from interface: `MessageListener`
      Answers the group state; e.g., when joining.
      Specified by:
        `getState` in interface `MessageListener`
      Returns:
        byte[]

    - #### setState

          public void setState(byte[] new_state)

      Description copied from interface: `MessageListener`
      Sets the group state; e.g., when joining.
      Specified by:
        `setState` in interface `MessageListener`

    - #### init

          public void init()

      Overrides:
        `init` in class `java.applet.Applet`

    - #### destroy

          public void destroy()

      Overrides:
        `destroy` in class `java.applet.Applet`

    - #### repaint

          public void repaint()

      Overrides:
        `repaint` in class `java.awt.Component`

    - #### actionPerformed

          public void actionPerformed(java.awt.event.ActionEvent e)

      Specified by:
        `actionPerformed` in interface `java.awt.event.ActionListener`

    - #### viewAccepted

          public void viewAccepted(View v)

      Description copied from interface: `MembershipListener`
      Called when a change in membership has occurred. No long running actions or sending of messages should be done in this callback. If some long running action needs to be performed, it should be done in a separate thread.

      Note that on reception of the first view (a new member just joined), the channel will not yet be in the connected state. This only happens when `Channel.connect(String)` returns.
      Specified by:
        `viewAccepted` in interface `MembershipListener`

    - #### suspect

          public void suspect(Address obj)

      Description copied from interface: `MembershipListener`
      Called whenever a member is suspected of having crashed, but has not yet been excluded.
      Specified by:
        `suspect` in interface `MembershipListener`

    - #### block

          public void block()

      Description copied from interface: `MembershipListener`
      Called (usually by the FLUSH protocol), as an indication that the member should stop sending messages. Any messages sent after returning from this callback might get blocked by the FLUSH protocol. When the FLUSH protocol is done, and messages can be sent again, the FLUSH protocol will simply unblock all pending messages. If a callback for unblocking is desired, implement `ExtendedMembershipListener.unblock()`. Note that block() is the equivalent of reception of a BlockEvent in the pull mode.
      Specified by:
        `block` in interface `MembershipListener`

    - #### moveNode

          public void moveNode(Node n)

    - #### addNode

          public void addNode(java.lang.String lbl,
                     Address addr,
                     int xloc,
                     int yloc)

    - #### removeNode

          public void removeNode(java.lang.Object addr)

    - #### displayMessage

          public void displayMessage(java.lang.String sender,
                            java.lang.String msg)

    - #### componentResized

          public void componentResized(java.awt.event.ComponentEvent e)

      Specified by:
        `componentResized` in interface `java.awt.event.ComponentListener`

    - #### componentMoved

          public void componentMoved(java.awt.event.ComponentEvent e)

      Specified by:
        `componentMoved` in interface `java.awt.event.ComponentListener`

    - #### componentShown

          public void componentShown(java.awt.event.ComponentEvent e)

      Specified by:
        `componentShown` in interface `java.awt.event.ComponentListener`

    - #### componentHidden

          public void componentHidden(java.awt.event.ComponentEvent e)

      Specified by:
        `componentHidden` in interface `java.awt.event.ComponentListener`

    - #### focusGained

          public void focusGained(java.awt.event.FocusEvent e)

      Specified by:
        `focusGained` in interface `java.awt.event.FocusListener`

    - #### focusLost

          public void focusLost(java.awt.event.FocusEvent e)

      Specified by:
        `focusLost` in interface `java.awt.event.FocusListener`

    - #### main

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

Copyright © 1998-2009 Bela Ban / Red Hat. All Rights Reserved.