org.abora.gold.be.basic
Class BeEdition

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.snarf.Abraham
                    |
                    +--org.abora.gold.be.basic.BeRangeElement
                          |
                          +--org.abora.gold.be.basic.BeEdition

public class BeEdition
extends BeRangeElement


Field Summary
protected  PrimSet myDetectors
           
protected  OrglRoot myOrglRoot
           
protected  BertProp myOwnProp
           
protected  BertProp myProp
           
protected  MuSet myWorks
           
 
Fields inherited from class org.abora.gold.be.basic.BeRangeElement
myFeRangeElements, myHCrum, myOwner, mySensorCrum
 
Fields inherited from class org.abora.gold.snarf.Abraham
DismantleStatistics, myHash, myInfo, myToken, TheTokenSource
 
Fields inherited from class org.abora.gold.xpp.basic.Heaper
AllBlasts, BecomeMap, GarbageCount, InGC, InitializedClasses, InitializingClasses, LastMemory, NextClientRequestNumber, NotOneElementSignal, PackageTable, PromiseNameTable, StringHashSBoxes
 
Fields inherited from class org.abora.gold.java.AboraHeaper
ActiveClubs, CurrentAuthor, CurrentBertCanopyCache, CurrentBertCrum, CurrentChunk, CurrentGrandMap, CurrentKeyMaster, CurrentPacker, CurrentSensorCanopyCache, CurrentServer, CurrentSession, CurrentSessions, CurrentTrace, InitialEditClub, InitialOwner, InitialReadClub, InitialSponsor, InsideTransactionFlag
 
Constructor Summary
BeEdition(OrglRoot root)
           
BeEdition(Rcvr receiver)
           
 
Method Summary
 void addDetector(FeFillRangeDetector detect)
          Add a detector which will be triggered with a FeEdition when a PlaceHolder becomes a
non-PlaceHolder
 void addOParent(Loaf oparent)
          add oparent to the set of upward pointers.
 boolean anyPasses(PropFinder finder)
           
 XnRegion attachTrailBlazer(TrailBlazer blazer)
          Attach the TrailBlazer to this Edition, and return the region of partiality it is attached
to
 void checkRecorders(PropFinder finder, SensorCrum scrum)
          does nothing.
 BeEdition combine(BeEdition other)
          An Edition with the contents of both Editions; where they share keys, they must have the
same RangeElement.
 CoordinateSpace coordinateSpace()
          The space from which the keys of this Edition are taken.
 BeEdition copy(XnRegion keys)
          A new Edition with the domain restricted to the given set of keys.
 IntegerVar count()
          The number of keys in this Edition.
 ImmuSet currentWorks()
          The Works currently on this Edition
 MuSet detectors()
           
 void dismantle()
          Disconnect me from the universe and throw me off the disk.
