Known subclasses: twisted.spread.pb.Cacheable, twisted.spread.pb.CopyableFailure, twisted.spread.test.test_jelly.ClassA, twisted.spread.test.test_jelly.ClassB, twisted.spread.test.test_pb.BadCopyable, twisted.spread.test.test_pb.NewStyleCopy, twisted.spread.test.test_pb.NewStyleCopy2, twisted.spread.test.test_pb.SimpleCopy, twisted.spread.test.test_pb.SimpleFactoryCopy, twisted.web.server.Request

Subclass me to get copied each time you are returned from or passed to a remote method.

When I am returned from or passed to a remote method call, I will be converted into data via a set of callbacks (see my methods for more info). That data will then be serialized using Jelly, and sent to the peer.

The peer will then look up the type to represent this with; see RemoteCopy for details.

Method getStateToCopy Gather state to send when I am serialized for a peer.
Method getStateToCopyFor Gather state to send when I am serialized for a particular perspective.
Method getTypeToCopy Determine what type tag to send for me.
Method getTypeToCopyFor Determine what type tag to send for me.
Method jellyFor Assemble type tag and state to copy for this broker.

Inherited from Serializable:

Method processUniqueID Return an ID which uniquely represents this object for this process.

Inherited from Jellyable (via Serializable):

Method getStateFor Undocumented
def getStateToCopy(self):

Gather state to send when I am serialized for a peer.

I will default to returning self.__dict__. Override this to customize this behavior.

def getStateToCopyFor(self, perspective):

Gather state to send when I am serialized for a particular perspective.

I will default to calling getStateToCopy. Override this to customize this behavior.

def getTypeToCopy(self):

Determine what type tag to send for me.

By default, send the string representation of my class (package.module.Class); normally this is adequate, but you may override this to change it.

def getTypeToCopyFor(self, perspective):

Determine what type tag to send for me.

By default, defer to self.getTypeToCopy() normally this is adequate, but you may override this to change it.

def jellyFor(self, jellier):

Assemble type tag and state to copy for this broker.

This will call getTypeToCopyFor and getStateToCopy, and return an appropriate s-expression to represent me.

API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.