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.scribe.messaging
Class SubscribeMessage

    java.lang.Object
      rice.p2p.scribe.messaging.ScribeMessage
          rice.p2p.scribe.messaging.AnycastMessage
              rice.p2p.scribe.messaging.SubscribeMessage

All Implemented Interfaces:
  java.io.Serializable, Message, RawMessage, RawSerializable

    public class SubscribeMessage

extends AnycastMessage

Version:
  $Id: SubscribeMessage.java 3801 2007-07-18 15:04:40Z jeffh $
Author:
  Alan Mislove
See Also:
  Serialized Form

Field Summary
`protected int` | `id` The id of this message
`protected NodeHandle` | `subscriber` The original subscriber
`static short` | `TYPE`

Fields inherited from class rice.p2p.scribe.messaging.AnycastMessage
`content, initialRequestor, toVisit, visited`

Fields inherited from class rice.p2p.scribe.messaging.ScribeMessage
`source, topic`

Fields inherited from interface rice.p2p.commonapi.Message
`DEFAULT_PRIORITY, HIGH_PRIORITY, LOW_PRIORITY, LOWEST_PRIORITY, MAX_PRIORITY, MEDIUM_HIGH_PRIORITY, MEDIUM_LOW_PRIORITY, MEDIUM_PRIORITY`

Constructor Summary
`SubscribeMessage(NodeHandle source, java.util.List<Topic> topics, int id, RawScribeContent content)` Constructor which takes a unique integer Id
`SubscribeMessage(NodeHandle source, Topic topic, int id, RawScribeContent content)`

Method Summary
`static SubscribeMessage` | `buildSM(InputBuffer buf, Endpoint endpoint, ScribeContentDeserializer scd)`
`SubscribeMessage` | `copy(java.util.List<Topic> newTopics, RawScribeContent content)` Copies everything except changes the topics to the new list
`int` | `getId()` Returns this subscribe lost message's id
`NodeHandle` | `getSubscriber()` Returns the node who is trying to subscribe
`java.util.List<Topic>` | `getTopics()`
`short` | `getType()` Raw Serialization
`boolean` | `isEmpty()`
`void` | `removeTopics(java.util.Collection<Topic> accepted)` Call this when you accept topics in the list.
`void` | `serialize(OutputBuffer buf)`
`java.lang.String` | `toString()` Returns a String represneting this message

Methods inherited from class rice.p2p.scribe.messaging.AnycastMessage
`addFirst, addLast, addVisited, build, getContent, getInitialRequestor, getLastVisited, getNext, getRawContent, getToVisitSize, getVisitedSize, hasVisited, peekLastToVisit, peekNext, remove, serializeHelper, setContent, setContent`

Methods inherited from class rice.p2p.scribe.messaging.ScribeMessage
`getPriority, getSource, getTopic, setSource`

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

Field Detail

### TYPE

    public static final short TYPE

See Also:
  Constant Field Values

### subscriber

    protected NodeHandle subscriber

  The original subscriber

### id

    protected int id

  The id of this message

Constructor Detail

### SubscribeMessage

    public SubscribeMessage(NodeHandle source,
                            java.util.List<Topic> topics,
                            int id,
                            RawScribeContent content)

  Constructor which takes a unique integer Id

  Parameters:
    `source` - The source address
    `topics` - The topics must be sorted, this is not verified. It will be routed to the first topic in the list.
    `id` - The UID for this message
    `content` - The content

### SubscribeMessage

    public SubscribeMessage(NodeHandle source,
                            Topic topic,
                            int id,
                            RawScribeContent content)

Parameters:
  `source` -
  `topic` - to subscribe to only 1 topic
  `id` -
  `content` -

Method Detail

### getSubscriber

    public NodeHandle getSubscriber()

  Returns the node who is trying to subscribe

  Returns:
    The node who is attempting to subscribe

### getId

    public int getId()

  Returns this subscribe lost message's id

  Returns:
    The id of this subscribe message

### toString

    public java.lang.String toString()

  Returns a String represneting this message

  Overrides:
    `toString` in class `AnycastMessage`
  Returns:
    A String of this message

### getType

    public short getType()

  Raw Serialization

  Specified by:
    `getType` in interface `RawMessage`
  Overrides:
    `getType` in class `AnycastMessage`

### serialize

    public void serialize(OutputBuffer buf)
                   throws java.io.IOException

  Specified by:
    `serialize` in interface `RawSerializable`
  Overrides:
    `serialize` in class `AnycastMessage`
  Throws:
    `java.io.IOException`

### buildSM

    public static SubscribeMessage buildSM(InputBuffer buf,
                                           Endpoint endpoint,
                                           ScribeContentDeserializer scd)
                                    throws java.io.IOException

  Throws:
    `java.io.IOException`

### removeTopics

    public void removeTopics(java.util.Collection<Topic> accepted)

  Call this when you accept topics in the list.

  Parameters:
    `topic` -

### getTopics

    public java.util.List<Topic> getTopics()

### isEmpty

    public boolean isEmpty()

### copy

    public SubscribeMessage copy(java.util.List<Topic> newTopics,
                                 RawScribeContent content)

  Copies everything except changes the topics to the new list

  Parameters:
    `newTopics` -
  Returns:

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.