For GC safety, we keep a strongptr to ourself -- is this still necessary?
 XnRegion domain()
          All the keys in this Edition.
 void endorse(CrossRegion endorsements)
          Adds to the endorsements on this Edition.
 CrossRegion endorsements()
          All of the endorsements on this Edition.
 FeRangeElement fetch(Position key)
          Create a front end representation for what is at the given key.
 BeRangeElement fetchOrMakeBeRangeElement(Position key)
          An actual, non-virtual FE range element at that key.
 void fossilRelease(RecorderFossil oldGrabber)
           
 FeRangeElement get(Position key)
          The value at the given key, or blast if there is no such key (i.e.
 BeRangeElement getOrMakeBe(Position key)
          An actual, non-virtual FE range element at that key.
 TrailBlazer getOrMakeTrailBlazer()
          Get or make a TrailBlazer for recording results into this Edition.
 boolean includesKey(Position key)
          Whether the given key is in the Edition.
 void introduceWork(BeWork work)
          A Work has been newly revised to point at me.
 boolean isEmpty()
          Whether there are any keys in this Edition.
 boolean isFinite()
          Whether there is a finite number of keys in this Edition.
 boolean isPurgeable()
          Return false only if the object cannot be flushed to disk.
 XnRegion keysLabelled(BeLabel label)
          The keys in this Edition at which there are Editions with the given label.
 XnRegion keysOf(FeRangeElement value)
          All of the keys in this Edition at which the given RangeElement can be found.
static Heaper make(OrglRoot oroot)
           
 FeRangeElement makeFe(BeLabel label)
          Make a front end object (session level) for this backend object.
 Mapping mapSharedTo(BeEdition other)
          A Mapping from each of the keys in this Edition to all of the keys in the other Edition
which have the same RangeElement.
 BeEdition notSharedWith(BeEdition other, int flags)
          The subset of this Edition whose RangeElements are not in the other Edition.
 OrglRoot orglRoot()
           
 ID ownerAt(Position key)
          Return the owner for the given position in the receiver.
 BeEdition parcelAt(Position key)
           
 BeEdition parcels()
           
 void printOn(java.io.PrintWriter oo)
           
 BertProp prop()
           
 void propChange(PropChange change, Prop nw)
           
 void propChanged(PropChange change, Prop old, Prop nw)
           
 void propChanged(PropChange change, Prop old, Prop nw, PropFinder oldFinder)
          update props
 IDRegion rangeOwners(XnRegion positions)
          The owners of all the RangeElements in the given Region, or in the entire
Edition if no Region is specified.
 BeEdition rangeTranscluders(XnRegion region, Filter directFilter, Filter indirectFilter, int flags, BeEdition otherTrail)
          See FeEdition
 BeEdition rangeWorks(XnRegion region, Filter filter, int flags, BeEdition otherTrail)
          See FeEdition
 BeEdition rebind(Position key, BeEdition edition)
          Replace the Edition at the given key, leaving the Label the same.
 void removeDetector(FeFillRangeDetector detect)
          Remove a previously added detector
 void removeLastDetector()
          Notify the edition that there are no remaining detectors on it.
 void removeWork(BeWork work)
          The Work is no longer onto this Edition.
 BeEdition reorganize(XnRegion oldRegion, OrderSpec oldOrder, XnRegion newRegion, OrderSpec newOrder)
          Rearrange the keys of this Edition to lie in the given region, with the given ordering.
Equivalent to server->makeEdition (this->asArray (oldRegion, oldOrder), newRegion,
newOrder, NULL), except that it doesn't require everything to be in the same zone (and is
of course more efficient).
 BeEdition replace(BeEdition other)
          An Edition with the contents of both Editions; where they share keys, use the contents of
the other Edition.
 void restartE(Rcvr rcvr)
           
 void retract(CrossRegion endorsements)
          Removes endorsements from this Edition.
 Stepper retrieve(XnRegion region, OrderSpec order, int flags)
          Essential.
 void ringDetectors(FeEdition newIdentities)
          Ring all my detectors with the given Edition as an argument
 void scheduleDelayedBackfollow(RecorderFossil fossil)
           
 void scheduleDelayedBackfollow(RecorderFossil fossil, XnRegion region)
          Walk down orgl's O-tree (onto range elements of interest) planting pointers to a Fossil of
BackfollowRecorder in the sensor canopy and collecting agenda items to propagate their
endorsement and permission filtering info rootward in the sensor canopy.
Create and schedule a structure of AgendaItems to:
- First: Do the filtering info propagation.
- Second: Find and record any currently matching stamps.
This is done in this order so collection of the future part of recorder information is
completed before the present part is extracted, keeping significant information from
falling through the crack.
 void scheduleImmediateBackfollow(RecorderFossil fossil)
           
 void scheduleImmediateBackfollow(RecorderFossil fossil, XnRegion region)
          Find and record any currently matching Editions.
 void sendSelfTo(Xmtr xmtr)
          do nothing
 BeEdition setAllOwners(ID newOwner)
           
 BeEdition setAllOwners(ID newOwner, XnRegion region)
           
 BeEdition setRangeOwners(ID newOwner, XnRegion region)
          Changes the owner of all RangeElements; requires the authority of the current owner.
