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

[show private | hide private]
[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<interfaces.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)`
| `__setstate__(self, state)` (inherited from `Versioned`)
| ``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)`
| ``versionUpgrade`(self)` (internal) Do a version upgrade. (inherited from `Versioned`)

Instance Variable Summary
| `accountName` -
| `autoLogin` -
| `host` -
| `password` -
| `port` -
| `username` -

Class Variable Summary
`class` | `AbstractGroup` - A Callable that will return a `IGroup`appropriate for this account type.
`class` | `AbstractPerson` - A Callable that will return a `IPerson`appropriate for this account type.
`NoneType` | `client`
`int` | `persistanceVersion`

Method Details

### 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

### accountName

### autoLogin

### host

### password

### port

### username

Class Variable Details

### AbstractGroup

`AbstractGroup` = `twisted.im.basesupport.AbstractGroup`

### AbstractPerson

`AbstractPerson` = `twisted.im.basesupport.AbstractPerson`

### client

  Type:
    `NoneType`
  Value:

        None

### persistanceVersion

  Type:
    `int`
  Value:

        2

Generated by Epydoc 1.1 on Thu May 8 13:16:25 2003 | http://epydoc.sf.net