class Versioned: (source)
Known subclasses: twisted.test.test_persisted.SecondVersionedSubClass
, twisted.test.test_persisted.VersionedSubClass
, twisted.web.distrib.ResourcePublisher
, twisted.words.im.basesupport.AbstractAccount
This type of object is persisted with versioning information.
I have a single class attribute, the int persistenceVersion. After I am unserialized (and styles.doUpgrade() is called), self.upgradeToVersionX() will be called for each version upgrade I must undergo.
For example, if I serialize an instance of a Foo(Versioned) at version 4 and then unserialize it when the code is at version 9, the calls:
self.upgradeToVersion5() self.upgradeToVersion6() self.upgradeToVersion7() self.upgradeToVersion8() self.upgradeToVersion9()
will be made. If any of these methods are undefined, a warning message will be printed.
Method | __getstate__ |
Get state, adding a version number to it on its way out. |
Method | __setstate__ |
Undocumented |
Method | version |
(internal) Do a version upgrade. |
Class Variable | persistence |
Undocumented |
Class Variable | persistence |
Undocumented |
Instance Variable | __dict__ |
Undocumented |
twisted.words.im.basesupport.AbstractAccount
Get state, adding a version number to it on its way out.