ePOST API

rice.p2p.past
Class ContentHashPastContent

java.lang.Object
  extended by rice.p2p.past.ContentHashPastContent
All Implemented Interfaces:
java.io.Serializable, PastContent
Direct Known Subclasses:
Delivery, DistPastTestContent, MyPastContent

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

Version:
$Id: ContentHashPastContent.java 2688 2005-08-03 01:45:34Z jstewart $
Author:
Peter Druschel, Alan Mislove
See Also:
Serialized Form

Field Summary
protected  Id myId
           
 
Constructor Summary
ContentHashPastContent(Id myId)
           
 
Method Summary
 PastContent checkInsert(Id id, PastContent existingContent)
          Checks if a insert operation should be allowed.
 PastContentHandle getHandle(Past local)
          Produces a handle for this content object.
 Id getId()
          Returns the Id under which this object is stored in Past.
 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 Id myId
Constructor Detail

ContentHashPastContent

public ContentHashPastContent(Id myId)
Method Detail

checkInsert

public PastContent checkInsert(Id id,
                               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
existingObj - the existing object stored on this node (null if no object associated with id is stored on this node)
Returns:
null, if the operation is not allowed; else, the new object to be stored on the local node.
Throws:
PastException

getHandle

public PastContentHandle getHandle(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 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

ePOST API

Copyright © 2001-2005 - Rice Pastry.