Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

InvalidatorPayload Class Reference

Inheritance diagram for InvalidatorPayload:

Payload List of all members.

Public Member Functions

synchronized InvalidatorPayload create ()
char[] getText ()
void setText (char[] text)
void setTimeout (ulong olderThan)
ulong getTimeout ()
synchronized void destroy ()
void write (IWriter writer)
void read (IReader reader)
char[] getGuid ()

Static Public Member Functions

static this ()

Private Member Functions

ulong getTime ()
void setTime (ulong time)
Object create (IReader reader)

Private Attributes

char[] text
ulong timeout
InvalidatorPayload next
import mango io PickleRegistry

Static Private Attributes

static InvalidatorPayload freelist

Member Function Documentation

static this  )  [inline, static]
 

Register this class for pickling, so we can resurrect instances when they arrive on a network datagram.

Definition at line 127 of file CacheInvalidator.d.

synchronized InvalidatorPayload create  )  [inline]
 

Allocate a Payload from a list rather than creating a new one

Reimplemented from Payload.

Definition at line 138 of file CacheInvalidator.d.

References freelist, and next.

char [] getText  )  [inline]
 

Definition at line 156 of file CacheInvalidator.d.

References text.

Referenced by CacheInvalidatee::notify().

void setText char[]  text  )  [inline]
 

Definition at line 165 of file CacheInvalidator.d.

References assert(), and text.

void setTimeout ulong  olderThan  )  [inline]
 

Set the identifier of the cache that should not be touched by an invalidation broadcast. This is typically a local cache on the machine originating the invalidation; without the ability to guard against local invalidation, the cache entry that was just added locally would be removed along with others across the cluster. The alternative would be to invalidate before addding, but that approach can quickly become complicated by timing issues.

Definition at line 185 of file CacheInvalidator.d.

References timeout.

ulong getTimeout  )  [inline]
 

Definition at line 194 of file CacheInvalidator.d.

Referenced by CacheInvalidatee::notify().

synchronized void destroy  )  [inline]
 

Return this Payload to the free-list

Reimplemented from Payload.

Definition at line 205 of file CacheInvalidator.d.

References freelist, and next.

void write IWriter  writer  )  [inline]
 

Emit our timestamp to the provided writer

Reimplemented from Payload.

Definition at line 215 of file CacheInvalidator.d.

void read IReader  reader  )  [inline]
 

Read our attributes, after telling our superclass to do likewise. The order of this is important with respect to inheritance, such that a subclass and superclass may be populated in isolation where appropriate.

Note that we slice our text attribute, rather than copying it. Since this class is temporal we can forego allocation of memory, and just map it directly from the input buffer.

Reimplemented from Payload.

Definition at line 234 of file CacheInvalidator.d.

References IReader::get(), text, and timeout.

char [] getGuid  )  [inline]
 

Return the guid for this payload. This should be unique per payload class, if said class is used in conjunction with the clustering facilities. Inspected by the Pickle utilitiy classes.

Reimplemented from Payload.

Definition at line 244 of file CacheInvalidator.d.

ulong getTime  )  [inline, inherited]
 

Return the timestamp associated with this payload

Reimplemented from IPayload.

Definition at line 71 of file Payload.d.

References Payload::time.

Referenced by ChannelCache::lockWhereInvalid().

void setTime ulong  time  )  [inline, inherited]
 

Set the timestamp of this payload

Reimplemented from IPayload.

Definition at line 82 of file Payload.d.

Object create IReader  reader  )  [inline, inherited]
 

Create a new instance of a payload, and populate it via read() using the specified reader

Reimplemented from IPickleFactory.

Reimplemented in Message, and Task.

Definition at line 116 of file Payload.d.

References Payload::create(), and Payload::read().


Member Data Documentation

char [] text [private]
 

Definition at line 112 of file CacheInvalidator.d.

Referenced by getText(), read(), and setText().

ulong timeout [private]
 

Definition at line 113 of file CacheInvalidator.d.

Referenced by read(), and setTimeout().

InvalidatorPayload next [private]
 

Definition at line 115 of file CacheInvalidator.d.

Referenced by create(), and destroy().

InvalidatorPayload freelist [static, private]
 

Definition at line 116 of file CacheInvalidator.d.

Referenced by create(), and destroy().

import mango io PickleRegistry [private]
 

Definition at line 118 of file CacheInvalidator.d.


The documentation for this class was generated from the following file:
Generated on Sat Dec 24 17:28:40 2005 for Mango by  doxygen 1.4.0