Package twisted :: Package im :: Module basesupport :: Class AbstractAccount

[frames | no frames]

## Class AbstractAccount

    Versioned --+
                |
               AbstractAccount

Known Subclasses:
  `IRCAccount`, `PBAccount`, `TOCAccount`

Base class for Accounts.

I am the start of an implementation of `IAccount`, I implement `isOnline` and most of `logOn`, though you'll need to implement `_startLogOn` in a subclass.

Method Summary
| `__init__(self, accountName, autoLogin, username, password, host, port)`
| `__getstate__(self)`
| `__repr__(self)`
| `_cb_logOn(self, client)`
| `_clientLost(self, client, reason)`
Failure | ``_loginFailed`(self, reason)` Errorback for `logOn`.
Deferred `interfaces.IClient` | ``_startLogOn`(self, chatui)` Start the sign on process.
| ``getGroup`(self, name)` Group factory.
| ``getPerson`(self, name)` Person factory.
| `isOnline(self)`
Deferred `interfaces.IClient` | ``logOn`(self, chatui)` Log on to this account.
| `upgrateToVersion2(self)`
Inherited from Versioned
| ``__setstate__`(self, state)`
| ``versionUpgrade`(self)` (internal) Do a version upgrade.

Instance Variable Summary
boolean | `_isConnecting`: Whether I am in the process of establishing a connection to the server.
boolean | `_isOnline`: Whether I am currently on-line with the server.
| `accountName`:
| `autoLogin`:
| `host`:
| `password`:
| `port`:
| `username`:

Class Variable Summary
`class` | `_groupFactory` = `twisted.im.basesupport.AbstractGroup`
`class` | `_personFactory` = `twisted.im.basesupport.AbstractPerson`
`NoneType` | `client` = None
`int` | `persistanceVersion` = 2
Inherited from Versioned
`tuple` | `persistenceForgets` = `()`
`int` | `persistenceVersion` = 0

Method Details

### _loginFailed(self, reason)

Errorback for `logOn`.

  Parameters:
    `reason`
    (type=Failure)
  Returns:
    reason, for further processing in the callback chain.
    (type=Failure)

### _startLogOn(self, chatui)

Start the sign on process.

Factored out of `logOn`.

  Returns:
    Deferred `interfaces.IClient`

### getGroup(self, name)

Group factory.

  Parameters:
    `name` - Name of the group on this account.
    (type=string)

### getPerson(self, name)

Person factory.

  Parameters:
    `name` - Name of the person on this account.
    (type=string)

### logOn(self, chatui)

Log on to this account.

Takes care to not start a connection if a connection is already in progress. You will need to implement `_startLogOn` for this to work, and it would be a good idea to override `_loginFailed` too.

  Returns:
    Deferred `interfaces.IClient`

Instance Variable Details

### _isConnecting

Whether I am in the process of establishing a connection to the server.

  Type:
    boolean
  Value:

        0

### _isOnline

Whether I am currently on-line with the server.

  Type:
    boolean
  Value:

        0

### accountName

### autoLogin

### host

### password

### port

### username

Class Variable Details

### client

  Type:
    `NoneType`
  Value:

        None

### persistanceVersion

  Type:
    `int`
  Value:

        2

Generated by Epydoc 2.0 on Sat May 15 20:08:16 2004 | http://epydoc.sf.net