Package twisted :: Package cred :: Module service :: Class Service

[show private | hide private]
[frames | no frames]

## Class Service

    OriginalAccessor --+
                       |
           Versioned --+
                       |
      ApplicationService --+
                           |
                          Service

Known Subclasses:
  `MailService`, `Service`, `MailsicleService`

I am a service that internet applications interact with.

I represent a set of abstractions which users may interact with over a specified protocol.

See also: `twisted.spread.pb.Service`

Method Summary
| ``__init__`(self, serviceName, serviceParent, authorizer, application)` Create me, attached to the given application.
| `__delattr__(self, k)` (inherited from `OriginalAccessor`)
| `__getattr__(self, k)` (inherited from `OriginalAccessor`)
| ``__getstate__`(self, dict)` Get state, adding a version number to it on its way out. (inherited from `Versioned`)
| `__setattr__(self, k, v)` (inherited from `OriginalAccessor`)
| `__setstate__(self, state)` (inherited from `Versioned`)
| ``addPerspective`(self, perspective)` Add a perspective to this Service.
| ``cachePerspective`(self, perspective)` Cache a perspective loaded from an external data source.
| ``createPerspective`(self, name)` Create a perspective from self.perspectiveClass and add it to this service.
| ``disownServiceParent`(self)` Have my parent disown me. (inherited from `ApplicationService`)
| `get_application(self)` (inherited from `ApplicationService`)
| ``getPerspectiveForIdentity`(self, name, identity)` A hook to use if the identity is required when getting the perspective.
| ``getPerspectiveNamed`(self, name)` Return a perspective that represents a user for this service.
| ``getPerspectiveRequest`(self, name)` Return a Deferred which is a request for a perspective on this service.
| ``getServiceName`(self)` The name of this service.
| ``getServiceType`(self)` Get a string describing the type of this service.
Deferred Perspective | ``loadPerspective`(self, name)` Load a perspective from an external data-source.
| ``reallyDel`(self, k)` *actually* del self.k without incurring side-effects. (inherited from `OriginalAccessor`)
| ``reallySet`(self, k, v)` *actually* set self.k to v without incurring side-effects. (inherited from `OriginalAccessor`)
| `set_application(self, application)` (inherited from `ApplicationService`)
| `setApplication(self, application)` (inherited from `ApplicationService`)
| ``setServiceParent`(self, serviceParent)` Set my parent, which must be a service collection of some kind. (inherited from `ApplicationService`)
| ``startService`(self)` This call is made as a service starts up. (inherited from `ApplicationService`)
| ``stopService`(self)` This call is made before shutdown. (inherited from `ApplicationService`)
| ``uncachePerspective`(self, perspective)` Uncache a perspective loaded from an external data source.
| `upgradeToVersion1(self)` (inherited from `ApplicationService`)
| ``versionUpgrade`(self)` (internal) Do a version upgrade. (inherited from `Versioned`)

Class Variable Summary
`MetaInterface` | `__implements__`
`class` | `Perspective`
`NoneType` | `serviceName`
`NoneType` | `serviceType`

Method Details

### __init__(self, serviceName, serviceParent=None, authorizer=None, application=None)
(Constructor)

Create me, attached to the given application.

Arguments: application, a twisted.internet.app.Application instance.

### addPerspective(self, perspective)

Add a perspective to this Service.

### cachePerspective(self, perspective)

Cache a perspective loaded from an external data source.

Perspectives that were 'loaded' from memory will not be uncached.

### createPerspective(self, name)

Create a perspective from self.perspectiveClass and add it to this service.

### getPerspectiveForIdentity(self, name, identity)

A hook to use if the identity is required when getting the perspective.

### getPerspectiveNamed(self, name)

Return a perspective that represents a user for this service. (DEPRECATED)

Raises a KeyError if no such user exists. Override this method to provide dynamic instantiation of perspectives. It is only deprecated to call this method directly, not to override it; when you need to get a Perspective, call getPerspectiveRequest.

### getPerspectiveRequest(self, name)

Return a Deferred which is a request for a perspective on this service.

### getServiceName(self)

The name of this service.

### getServiceType(self)

Get a string describing the type of this service.

### loadPerspective(self, name)

Load a perspective from an external data-source.

If no such data-source exists, return None. Implement this if you want to load your perspectives from somewhere else (e.g. LDAP or a database). It is not recommended to call this directly, since getPerspectiveRequest provides management of caching perspectives.

  Returns:
    Deferred Perspective

### uncachePerspective(self, perspective)

Uncache a perspective loaded from an external data source.

Perspectives that were 'loaded' from memory will not be uncached.

Class Variable Details

### __implements__

  Type:
    `MetaInterface`
  Value:

        <class 'twisted.cred.service.IService'>

### Perspective

`Perspective` = `twisted.cred.perspective.Perspective`

### serviceName

  Type:
    `NoneType`
  Value:

        None

### serviceType

  Type:
    `NoneType`
  Value:

        None

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