Returns the subset of this Edition whose owners did not get changed because of lack of
authority.
 XnRegion sharedRegion(BeEdition other)
           
 XnRegion sharedRegion(BeEdition other, int flags)
          The subset of the keys of this Edition which have RangeElements that are in the other
Edition.
 BeEdition sharedWith(BeEdition other, int flags)
          The subset of this Edition whose RangeElements are in the other Edition.
 FeRangeElement theOne()
          If this Edition has a single key, then the value at that key; if not, blasts.
 CrossRegion totalEndorsements()
          All of the endorsements on this Edition and all Works directly on it
 BeEdition transformedBy(Mapping mapping)
          An Edition with the keys transformed according to the given Mapping.
 Pair tryAllBecome(BeEdition newIdentities)
          Change the identities of the RangeElements of this Edition to those at the same key in the
other Edition.
 void unendorse(CrossRegion endorsements)
           
 boolean updateBCrumTo(BertCrum newBCrum)
          My bertCrum must not be leafward of newBCrum.
Thus it must be LE to newCrum.
 CrossRegion visibleEndorsements()
          All of the endorsements on this Edition and all Works which the CurrentKeyMaster can read.
 void wait(XnSensor sensor)
           
 BeEdition with(Position key, BeCarrier value)
          A new Edition with a RangeElement at a specified key.
 BeEdition withAll(XnRegion keys, BeCarrier value)
          A new Edition with a RangeElement at a specified set of keys.
 BeEdition without(Position key)
          A new Edition without any RangeElement at a specified key.
 BeEdition withoutAll(XnRegion keys)
          A new Edition without any RangeElements at the specified keys.
 BeEdition works(IDRegion permissions, Filter endorsementsFilter, int flags)
          See comment in FeRangeElement
 
Methods inherited from class org.abora.gold.be.basic.BeRangeElement
addFeRangeElement, becomeOther, bertCrum, checkRecorders, contentsHash, delayedStoreBackfollow, delayedStoreBackfollow, feRangeElements, hCrum, inspect, inTrace, makeIdentical, mappingTo, owner, removeFeRangeElement, removeOParent, restartRE, sensorCrum, setOwner, storeBackfollow
 
Methods inherited from class org.abora.gold.snarf.Abraham
actualHashForEqual, becomeStub, cleanupGarbage, destroy, destruct, diskUpdate, dismantleStatistics, fetchInfo, fetchShepherd, flockInfo, forget, getInfo, getShepherdStubCategory, initTimeNonInherited, isConstructed, isDestructed, isEqual, isKindOf, isShepherd, isStub, isUnlocked, linkTimeNonInherited, newShepherd, remember, restartAbraham, restartAbraham, returnToken, staticTimeNonInherited, token
 
