org.abora.gold.be.basic
Class BeGrandMap

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

public class BeGrandMap
extends Abraham

Rewrite notes
3/7/92 ravi
- we had decided to have myRangeElementIDs be a GrandSetTable, but for now its just a
Table onto IDRegions, since that is what we have implemented right now


Field Summary
protected static IntegerVar BackendCount
           
protected  boolean myAcceptingConnectionsFlag
           
protected  ID myAccessClubID
           
protected  ID myAdminClubID
           
protected  ID myArchiveClubID
           
protected  ID myClubDirectoryID
           
protected  ID myEmptyClubID
           
protected  FilterSpace myEndorsementFilterSpace
           
protected  PtrArray myEndorsementFlags
           
protected  CrossSpace myEndorsementSpace
           
protected  Ent myEnt
           
protected  BeEdition myGateLockSmithEdition
           
protected  FilterSpace myGlobalIDFilterSpace
           
protected  IDSpace myGlobalIDSpace
           
protected  BeEdition myGrants
           
protected  MuTable myIDCounters
           
protected  Sequence myIdentifier
           
protected  MuTable myIDHolders
           
protected  Counter myLocalIDSpaceCounter
           
protected  ID myPublicClubID
           
protected  boolean myPurgeable
           
protected  MuTable myRangeElementIDs
           
protected  MuTable myRangeElements
           
protected  ImmuTable myWrapperEndorsements
           
 
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
BeGrandMap(Rcvr receiver)
           
BeGrandMap(Sequence identifier)
           
 
Method Summary
 void acceptConnections(boolean open)
          See FeAdminer
 ID accessClubID()
           
 ID adminClubID()
           
 ID archiveClubID()
           
 ID assignID(BeRangeElement value)
          Remember the two way association between value and its new ID.
 boolean atTryIntroduce(ID iD, BeRangeElement value)
          Remember the two way association between value and the supplied ID.
 void bePurgeable()
          Allow the GrandMap to be purged.
 BeCarrier carrier(BeRangeElement element)
          Return a carrier that has the rangeElement with a new Label if appropriate.
 void clubConsistencyCheck()
          Check that the BeClub structure matches the Editions underneath them
 ID clubDirectoryID()
           
 void coldBoot()
           
 int contentsHash()
          A hash of the contents of this flock
 ID emptyClubID()
           
 FilterSpace endorsementFilterSpace()
           
 CrossSpace endorsementSpace()
           
 BeRangeElement fetch(ID iD)
          The actual BeRangeElement at that ID, or NULL if there is none
 BeClub fetchClub(ID iD)
          If there is a club at the given ID, return it.
 FeEdition gateLockSmithEdition()
           
 BeRangeElement get(ID iD)
          The actual BeRangeElement at that ID, or blast if there is none
 BeClub getClub(ID iD)
          Get a BeClub from the GrandMap.
 FeRangeElement getFe(ID iD)
          Get what is at the the given ID as a front end object; blast if there is nothing there
 FeRangeElement getOrMakeFe(ID iD)
          Get what is at the the given ID as a front end object; if there is nothing there, then
make the appropriate PlaceHolder
 Counter getOrMakeIDCounter(Sequence backend, IntegerVar number)
          Get a canonical Counter for an IDSpace, or make a new one
 BeIDHolder getOrMakeIDHolder(ID iD)
          If there is already an IDHolder for the ID then return it, otherwise make one
 FilterSpace globalIDFilterSpace()
          The FilterSpace on global IDSpace
 IDSpace globalIDSpace()
          The global IDSpace
 void grant(ID clubID, IDRegion globalIDs)
          See FeAdminer
 ID grantAt(ID iD)
          Who has been granted authority to assign that ID
 TableStepper grants(IDRegion clubIDs, IDRegion globalIDs)
          See FeAdminer
 Sequence identifier()
           
 ID iDOf(BeRangeElement value)
          Find the ID of a BeRangeElement.
 IDRegion iDsOf(BeRangeElement value)
          Find the IDs of a BeRangeElement, whether there are none, one, or several
 IDSpace iDSpace(Sequence identifier)
          Recreate an old IDSpace from externally stored numbers
 boolean isAcceptingConnections()
          See FeAdminer
 boolean isPurgeable()
          The Grandmap never gets purged unless explicitly allowed by calling bePurgeable.
