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

[frames | no frames]

## Class Service

          Accessor --+
                     |
         Versioned --+
                     |
    ApplicationService --+
                         |
                        Service

Known Subclasses:
  `Service`

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.
| ``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.
| ``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.
| `setServiceParent(self, parent)`
| ``uncachePerspective`(self, perspective)` Uncache a perspective loaded from an external data source.
Inherited from ApplicationService
| ``disownServiceParent`(self)` Have my parent disown me.
| ``get_application`(self)`
| ``set_application`(self, application)`
| ``setApplication`(self, application)`
| ``startService`(self)` This call is made as a service starts up.
| ``stopService`(self)` This call is made before shutdown.
| ``upgradeToVersion1`(self)`
Inherited from Accessor
| ``__delattr__`(self, k)`
| ``__getattr__`(self, k)`
| ``__setattr__`(self, k, v)`
| ``reallyDel`(self, k)` *actually* del self.k without incurring side-effects.
| ``reallySet`(self, k, v)` *actually* set self.k to v without incurring side-effects.
Inherited from Versioned
| ``__getstate__`(self, dict)` Get state, adding a version number to it on its way out.
| ``__setstate__`(self, state)`
| ``versionUpgrade`(self)` (internal) Do a version upgrade.

Class Variable Summary
`class` | `__implements__` = `twisted.cred.service.IService`
`class` | `perspectiveClass` = `twisted.cred.perspective.Perspective`
`NoneType` | `serviceName` = None
`NoneType` | `serviceType` = None
Inherited from ApplicationService
`int` | `persistenceVersion` = 1
`NoneType` | `serviceParent` = None
`int` | `serviceRunning` = 0
Inherited from Versioned
`tuple` | `persistenceForgets` = `()`

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.

  Overrides:
    `twisted.internet.app.ApplicationService.__init__`

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

### serviceName

  Type:
    `NoneType`
  Value:

        None

### serviceType

  Type:
    `NoneType`
  Value:

        None

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