Methods inherited from class org.abora.gold.xpp.basic.Heaper
abstractDeclarationFor, abstractTypeFor, addMethodAttributeToInOf, addPackage, addPackageCategory, allClientProtocolOn, argumentTypesFor, arrow, blast, blast, BLAST, cachePromiseNameTable, cachePromiseNameTableIn, canYouBecome, cast, cleanPromiseClasses, clientClassesDo, clientFunctionsOn, clientMethodsOn, clientProtocol, clientProtocolDo, clientProtocolOn, clientProtocolOn, collectibleClasses, compare, compileClientSubclasses, compileConstantPromiseMethods, compileCreateFromRcvr, compileEQ, compileGeneratedClassMethod, compileGeneratedMethod, compileHook, compilePromise, compilePromiseDefaultMethods, compilePromiseFluidDeclarations, compilePromiseHandlers, compilePromiseMethods, compileRequestCreateMsgInArguments, compileRequestEvaluateMsgInReturningArguments, compileRPCSpecialistEvaluateMsgForReturningArguments, compileSendSelfTo, compileSendSelfToSendHook, compileStubbleMethods, compileSubclassStubbleMethods, computeMangle, computePreorder, constantTypeValue, convert, convertCopyDeclarations, convertDeferredDeclarations, convertProxyDeclarations, convertSubclassCopyDeclarations, convertSubclassDeferredDeclarations, convertSubclassProxyDeclarations, copyReferencesToType, create, create, create, create, create, create, create, create, create, create, createRequestClassArguments, definesProxyMethods, delete, deref, destructor, enum, enumFlags, equals, exportName, fetchAttribute, fetchPackage, fetchSuperCategory, fileOutClientProtocol, findCategory, findSenderAndReceiverMethods, findTailInto, flushPromiseNameTable, foo, freezeClientClasses, freezeClientProtocol, freezeStProtocol, frozenClasses, garbageCollect, garbageCollectFrom, gcOpportunity, gcOpportunity, generatedCategory, generatePromiseNames, getCategory, getOrMakePackage, getSuperCategory, handlerSignaturesFrom, hash, hashForEqual, hasProxyMethods, info_clientClasses, info_clientSideClasses, info_promiseClasses, info_stProtocol, inGC, initializedClasses, initializingClasses, initPackages, initStringHashSBoxes, inspectPieces, instanceSize, IntegerVar, isByProxy, isConstructed, isDestructed, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, make, makeClassTable, makeFillTable, makeRequestTable, mangle, markChildren, markCount, markInstances, mayBecome, mayBecomeAnySubclassOf, new1, newX, nonCopyVariables, notWorking, pack, packageClasses, packagingCategory, parseExportName, passe, pointerToStaticMember, pointerToStaticMember, pointerToVirtualMember, preorderMax, preorderNumber, PROBLEM, problems, promiseClass, promiseDefaultValue, promiseName, promiseNameTable, promiseToAbstract, registerPackageCategory, removeGeneratedCode, removeStubbleMethods, removeSubclassGeneratedCode, removeSubclassStubbleMethods, requestProcedure, requestProceduresFrom, returnTypeFor, rootName, scheduleTermination, sendProxyTo, serverNameFor, setGC, signal, signals, smalltalkSelector, stClientProtocol, stubbleSelectorTokenReturnsArguments, subclassNonCopyVariables, takeOop, togglePromiseName, togglePromiseOfParse, unimplemented, unmangle, verifyFreeze, wipeStubble
 
Methods inherited from class org.abora.gold.java.AboraHeaper
asOop, basicInspect, displayString, error, hack, halt, knownBug, mightNotImplement, REQUIRES, shouldImplement, shouldNotImplement, stubbleForSubclassResponsibility, thingToDo, willNotImplement
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myOrglRoot

protected OrglRoot myOrglRoot

myWorks

protected MuSet myWorks

myOwnProp

protected BertProp myOwnProp

myProp

protected BertProp myProp

myDetectors

protected PrimSet myDetectors
Constructor Detail

BeEdition

public BeEdition(OrglRoot root)

BeEdition

public BeEdition(Rcvr receiver)
Method Detail

combine

public BeEdition combine(BeEdition other)
An Edition with the contents of both Editions; where they share keys, they must have the
same RangeElement.


copy

public BeEdition copy(XnRegion keys)
A new Edition with the domain restricted to the given set of keys.


replace

public BeEdition replace(BeEdition other)
An Edition with the contents of both Editions; where they share keys, use the contents of
the other Edition. Equivalent to
this->copy (other->domain ()->complement ())->combine (other)


transformedBy

public BeEdition transformedBy(Mapping mapping)
An Edition with the keys transformed according to the given Mapping. Where the Mapping
takes several keys in the domain to a single key in the range, this Edition must have the
same RangeElement at all the domain keys.


with

public BeEdition with(Position key,
                      BeCarrier value)
A new Edition with a RangeElement at a specified key. The old value, if there is one, is
superceded. Equivalent to
this->replace (theServer ()->makeEditionWith (key, value))


withAll

public BeEdition withAll(XnRegion keys,
                         BeCarrier value)
A new Edition with a RangeElement at a specified set of keys. The old values, if there are
any, are superceded. Equivalent to
this->replace (theServer ()->makeEditionWithAll (keys, value))


without