static Heaper make()
           
 BeClub newClub(FeEdition desc)
           
 BeClub newClub(FeEdition desc, ID iD)
          Make a new Club assigned to either iD or a generated ID id iD is NULL.
 BeEdition newDataEdition(PrimDataArray values, XnRegion keys, OrderSpec ordering)
          Creates an Edition mapping from a Region of keys to the values in an array.
 BeDataHolder newDataHolder(PrimValue value)
          Make a new DataHolder with the given contents.
 BeEdition newEditionWith(Position key, BeCarrier value)
          A single key-value mapping
 BeEdition newEditionWithAll(XnRegion keys, BeCarrier value)
          A single key-value mapping
 BeEdition newEmptyEdition(CoordinateSpace cs)
          Create an empty Edition.
 ID newID()
           
 BeIDHolder newIDHolder(ID iD)
          Make a new IDHolder for the given ID.
 IDSpace newIDSpace()
          Make a new globally unique IDSpace
 BeLabel newLabel()
          Make a new label.
 BePlaceHolder newPlaceHolder()
          Make a new PlaceHolder.
 BeEdition newPlaceHolders(XnRegion region)
          Make an Edition with a region full of unique PlaceHolders
 BeEdition newValueEdition(PtrArray values, XnRegion keys, OrderSpec ordering)
          Creates an Edition mapping from a Region of keys to the values in an array.
 BeWork newWork(FeEdition contents)
          Make a new Work (without an ID) with the given contents.
 ID placeOwnerID(ID iD)
          The ID of the Club which owns whatever is at the given ID
 ID publicClubID()
           
 void restartBeGrandMap(Rcvr rcvr)
           
 void sendSelfTo(Xmtr xmtr)
          do nothing
 void setGateLockSmithEdition(FeEdition edition)
           
static void staticTimeNonInherited()
           
 ScruTable wrapperEndorsements()
          A mapping from wrapper names to endorsements
static IntegerVar xuTime()
          Seconds since the beginning of time
 
Methods inherited from class org.abora.gold.snarf.Abraham
actualHashForEqual, becomeStub, cleanupGarbage, destroy, destruct, diskUpdate, dismantle, dismantleStatistics, fetchInfo, fetchShepherd, flockInfo, forget, getInfo, getShepherdStubCategory, initTimeNonInherited, isConstructed, isDestructed, isEqual, isKindOf, isShepherd, isStub, isUnlocked, linkTimeNonInherited, 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, displayString, error, hack, halt, inspect, 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

myIdentifier

protected Sequence myIdentifier

myGlobalIDSpace

protected IDSpace myGlobalIDSpace

myLocalIDSpaceCounter

protected Counter myLocalIDSpaceCounter

myGlobalIDFilterSpace

protected FilterSpace myGlobalIDFilterSpace

myEndorsementSpace

protected CrossSpace myEndorsementSpace

myEndorsementFilterSpace

protected FilterSpace myEndorsementFilterSpace

myIDHolders

protected MuTable myIDHolders

myIDCounters

protected MuTable myIDCounters

myRangeElements

protected MuTable myRangeElements

myRangeElementIDs

protected MuTable myRangeElementIDs

myEnt

protected Ent myEnt

myEmptyClubID

protected ID myEmptyClubID

myPublicClubID

protected ID myPublicClubID

myAdminClubID

protected ID myAdminClubID

myArchiveClubID

protected ID myArchiveClubID

myAccessClubID

protected ID myAccessClubID

myClubDirectoryID

protected ID myClubDirectoryID

myGateLockSmithEdition

protected BeEdition myGateLockSmithEdition

myWrapperEndorsements

protected ImmuTable myWrapperEndorsements

myEndorsementFlags

protected PtrArray myEndorsementFlags

myPurgeable

protected boolean myPurgeable

myGrants

protected BeEdition myGrants

myAcceptingConnectionsFlag

protected boolean myAcceptingConnectionsFlag

BackendCount

protected static IntegerVar BackendCount
Constructor Detail

BeGrandMap

public BeGrandMap(Sequence identifier)

BeGrandMap

public BeGrandMap(Rcvr receiver)
Method Detail

clubConsistencyCheck

public void clubConsistencyCheck()
Check that the BeClub structure matches the Editions underneath them


coldBoot

public void coldBoot()

restartBeGrandMap

public void restartBeGrandMap(Rcvr rcvr)

bePurgeable

public void bePurgeable()
Allow the GrandMap to be purged. The GrandMap should NOT be used after this is called.


isPurgeable

public boolean isPurgeable()
The Grandmap never gets purged unless explicitly allowed by calling bePurgeable.

Overrides:
isPurgeable in class Abraham

contentsHash

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

Overrides:
contentsHash in class Abraham

acceptConnections

public void acceptConnections(boolean open)
See FeAdminer


assignID

public ID assignID(BeRangeElement value)
Remember the two way association between value and its new ID.


atTryIntroduce

public boolean atTryIntroduce(ID iD,
                              BeRangeElement value)
Remember the two way association between value and the supplied ID.


clubDirectoryID

public ID clubDirectoryID()

endorsementFilterSpace

public FilterSpace endorsementFilterSpace()

endorsementSpace

public CrossSpace endorsementSpace()

fetch

public BeRangeElement fetch(ID iD)
The actual BeRangeElement at that ID, or NULL if there is none


fetchClub

public BeClub fetchClub(ID iD)
If there is a club at the given ID, return it.


