org.abora.gold.be.canopy
Class BertCrum

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.snarf.Abraham
                    |
                    +--org.abora.gold.be.canopy.CanopyCrum
                          |
                          +--org.abora.gold.be.canopy.BertCrum

public class BertCrum
extends CanopyCrum

This implementation tracks the endorsement information with
a strictly binary tree. The tree gets heuristically balanced
upon insertion of new elements in such a way that the ocrums
pointing at a particular canopyCrum need not be updated.
Therefore we should not bother storing backpointers. I''m
doing so currently in case we change algorithms.
Deletion may require backpointers to eliminate joins
with the deleted crums.


Field Summary
 
Fields inherited from class org.abora.gold.be.canopy.CanopyCrum
child1, child2, FlagEndorsements, maxH, minH, myFlags, myOwnFlags, myRefCount, OtherClubs, OtherEndorsements, parent, TheEFlagsCache, ThePFlagsCache
 
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
BertCrum()
          Make a canopyCrum for a root: it has no children.
BertCrum(BertCrum first, BertCrum second)
          Create a new parent for two BertCrums.
My client must bring my properties up to date.
BertCrum(Rcvr receiver)
           
 
Method Summary
 CanopyCrum another()
          BertCrum create verify2.
 CanopyCache canopyCache()
          should have one per Ent
static int flagsFor(IDRegion permissions, CrossRegion endorsements, boolean isNotPartializable, boolean isSensorWaiting)
          The flag word corresponding to the given props
 PropChange fullChange()
           
 void inspectHCrums()
           
 void inspectMenuArray()
           
 boolean isNotPartializable()
           
static int isNotPartializableFlag()
          Flag bit for active Editions
 boolean isSensorWaiting()
           
static int isSensorWaitingFlag()
          Flag bit for active Editions
static Heaper make()
           
 CanopyCrum makeNew()
           
 CanopyCrum makeNewParent(CanopyCrum first, CanopyCrum second)
          Make a new crum that contains both first and second.
This method just makes a new parent whose properties are empty.
 void printOn(java.lang.Object aStream)
           
 void sendSelfTo(Xmtr xmtr)
          do nothing
 void showOn(java.lang.Object oo)
           
static void staticTimeNonInherited()
           
 
Methods inherited from class org.abora.gold.be.canopy.CanopyCrum
addPointer, changeCanopy, changeCanopy, changeHeight, childArray, children, computeJoin, contentsHash, dismantle, displayString, endorsementFlagLimit, endorsementsFlags, expand, fetchChild1, fetchChild2, fetchParent, firstEndorsementsFlag, flags, heightDiff, includeCanopy, initTimeNonInherited, inspect, inspectSubCanopy, isLE, isLeaf, joint, linkTimeNonInherited, makeJoin, maxHeight, minHeight, otherClubsFlag, otherEndorsementsFlag, ownFlags, permissionsFlags, propChanger, publicClubFlag, refCount, removePointer, setOwnFlags, setParent, useEndorsementFlags, verify1, verify2, verifyHeight
 
Methods inherited from class org.abora.gold.snarf.Abraham
actualHashForEqual, becomeStub, cleanupGarbage, destroy, destruct, diskUpdate, dismantleStatistics, fetchInfo, fetchShepherd, flockInfo, forget, getInfo, getShepherdStubCategory, isConstructed, isDestructed, isEqual, isKindOf, isPurgeable, isShepherd, isStub, isUnlocked, newShepherd, remember, restartAbraham, restartAbraham, returnToken, 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, printOn, 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
 

Constructor Detail

BertCrum

public BertCrum()
Make a canopyCrum for a root: it has no children.


BertCrum

public BertCrum(BertCrum first,
                BertCrum second)
Create a new parent for two BertCrums.
My client must bring my properties up to date. This constructor just makes a new parent
whose properties are empty


BertCrum

public BertCrum(Rcvr receiver)
Method Detail

canopyCache

public CanopyCache canopyCache()
should have one per Ent

Overrides:
canopyCache in class CanopyCrum

makeNew

public CanopyCrum makeNew()
Overrides:
makeNew in class CanopyCrum

another

public CanopyCrum another()
BertCrum create verify2.

Overrides:
another in class CanopyCrum

inspectHCrums

public void inspectHCrums()

inspectMenuArray

public void inspectMenuArray()

printOn

public void printOn(java.lang.Object aStream)

showOn

public void showOn(java.lang.Object oo)

makeNewParent

public CanopyCrum makeNewParent(CanopyCrum first,
                                CanopyCrum second)
Description copied from class: CanopyCrum
Make a new crum that contains both first and second.
This method just makes a new parent whose properties are empty. My client must bring my
properties up to date

Overrides:
makeNewParent in class CanopyCrum

fullChange

public PropChange fullChange()
Overrides:
fullChange in class CanopyCrum

isNotPartializable

public boolean isNotPartializable()

isSensorWaiting

public boolean isSensorWaiting()

sendSelfTo

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

Overrides:
sendSelfTo in class CanopyCrum

staticTimeNonInherited

public static void staticTimeNonInherited()

make

public static Heaper make()

flagsFor

public static int flagsFor(IDRegion permissions,
                           CrossRegion endorsements,
                           boolean isNotPartializable,
                           boolean isSensorWaiting)
The flag word corresponding to the given props


isNotPartializableFlag

public static int isNotPartializableFlag()
Flag bit for active Editions


isSensorWaitingFlag

public static int isSensorWaitingFlag()
Flag bit for active Editions



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