public BeEdition without(Position key)
A new Edition without any RangeElement at a specified key. The old value, if there is one,
is removed. Equivalent to
this->copy (key->asRegion ()->complement ())


withoutAll

public BeEdition withoutAll(XnRegion keys)
A new Edition without any RangeElements at the specified keys. The old values, if there
are any, are removed. Equivalent to
this->copy (keys->complement ())


coordinateSpace

public CoordinateSpace coordinateSpace()
The space from which the keys of this Edition are taken. Equivalent to
this->domain ()->coordinateSpace ()


count

public IntegerVar count()
The number of keys in this Edition. Blasts if infinite. Equivalent to
this->domain ()->count ()


domain

public XnRegion domain()
All the keys in this Edition. May be infinite, or empty.


fetch

public FeRangeElement fetch(Position key)
Create a front end representation for what is at the given key.


get

public FeRangeElement get(Position key)
The value at the given key, or blast if there is no such key (i.e. if !! this->domain
()->hasMember (key)).


includesKey

public boolean includesKey(Position key)
Whether the given key is in the Edition. Equivalent to
this->domain ()->hasMember (key)


isEmpty

public boolean isEmpty()
Whether there are any keys in this Edition. Equivalent to
this->domain ()->isEmpty ()


isFinite

public boolean isFinite()
Whether there is a finite number of keys in this Edition. Equivalent to
this->domain ()->isFinite ()


isPurgeable

public boolean isPurgeable()
Description copied from class: Abraham
Return false only if the object cannot be flushed to disk. This will probably
only be false for Stamps and the like that contain session level pointers.

Overrides:
isPurgeable in class BeRangeElement

makeFe

public FeRangeElement makeFe(BeLabel label)
Description copied from class: BeRangeElement
Make a front end object (session level) for this backend object. If the receiver is an
Edition, there had better be a label.

Overrides:
makeFe in class BeRangeElement

rangeOwners

public IDRegion rangeOwners(XnRegion positions)
The owners of all the RangeElements in the given Region, or in the entire
Edition if no Region is specified.


retrieve

public Stepper retrieve(XnRegion region,
                        OrderSpec order,
                        int flags)
Essential. This is the fundamental retrieval operation. Return a stepper of bundles.
Each bundle is an association between a region in the domain and the range elements
associated with that region. Where the region is associated with data, for instance, the
bundle contains a PrimArray of the data elements.
If no Region is given, then reads out the whole thing.


theOne

public FeRangeElement theOne()
If this Edition has a single key, then the value at that key; if not, blasts. Equivalent
to
this->get (this->domain ()->theOne ())


visibleEndorsements

public CrossRegion visibleEndorsements()
All of the endorsements on this Edition and all Works which the CurrentKeyMaster can read.


endorse

public void endorse(CrossRegion endorsements)
Adds to the endorsements on this Edition. The set of endorsements must be a finite number
of (club ID, token ID) pairs.


endorsements

public CrossRegion endorsements()
All of the endorsements on this Edition.


prop

public BertProp prop()

propChange

public void propChange(PropChange change,
                       Prop nw)

propChanged

public void propChanged(PropChange change,
                        Prop old,
                        Prop nw,
                        PropFinder oldFinder)
update props


retract

public void retract(CrossRegion endorsements)
Removes endorsements from this Edition. Ignores all endorsements which you could have
removed, but which don't happen to be there right now.


totalEndorsements

public CrossRegion totalEndorsements()
All of the endorsements on this Edition and all Works directly on it


addDetector

public void addDetector(FeFillRangeDetector detect)
Add a detector which will be triggered with a FeEdition when a PlaceHolder becomes a
non-PlaceHolder


ownerAt

public ID ownerAt(Position key)
Return the owner for the given position in the receiver.


removeDetector

public void removeDetector(FeFillRangeDetector detect)
Remove a previously added detector


removeLastDetector

public void removeLastDetector()
Notify the edition that there are no remaining detectors on it.


ringDetectors

public void ringDetectors(FeEdition newIdentities)
Ring all my detectors with the given Edition as an argument


setRangeOwners