gateLockSmithEdition

public FeEdition gateLockSmithEdition()

get

public BeRangeElement get(ID iD)
The actual BeRangeElement at that ID, or blast if there is none


getClub

public BeClub getClub(ID iD)
Get a BeClub from the GrandMap.


getFe

public FeRangeElement getFe(ID iD)
Get what is at the the given ID as a front end object; blast if there is nothing there


getOrMakeIDCounter

public Counter getOrMakeIDCounter(Sequence backend,
                                  IntegerVar number)
Get a canonical Counter for an IDSpace, or make a new one


getOrMakeIDHolder

public BeIDHolder getOrMakeIDHolder(ID iD)
If there is already an IDHolder for the ID then return it, otherwise make one


globalIDFilterSpace

public FilterSpace globalIDFilterSpace()
The FilterSpace on global IDSpace


globalIDSpace

public IDSpace globalIDSpace()
The global IDSpace


grant

public void grant(ID clubID,
                  IDRegion globalIDs)
See FeAdminer


grantAt

public ID grantAt(ID iD)
Who has been granted authority to assign that ID


grants

public TableStepper grants(IDRegion clubIDs,
                           IDRegion globalIDs)
See FeAdminer


identifier

public Sequence identifier()

iDOf

public ID iDOf(BeRangeElement value)
Find the ID of a BeRangeElement. Blast if there is no ID or if there is more than one


iDsOf

public IDRegion iDsOf(BeRangeElement value)
Find the IDs of a BeRangeElement, whether there are none, one, or several


isAcceptingConnections

public boolean isAcceptingConnections()
See FeAdminer


newID

public ID newID()

newIDSpace

public IDSpace newIDSpace()
Make a new globally unique IDSpace


placeOwnerID

public ID placeOwnerID(ID iD)
The ID of the Club which owns whatever is at the given ID


setGateLockSmithEdition

public void setGateLockSmithEdition(FeEdition edition)

wrapperEndorsements

public ScruTable wrapperEndorsements()
A mapping from wrapper names to endorsements


newDataEdition

public BeEdition newDataEdition(PrimDataArray values,
                                XnRegion keys,
                                OrderSpec ordering)
Creates an Edition mapping from a Region of keys to the values in an array. The ordering
specifies the correspondance between the keys and the indices in the array.
The Region must have the same count as the array.
You must give an owner for the newly created DataHolders.


newEditionWith

public BeEdition newEditionWith(Position key,
                                BeCarrier value)
A single key-value mapping


newEditionWithAll

public BeEdition newEditionWithAll(XnRegion keys,
                                   BeCarrier value)
A single key-value mapping


newEmptyEdition

public BeEdition newEmptyEdition(CoordinateSpace cs)
Create an empty Edition. This should really be canonicalized.


newPlaceHolders

public BeEdition newPlaceHolders(XnRegion region)
Make an Edition with a region full of unique PlaceHolders


newValueEdition

public BeEdition newValueEdition(PtrArray values,
                                 XnRegion keys,
                                 OrderSpec ordering)
Creates an Edition mapping from a Region of keys to the values in an array. The ordering
specifies the correspondance between the keys and the indices in the array.
The Region must have the same count as the array.


carrier

public BeCarrier carrier(BeRangeElement element)
Return a carrier that has the rangeElement with a new Label if appropriate.


newClub

public BeClub newClub(FeEdition desc,
                      ID iD)
Make a new Club assigned to either iD or a generated ID id iD is NULL.


newDataHolder

public BeDataHolder newDataHolder(PrimValue value)
Make a new DataHolder with the given contents.


newIDHolder

public BeIDHolder newIDHolder(ID iD)
Make a new IDHolder for the given ID. Uses an existing one if it exists.


newLabel

public BeLabel newLabel()
Make a new label.


newPlaceHolder

public BePlaceHolder newPlaceHolder()
Make a new PlaceHolder.


newWork

public BeWork newWork(FeEdition contents)
Make a new Work (without an ID) with the given contents. Everything
else comes from the fluid environment.


accessClubID

public ID accessClubID()

adminClubID

public ID adminClubID()

archiveClubID

public ID archiveClubID()

emptyClubID

public ID emptyClubID()

publicClubID

public ID publicClubID()

newClub

public BeClub newClub(FeEdition desc)

getOrMakeFe

public FeRangeElement getOrMakeFe(ID iD)
Get what is at the the given ID as a front end object; if there is nothing there, then
make the appropriate PlaceHolder


iDSpace

public IDSpace iDSpace(Sequence identifier)
Recreate an old IDSpace from externally stored numbers


sendSelfTo

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

Overrides:
sendSelfTo in class Abraham

make

public static Heaper make()

staticTimeNonInherited

public static void staticTimeNonInherited()

xuTime

public static IntegerVar xuTime()
Seconds since the beginning of time



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