class documentation

class twisted.spread.banana.Banana(protocol.Protocol, styles.Ephemeral): (source)

Known subclasses: twisted.spread.pb.Broker

View In Hierarchy

Banana implements the Banana s-expression protocol, client and server.

Instance Variable knownDialects These are the profiles supported by this Banana implementation.
Instance Variable prefixLimit Undocumented
Method setPrefixLimit Set the prefix limit for decoding done by this protocol instance.
Method connectionReady Surrogate for connectionMade Called after protocol negotiation.
Instance Variable currentDialect Undocumented
Method callExpressionReceived Undocumented
Method connectionMade Called when a connection is made.
Method gotItem Undocumented
Instance Variable buffer Undocumented
Method dataReceived Called whenever data is received.
Method expressionReceived Called when an expression (list, string, or int) is received.
Class Variable outgoingVocabulary Undocumented
Class Variable incomingVocabulary Undocumented
Method __init__ Undocumented
Instance Variable listStack Undocumented
Instance Variable outgoingSymbols Undocumented
Instance Variable outgoingSymbolCount Undocumented
Instance Variable isClient Undocumented
Method sendEncoded Send the encoded representation of the given object:
Instance Variable _smallestLongInt Undocumented
Instance Variable _smallestInt Undocumented
Instance Variable _largestInt Undocumented
Instance Variable _largestLongInt Undocumented
Method _selectDialect Undocumented
Method _encode Undocumented

Inherited from Protocol:

Class Variable factory Undocumented
Method logPrefix Return a prefix matching the class name, to identify log messages related to this protocol instance.
Method connectionLost Called when the connection is shut down.

Inherited from BaseProtocol (via Protocol):

Instance Variable connected Undocumented
Instance Variable transport Undocumented
Method makeConnection Make a connection to a transport and a server.

Inherited from Ephemeral:

Method __reduce__ Serialize any subclass of Ephemeral in a way which replaces it with Ephemeral itself.
Method __getstate__ Undocumented
Method __setstate__ Undocumented
Instance Variable __class__ Undocumented
knownDialects = (source)
These are the profiles supported by this Banana implementation.
(type: list of bytes)
prefixLimit = (source)

Undocumented

def setPrefixLimit(self, limit): (source)

Set the prefix limit for decoding done by this protocol instance.

See AlsosetPrefixLimit
_smallestLongInt = (source)

Undocumented

_smallestInt = (source)

Undocumented

_largestInt = (source)

Undocumented

_largestLongInt = (source)

Undocumented

def connectionReady(self): (source)

Surrogate for connectionMade Called after protocol negotiation.

def _selectDialect(self, dialect): (source)

Undocumented

currentDialect = (source)

Undocumented

def callExpressionReceived(self, obj): (source)

Undocumented

def connectionMade(self): (source)

Called when a connection is made.

This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.

def gotItem(self, item): (source)

Undocumented

buffer = (source)

Undocumented

(type: bytes)
def dataReceived(self, chunk): (source)

Called whenever data is received.

Use this method to translate to a higher-level message. Usually, some callback will be made upon the receipt of each complete protocol message.

ParameterschunkUndocumented
dataa string of indeterminate length. Please keep in mind that you will probably need to buffer some data, as partial (or multiple) protocol messages may be received! I recommend that unit tests for protocols call through to this method with differing chunk sizes, down to one byte at a time.
def expressionReceived(self, lst): (source)

Called when an expression (list, string, or int) is received.

outgoingVocabulary = (source)

Undocumented

(type: dict[bytes, int])
incomingVocabulary = (source)

Undocumented

(type: dict)
def __init__(self, isClient=1): (source)

Undocumented

listStack = (source)

Undocumented

(type: list)
outgoingSymbols = (source)

Undocumented

outgoingSymbolCount = (source)

Undocumented

(type: int)
isClient = (source)

Undocumented

def sendEncoded(self, obj): (source)

Send the encoded representation of the given object:

ParametersobjAn object to encode and send.
ReturnsNone
RaisesBananaErrorIf the given object is not an instance of one of the types supported by Banana.
def _encode(self, obj, write): (source)

Undocumented

API Documentation for Twisted, generated by pydoctor 20.12.1 at 2021-02-28 19:53:36.