org.abora.gold.be.ents
Class ActualOrglRoot

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.snarf.Abraham
                    |
                    +--org.abora.gold.be.ents.OPart
                          |
                          +--org.abora.gold.be.ents.OrglRoot
                                |
                                +--org.abora.gold.be.ents.ActualOrglRoot

public class ActualOrglRoot
extends OrglRoot


Field Summary
protected  Loaf myO
           
protected  XnRegion myRegion
           
 
Fields inherited from class org.abora.gold.be.ents.OrglRoot
myHCrum
 
Fields inherited from class org.abora.gold.be.ents.OPart
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
ActualOrglRoot(Loaf fullcrum, XnRegion region)
           
ActualOrglRoot(Rcvr receiver)
           
 
Method Summary
 XnRegion attachTrailBlazer(TrailBlazer blazer)
          Attach the TrailBlazer to this Edition, and return the region of partiality it is attached
to
 Stepper bundleStepper(XnRegion region, OrderSpec order)
          Return a stepper of bundles according to the order.
 void checkRecorders(PropFinder finder, SensorCrum scrum)
          check any recorders that might be triggered by a change in the stamp
 void checkTrailBlazer(TrailBlazer blazer)
          Make sure that everyone below here that might have a TrailBlazer, has the given one
 OrglRoot combine(OrglRoot another)
           
 int contentsHash()
          A hash of the contents of this flock
 CoordinateSpace coordinateSpace()
          the kind of domain elements allowed
 OrglRoot copy(XnRegion region)
          Copy out each simple region and then combine them.
 OrglRoot copyDistinction(XnRegion region)
          region must be a valid thing to store as a split.
 OrglRoot copySimple(XnRegion simpleRegion)
          simpleRegion must be simple!! Copy out each distinction.
 IntegerVar count()
           
 void crums()
           
 void delayedFindMatching(PropFinder finder, RecorderFossil fossil, ResultRecorder recorder)
          This does the 'now' part of setting up a recorder, once the 'later' part has been set up.
It does a walk south on the O-tree, then walks back north on all the H-trees, filtered by
the Bert canopy.
 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?
 java.lang.String displayString()
           
 XnRegion domain()
           
 FeRangeElement fetch(Position key, BeEdition edition)
          get an individual element
 ActualOrglRoot fetchEasyCombine(ActualOrglRoot another)
           
 TrailBlazer fetchTrailBlazer()
          If there is a TrailBlazer somewhere below this Edition, return one of them
 void fill(XnRegion keys, Arrangement toArrange, PrimDataArray toArray, Dsp dsp, BeEdition edition)
           
 Loaf fullcrum()
           
 BeRangeElement getBe(Position key)
          Get or Make the BeRangeElement at the location.
 void inform(Position key, HRoot value)
           
 void inspect()
           
 void inspectTraces()
           
 boolean isEmpty()
          ActualOrglRoots believe they have stuff beneath them.
 XnRegion keysLabelled(BeLabel label)
          Just search for now.
static Heaper make(Loaf loaf, XnRegion region)
          create a new orgl root
 ActualOrglRoot makeNew(XnRegion newSplit, ActualOrglRoot newIn, ActualOrglRoot newOut)
           
 Mapping mapSharedTo(TracePosition trace)
          return a mapping from my data to corresponding stuff in the given trace
 ID ownerAt(Position key)
          Return the owner for the given position in the receiver.
 void printOn(java.io.PrintWriter aStream)
           
 XnRegion rangeOwners(XnRegion positions)
           
 void sendSelfTo(Xmtr xmtr)
          do nothing
 OrglRoot setAllOwners(ID owner)
          Recur assigning owners.
 XnRegion sharedRegion(TracePosition trace)
          Return a region for all the stuff in this orgl that can backfollow to trace.
 XnRegion simpleDomain()
          Return a simple region that encloses the domain of the receiver.
 PrimSpec specAt(Position key)
          Return the owner for the given position in the receiver.
 byte splay(XnRegion region)
          Splay a region into its own subtree as close as possible to the root
 void storeRecordingAgents(RecorderFossil recorder, Agenda agenda)
          Go ahead and actually store the recorder in the sensor canopy.
 boolean testChild(SplayEntLoaf child)
          Return true if child is a child.
 boolean testHChild(HistoryCrum child)
          Return true if child is a child.
 OrglRoot transformedBy(Dsp externalDsp)
          Return a copy with externalDsp added to the receiver's dsp.
 void triggerDetector(FeFillRangeDetector detect)
          A Detector has been added to my parent.
 Pair tryAllBecome(OrglRoot other)
          Change the identities of the RangeElements of this Edition to those at the same key in the
