Package flumotion :: Package component :: Module component :: Class BaseComponentMedium
[show private | hide private]
[frames | no frames]

Class BaseComponentMedium

         Loggable --+            
                    |            
Jellyable --+       |            
            |       |            
 Serializable --+   |            
                |   |            
    Referenceable --+            
                    |            
        Referenceable --+        
                        |        
               BaseMedium --+    
                            |    
                PingingMedium --+
                                |
                               BaseComponentMedium

Known Subclasses:
FeedComponentMedium, BouncerMedium

I am a medium interfacing with a manager-side avatar. I implement a Referenceable for the manager's avatar to call on me. I have a remote reference to the manager's avatar to call upon. I am created by the ComponentClientFactory.
Method Summary
  __init__(self, component)
  getIP(self)
Return the IP of this component based on connection to the manager.
  getManagerIP(self)
Return the manager IP as seen by us.
  remote_callMethod(self, methodName, *args, **kwargs)
dict remote_getConfig(self)
Return the configuration of the component.
flumotion.common.planet.WorkerJobState remote_getState(self)
Return the state of the component, which will be serialized to a flumotion.common.planet.ManagerJobState object.
  remote_getUIState(self)
Get a WorkerComponentUIState containing details needed to present an admin-side UI state
  remote_reloadComponent(self)
Reload modules in the component.
  remote_setup(self, config)
Set up the component and the component's medium with the given config, in that order.
  remote_start(self, *args, **kwargs)
  remote_stop(self)
  setAuthenticator(self, authenticator)
Set the authenticator the client factory has used to log in to the manager.
  setup(self, config)
  _reloaded(self)
    Inherited from PingingMedium
  setRemoteReference(self, remote)
  startPinging(self, disconnect)
  stopPinging(self)
  _disconnect(self)
  _ping(self)
  _pingCheck(self)
    Inherited from BaseMedium
  callRemote(self, name, *args, **kwargs)
Call the given method with the given arguments remotely on the server-side avatar.
  callRemoteLogging(self, level, stackDepth, name, *args, **kwargs)
Call the given method with the given arguments remotely on the server-side avatar.
  hasRemoteReference(self)
Does the medium have a remote reference to a server-side avatar ?
  runBundledFunction(self, *args, **kwargs)
    Inherited from Referenceable
  remoteMessageReceived(self, broker, message, args, kwargs)
    Inherited from Referenceable
  jellyFor(self, jellier)
(internal)
    Inherited from Serializable
  processUniqueID(self)
Return an ID which uniquely represents this object for this process.
    Inherited from Jellyable
  getStateFor(self, jellier)
    Inherited from Loggable
  debug(self, *args)
Log a debug message.
dict doLog(self, level, where, format, *args, **kwargs)
Log a message at the given level, with the possibility of going higher up in the stack.
  error(self, *args)
Log an error.
  info(self, *args)
Log an informational message.
  log(self, *args)
Log a log message.
  logFunction(self, *args)
Overridable log function.
  logObjectName(self)
Overridable object name function.
  warning(self, *args)
Log a warning.
  warningFailure(self, failure, swallow)
Log a warning about a Failure.

Instance Variable Summary
    Inherited from BaseMedium
twisted.spread.pb.RemoteReference remote: a remote reference to the server-side object on which perspective_(methodName) methods can be called

Class Variable Summary
Implements __implemented__ = <implementedBy flumotion.component.com...
ClassProvides __provides__ = <zope.interface.declarations.ClassProvide...
flumotion.twisted.pb.Authenticator authenticator: the authenticator used to log in to manager
str logCategory: Implementors can provide a category to log their messages under.
    Inherited from PingingMedium
float _pingCheckInterval = 12.5                                                                  
NoneType _pingDC = None                                                                  
int _pingInterval = 5                                                                     
    Inherited from BaseMedium
flumotion.common.bundleclient.BundleLoader bundleLoader = None                                                                  
str remoteLogName: name to use to log the other side of the connection
    Inherited from Referenceable
NoneType perspective = None                                                                  
    Inherited from Jellyable
ClassProvides __providedBy__ = <zope.interface.declarations.ClassProvi...

Method Details

__init__(self, component)
(Constructor)

Parameters:
component - flumotion.component.component.BaseComponent

getIP(self)

Return the IP of this component based on connection to the manager.

Note: this is insufficient in general, and should be replaced by network mapping stuff later.

getManagerIP(self)

Return the manager IP as seen by us.

remote_getConfig(self)

Return the configuration of the component.
Returns:
component's current configuration
           (type=dict)

remote_getState(self)

Return the state of the component, which will be serialized to a flumotion.common.planet.ManagerJobState object.
Returns:
state of component
           (type=flumotion.common.planet.WorkerJobState)

remote_getUIState(self)

Get a WorkerComponentUIState containing details needed to present an admin-side UI state

remote_reloadComponent(self)

Reload modules in the component.

remote_setup(self, config)

Set up the component and the component's medium with the given config, in that order.

setAuthenticator(self, authenticator)

Set the authenticator the client factory has used to log in to the manager. Can be reused by the component's medium to make feed connections which also get authenticated by the manager's bouncer.
Parameters:
authenticator
           (type=flumotion.twisted.pb.Authenticator)

Class Variable Details

__implemented__

Type:
Implements
Value:
<implementedBy flumotion.component.component.BaseComponentMedium>      

__provides__

Type:
ClassProvides
Value:
<zope.interface.declarations.ClassProvides object at 0xf663794c>       

authenticator

the authenticator used to log in to manager
Type:
flumotion.twisted.pb.Authenticator

logCategory

Implementors can provide a category to log their messages under.
Type:
str
Value:
'basecompmed'                                                          

Generated by Epydoc 2.1 on Sun Oct 26 16:38:52 2008 http://epydoc.sf.net