org.abora.gold.xcvr
Class SpecialistXmtr

java.lang.Object
  |
  +--org.abora.gold.java.AboraHeaper
        |
        +--org.abora.gold.xpp.basic.Heaper
              |
              +--org.abora.gold.xcvr.Xmtr
                    |
                    +--org.abora.gold.xcvr.SpecialistXmtr
Direct Known Subclasses:
Binary2Xmtr, TextyXmtr

public class SpecialistXmtr
extends Xmtr

myIbids maps from already sent heapers to their ibid numbers.


Field Summary
protected  PrimIndexTable myIbids
           
protected  byte myNextIbid
           
protected  TransferSpecialist mySpecialist
           
protected static PrimIndexTable XmtrIbidCache
           
 
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
SpecialistXmtr(TransferSpecialist specialist)
           
 
Method Summary
 void destruct()
          Classes should implement this message rather than a destructor.
 void endInstance()
           
 void endPacket()
           
static void linkTimeNonInherited()
           
 void sendBooleanVar(boolean b)
           
 void sendCategory(Category cat)
           
 void sendHeaper(Heaper object)
           
 void sendIbid(int pos)
          The object represented by pos has already been sent.
 void sendIEEEDoubleVar(double x)
           
 void sendInt32(int n)
           
 void sendInt8(byte bytex)
           
 void sendIntegerVar(IntegerVar n)
           
 void sendNULL()
           
 void sendString(java.lang.String s)
           
 void sendUInt32(int n)
           
 void sendUInt8(byte bytex)
           
 void sendUInt8Data(UInt8Array array)
          Send the contents of the UInt8Array as data.
 TransferSpecialist specialist()
           
 void startInstance(Heaper heaper, Category cat)
          Register heaper as an object to be sent across the wire, and send cat
as its category.
 void startNewInstance(Category cat)
           
 
Methods inherited from class org.abora.gold.xcvr.Xmtr
actualHashForEqual, isEqual, send, sendData
 
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, cleanupGarbage, 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, destroy, 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, isEqual, isEqualOrSubclassOf, isGenerated, isIntType, isKindOf, isRawType, isUnlocked, 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, sendSelfTo, 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

mySpecialist

protected TransferSpecialist mySpecialist

myIbids

protected PrimIndexTable myIbids

myNextIbid

protected byte myNextIbid

XmtrIbidCache

protected static PrimIndexTable XmtrIbidCache
Constructor Detail

SpecialistXmtr

public SpecialistXmtr(TransferSpecialist specialist)
Method Detail

sendBooleanVar

public void sendBooleanVar(boolean b)
Overrides:
sendBooleanVar in class Xmtr

sendCategory

public void sendCategory(Category cat)

sendHeaper

public void sendHeaper(Heaper object)
Overrides:
sendHeaper in class Xmtr

sendIEEEDoubleVar

public void sendIEEEDoubleVar(double x)
Overrides:
sendIEEEDoubleVar in class Xmtr

sendInt32

public void sendInt32(int n)
Overrides:
sendInt32 in class Xmtr

sendInt8

public void sendInt8(byte bytex)
Overrides:
sendInt8 in class Xmtr

sendIntegerVar

public void sendIntegerVar(IntegerVar n)
Overrides:
sendIntegerVar in class Xmtr

sendString

public void sendString(java.lang.String s)
Overrides:
sendString in class Xmtr

sendUInt32

public void sendUInt32(int n)
Overrides:
sendUInt32 in class Xmtr

sendUInt8

public void sendUInt8(byte bytex)
Overrides:
sendUInt8 in class Xmtr

sendUInt8Data

public void sendUInt8Data(UInt8Array array)
Send the contents of the UInt8Array as data.

Overrides:
sendUInt8Data in class Xmtr

endInstance

public void endInstance()

startInstance

public void startInstance(Heaper heaper,
                          Category cat)
Register heaper as an object to be sent across the wire, and send cat
as its category. cat might be different from heaper->getCategory()
if another object is being substituted for heaper.


endPacket

public void endPacket()

sendNULL

public void sendNULL()

specialist

public TransferSpecialist specialist()

startNewInstance

public void startNewInstance(Category cat)

sendIbid

public void sendIbid(int pos)
The object represented by pos has already been sent. Send just a reference by number.


destruct

public void destruct()
Description copied from class: Heaper
Classes should implement this message rather than a destructor. We use this so
the destruction behavior implemented in abstract superclasses can access the
vtable of the concrete run-time type in C++. Using a message makes C++
parallel the Smalltalk semantics for delete. Destroy will actually call the destructor.

Overrides:
destruct in class Heaper

linkTimeNonInherited

public static void linkTimeNonInherited()


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