other Edition.
 OrglRoot unTransformedBy(Dsp externalDsp)
          Return a copy with externalDsp removed from the receiver's dsp.
 boolean updateBCrumTo(BertCrum newBCrum)
          My bertCrum must not be leafward of newBCrum.
Thus it must be LE to newCrum.
 XnRegion usedDomain()
           
 void wait(XnSensor sensor)
           
 
Methods inherited from class org.abora.gold.be.ents.OrglRoot
asDataTable, asTable, checkRecorders, delayedFindMatching, fetch, findMatching, hCrum, hCut, introduceEdition, introduceStamp, make, make, make, make, makeData, makeData, propChanged, propChanger, removeEdition, removeStamp
 
Methods inherited from class org.abora.gold.be.ents.OPart
hinspect, inspectCanopy, inspectMenuArray, inspectRecorderCanopy, mappingTo, sensorCrum, showOn
 
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, isPurgeable, 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, 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

myO

protected Loaf myO

myRegion

protected XnRegion myRegion
Constructor Detail

ActualOrglRoot

public ActualOrglRoot(Loaf fullcrum,
                      XnRegion region)

ActualOrglRoot

public ActualOrglRoot(Rcvr receiver)
Method Detail

attachTrailBlazer

public XnRegion attachTrailBlazer(TrailBlazer blazer)
Description copied from class: OPart
Attach the TrailBlazer to this Edition, and return the region of partiality it is attached
to

Overrides:
attachTrailBlazer in class OrglRoot

checkRecorders

public void checkRecorders(PropFinder finder,
                           SensorCrum scrum)
Description copied from class: OrglRoot
check any recorders that might be triggered by a change in the stamp

Overrides:
checkRecorders in class OrglRoot

checkTrailBlazer

public void checkTrailBlazer(TrailBlazer blazer)
Description copied from class: OPart
Make sure that everyone below here that might have a TrailBlazer, has the given one

Overrides:
checkTrailBlazer in class OrglRoot

delayedFindMatching

public void delayedFindMatching(PropFinder finder,
                                RecorderFossil fossil,
                                ResultRecorder recorder)
Description copied from class: OrglRoot
This does the 'now' part of setting up a recorder, once the 'later' part has been set up.
It does a walk south on the O-tree, then walks back north on all the H-trees, filtered by
the Bert canopy.

Overrides:
delayedFindMatching in class OrglRoot

fetchTrailBlazer

public TrailBlazer fetchTrailBlazer()
Description copied from class: OPart
If there is a TrailBlazer somewhere below this Edition, return one of them

Overrides:
fetchTrailBlazer in class OrglRoot

storeRecordingAgents

public void storeRecordingAgents(RecorderFossil recorder,
                                 Agenda agenda)
Description copied from class: OrglRoot
Go ahead and actually store the recorder in the sensor canopy. However, instead of
propogating the props immediately, accumulate all those agenda items into the 'agenda'
parameter. This is done instead of scheduling them directly because our client needs to
schedule something else following all the prop propogation.

Overrides:
storeRecordingAgents in class OrglRoot

triggerDetector

public void triggerDetector(FeFillRangeDetector detect)
Description copied from class: OrglRoot
A Detector has been added to my parent. Walk down and trigger it on all non-partial stuff

Overrides:
triggerDetector in class OrglRoot

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 OrglRoot

coordinateSpace

public CoordinateSpace coordinateSpace()
the kind of domain elements allowed

Overrides:
coordinateSpace in class OrglRoot

count

public IntegerVar count()
Overrides:
count in class OrglRoot

domain

public XnRegion domain()
Overrides:
domain in class OrglRoot

fetch

public FeRangeElement fetch(Position key,
                            BeEdition edition)
get an individual element

Overrides:
fetch in class OrglRoot

fullcrum

public Loaf fullcrum()

getBe