public BeEdition setRangeOwners(ID newOwner,
                                XnRegion region)
Changes the owner of all RangeElements; requires the authority of the current owner.
Returns the subset of this Edition whose owners did not get changed because of lack of
authority.


tryAllBecome

public Pair tryAllBecome(BeEdition newIdentities)
Change the identities of the RangeElements of this Edition to those at the same key in the
other Edition. The left piece of the result contains those object which are know to not be
able to become, because of
- lack of ownership authority
- different contents
- incompatible types
- no corresponding new identity
The right piece of the result is NULL if there is nothing more that might be done, or else
the remainder of the receiver on which we might be able to proceed. This material might
fail at a later time because of any of the reasons above; or it might succeed , even
though it failed this time because of
- synchronization problem
- just didn't feel like it
This is always required to make progress if it can, although it isn't required to make all
the progress that it might. Returns right=NULL when it can't make further progress.


keysLabelled

public XnRegion keysLabelled(BeLabel label)
The keys in this Edition at which there are Editions with the given label.


rebind

public BeEdition rebind(Position key,
                        BeEdition edition)
Replace the Edition at the given key, leaving the Label the same. Equivalent to
this->store (key, edition->labelled (CAST(FeEdition,this->get (key))->label ()))


restartE

public void restartE(Rcvr rcvr)

orglRoot

public OrglRoot orglRoot()

addOParent

public void addOParent(Loaf oparent)
add oparent to the set of upward pointers. Editions may
also have to propagate BertCrum change downward.

Overrides:
addOParent in class BeRangeElement

anyPasses

public boolean anyPasses(PropFinder finder)
Overrides:
anyPasses in class BeRangeElement

checkRecorders

public void checkRecorders(PropFinder finder,
                           SensorCrum scrum)
Description copied from class: BeRangeElement
does nothing. Overrides do something.

Overrides:
checkRecorders in class BeRangeElement

currentWorks

public ImmuSet currentWorks()
The Works currently on this Edition


getOrMakeBe

public BeRangeElement getOrMakeBe(Position key)
An actual, non-virtual FE range element at that key. Used by become operation to get
something to pass into BeRangeElement::become ()


introduceWork

public void introduceWork(BeWork work)
A Work has been newly revised to point at me.


removeWork

public void removeWork(BeWork work)
The Work is no longer onto this Edition. Remove the backpointer.


updateBCrumTo

public boolean updateBCrumTo(BertCrum newBCrum)
My bertCrum must not be leafward of newBCrum.
Thus it must be LE to newCrum. Otherwise correct it and recur.

Overrides:
updateBCrumTo in class BeRangeElement

keysOf

public XnRegion keysOf(FeRangeElement value)
All of the keys in this Edition at which the given RangeElement can be found. Equivalent
to
this->sharedRegion (theServer ()->makeEditionWith (some position, value))


mapSharedTo

public Mapping mapSharedTo(BeEdition other)
A Mapping from each of the keys in this Edition to all of the keys in the other Edition
which have the same RangeElement.


notSharedWith

public BeEdition notSharedWith(BeEdition other,
                               int flags)
The subset of this Edition whose RangeElements are not in the other Edition. Equivalent to
this->copy (this->sharedRegion (other, flags)->complement ())


sharedRegion

public XnRegion sharedRegion(BeEdition other,
                             int flags)
The subset of the keys of this Edition which have RangeElements that are in the other
Edition. If both flags are false, then equivalent to
this->mapSharedTo (other)->domain ()
If nestThis, then returns not only keys of RangeElements which are in the other, but also
keys of Editions which lead to RangeElements which are in the other.
If nestOther, then looks not only for RangeElements which are values of the other Edition,
but also those which are values of sub-Editions of the other Edition. (This option will
probably not be supported in version 1.0)


sharedWith

public BeEdition sharedWith(BeEdition other,
                            int flags)
The subset of this Edition whose RangeElements are in the other Edition. If the same
RangeElement is in this Edition at several different keys, all keys will be in the result
(provided the RangeElement is also in the other Edition). Equivalent to
this->copy (this->sharedRegion (other, flags))


