Rice Pastry API

rice.p2p.past
Class ContentHashPastContent

java.lang.Object
  |
  +--rice.p2p.past.ContentHashPastContent
All Implemented Interfaces:
PastContent, java.io.Serializable

public abstract class ContentHashPastContent
extends java.lang.Object
implements PastContent

Version:
$Id: ContentHashPastContent.java,v 1.5 2003/07/25 19:15:16 aray Exp $
Author:
Peter Druschel, Alan Mislove
See Also:
Serialized Form

Field Summary
protected  rice.p2p.commonapi.Id myId
           
 
Constructor Summary
ContentHashPastContent()
           
 
Method Summary
 rice.p2p.past.PastContent checkInsert(rice.p2p.commonapi.Id id, rice.p2p.past.PastContent existingContent)
          Checks if a insert operation should be allowed.
 rice.p2p.past.PastContentHandle getHandle(rice.p2p.past.Past local)
          Produces a handle for this content object.
 rice.p2p.commonapi.Id getId()
          Returns the Id under which this object is stored in Past.
 void insert(rice.p2p.past.Past past, rice.Continuation command)
          Inserts this object into its associated Past instance.
 boolean isMutable()
          States if this content object is mutable.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myId

protected rice.p2p.commonapi.Id myId
Constructor Detail

ContentHashPastContent

public ContentHashPastContent()
Method Detail

insert

public void insert(rice.p2p.past.Past past,
                   rice.Continuation command)
Inserts this object into its associated Past instance. Asynchronously returns a boolean as the result to the provided Continuation, indicating whether the insert was successful.

Parameters:
past - The local past service
command - Command to be performed when the result is received

checkInsert

public rice.p2p.past.PastContent checkInsert(rice.p2p.commonapi.Id id,
                                             rice.p2p.past.PastContent existingContent)
                                      throws PastException
Checks if a insert operation should be allowed. Invoked when a Past node receives an insert request and it is a replica root for the id; invoked on the object to be inserted. This method determines the effect of an insert operation on an object that already exists: it computes the new value of the stored object, as a function of the new and the existing object.

Specified by:
checkInsert in interface PastContent
Parameters:
id - the key identifying the object
Returns:
null, if the operation is not allowed; else, the new object to be stored on the local node.
PastException

getHandle

public rice.p2p.past.PastContentHandle getHandle(rice.p2p.past.Past local)
Produces a handle for this content object. The handle is retrieved and returned to the client as a result of the Past.lookupHandles() method.

Specified by:
getHandle in interface PastContent
Parameters:
local - The local past service
Returns:
the handle

getId

public rice.p2p.commonapi.Id getId()
Returns the Id under which this object is stored in Past.

Specified by:
getId in interface PastContent
Returns:
the id

isMutable

public boolean isMutable()
States if this content object is mutable. Mutable objects are not subject to dynamic caching in Past.

Specified by:
isMutable in interface PastContent
Returns:
true if this object is mutable, else false

Rice Pastry API

Copyright © 2001 - Rice Pastry.


Imprint-Dataprotection