public BeRangeElement getBe(Position key)
Get or Make the BeRangeElement at the location.

Overrides:
getBe in class OrglRoot

isEmpty

public boolean isEmpty()
ActualOrglRoots believe they have stuff beneath them.

Overrides:
isEmpty in class OrglRoot

keysLabelled

public XnRegion keysLabelled(BeLabel label)
Just search for now.

Overrides:
keysLabelled in class OrglRoot

mapSharedTo

public Mapping mapSharedTo(TracePosition trace)
return a mapping from my data to corresponding stuff in the given trace

Overrides:
mapSharedTo in class OrglRoot

ownerAt

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

Overrides:
ownerAt in class OrglRoot

rangeOwners

public XnRegion rangeOwners(XnRegion positions)
Overrides:
rangeOwners in class OrglRoot

setAllOwners

public OrglRoot setAllOwners(ID owner)
Recur assigning owners. Return the portion of the receiver that
couldn't be assigned.

Overrides:
setAllOwners in class OrglRoot

sharedRegion

public XnRegion sharedRegion(TracePosition trace)
Return a region for all the stuff in this orgl that can backfollow to trace.

Overrides:
sharedRegion in class OrglRoot

simpleDomain

public XnRegion simpleDomain()
Description copied from class: OrglRoot
Return a simple region that encloses the domain of the receiver.

Overrides:
simpleDomain in class OrglRoot

specAt

public PrimSpec specAt(Position key)
Return the owner for the given position in the receiver.

Overrides:
specAt in class OrglRoot

tryAllBecome

public Pair tryAllBecome(OrglRoot other)
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.


usedDomain

public XnRegion usedDomain()
Overrides:
usedDomain in class OrglRoot

bundleStepper

public Stepper bundleStepper(XnRegion region,
                             OrderSpec order)
Return a stepper of bundles according to the order.

Overrides:
bundleStepper in class OrglRoot

combine

public OrglRoot combine(OrglRoot another)
Overrides:
combine in class OrglRoot

copy

public OrglRoot copy(XnRegion region)
Copy out each simple region and then combine them.

Overrides:
copy in class OrglRoot

copyDistinction

public OrglRoot copyDistinction(XnRegion region)
region must be a valid thing to store as a split.


copySimple

public OrglRoot copySimple(XnRegion simpleRegion)
simpleRegion must be simple!! Copy out each distinction.


fill

public void fill(XnRegion keys,
                 Arrangement toArrange,
                 PrimDataArray toArray,
                 Dsp dsp,
                 BeEdition edition)

makeNew

public ActualOrglRoot makeNew(XnRegion newSplit,
                              ActualOrglRoot newIn,
                              ActualOrglRoot newOut)

transformedBy

public OrglRoot transformedBy(Dsp externalDsp)
Return a copy with externalDsp added to the receiver's dsp.

Overrides:
transformedBy in class OrglRoot

unTransformedBy

public OrglRoot unTransformedBy(Dsp externalDsp)
Return a copy with externalDsp removed from the receiver's dsp.

Overrides:
unTransformedBy in class OrglRoot

crums

public void crums()

displayString

public java.lang.String displayString()
Overrides:
displayString in class AboraHeaper

inspect

public void inspect()
Overrides:
inspect in class OPart

inspectTraces

public void inspectTraces()

testChild

public boolean testChild(SplayEntLoaf child)
Return true if child is a child. Used for debugging.


testHChild

public boolean testHChild(HistoryCrum child)
Return true if child is a child. Used for debugging.


printOn

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

fetchEasyCombine

public ActualOrglRoot fetchEasyCombine(ActualOrglRoot another)

splay

public byte splay(XnRegion region)
Splay a region into its own subtree as close as possible to the root


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 OrglRoot

contentsHash

public int contentsHash()
Description copied from class: Abraham
A hash of the contents of this flock

Overrides:
contentsHash in class OrglRoot

inform

public void inform(Position key,
                   HRoot value)
Overrides:
inform in class OrglRoot

wait

public void wait(XnSensor sensor)
Overrides:
wait in class OrglRoot

sendSelfTo

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

Overrides:
sendSelfTo in class OrglRoot

make

public static Heaper make(Loaf loaf,
                          XnRegion region)
create a new orgl root



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