works

public BeEdition works(IDRegion permissions,
                       Filter endorsementsFilter,
                       int flags)
Description copied from class: BeRangeElement
See comment in FeRangeElement

Overrides:
works in class BeRangeElement

dismantle

public void dismantle()
Description copied from class: Abraham
Disconnect me from the universe and throw me off the disk.
For GC safety, we keep a strongptr to ourself -- is this still necessary?

Overrides:
dismantle in class BeRangeElement

printOn

public void printOn(java.io.PrintWriter oo)
Overrides:
printOn in class Heaper

attachTrailBlazer

public XnRegion attachTrailBlazer(TrailBlazer blazer)
Attach the TrailBlazer to this Edition, and return the region of partiality it is attached
to


fossilRelease

public void fossilRelease(RecorderFossil oldGrabber)

getOrMakeTrailBlazer

public TrailBlazer getOrMakeTrailBlazer()
Get or make a TrailBlazer for recording results into this Edition. Blast if there is
already more than one


rangeTranscluders

public BeEdition rangeTranscluders(XnRegion region,
                                   Filter directFilter,
                                   Filter indirectFilter,
                                   int flags,
                                   BeEdition otherTrail)
See FeEdition


rangeWorks

public BeEdition rangeWorks(XnRegion region,
                            Filter filter,
                            int flags,
                            BeEdition otherTrail)
See FeEdition


scheduleDelayedBackfollow

public void scheduleDelayedBackfollow(RecorderFossil fossil,
                                      XnRegion region)
Walk down orgl's O-tree (onto range elements of interest) planting pointers to a Fossil of
BackfollowRecorder in the sensor canopy and collecting agenda items to propagate their
endorsement and permission filtering info rootward in the sensor canopy.
Create and schedule a structure of AgendaItems to:
- First: Do the filtering info propagation.
- Second: Find and record any currently matching stamps.
This is done in this order so collection of the future part of recorder information is
completed before the present part is extracted, keeping significant information from
falling through the crack.


scheduleImmediateBackfollow

public void scheduleImmediateBackfollow(RecorderFossil fossil,
                                        XnRegion region)
Find and record any currently matching Editions.


propChanged

public void propChanged(PropChange change,
                        Prop old,
                        Prop nw)

sharedRegion

public XnRegion sharedRegion(BeEdition other)

detectors

public MuSet detectors()

fetchOrMakeBeRangeElement

public BeRangeElement fetchOrMakeBeRangeElement(Position key)
An actual, non-virtual FE range element at that key. Used by become operation to get
something to pass into BeRangeElement::become ()


parcelAt

public BeEdition parcelAt(Position key)

parcels

public BeEdition parcels()

reorganize

public BeEdition reorganize(XnRegion oldRegion,
                            OrderSpec oldOrder,
                            XnRegion newRegion,
                            OrderSpec newOrder)
Rearrange the keys of this Edition to lie in the given region, with the given ordering.
Equivalent to server->makeEdition (this->asArray (oldRegion, oldOrder), newRegion,
newOrder, NULL), except that it doesn't require everything to be in the same zone (and is
of course more efficient).


scheduleDelayedBackfollow

public void scheduleDelayedBackfollow(RecorderFossil fossil)

scheduleImmediateBackfollow

public void scheduleImmediateBackfollow(RecorderFossil fossil)

setAllOwners

public BeEdition setAllOwners(ID newOwner)

setAllOwners

public BeEdition setAllOwners(ID newOwner,
                              XnRegion region)

unendorse

public void unendorse(CrossRegion endorsements)

wait

public void wait(XnSensor sensor)

sendSelfTo

public void sendSelfTo(Xmtr xmtr)
Description copied from class: Heaper
do nothing

Overrides:
sendSelfTo in class BeRangeElement

make

public static Heaper make(OrglRoot oroot)


Translation - Copyright © 2003 David G Jones. All Rights Reserved.
Original Udanax-Gold - Copyright © 1979-1999 Udanax.com. All rights reserved.