OPSI.Util.AMP module

This module is part of the desktop management solution opsi

(open pc server integration) http://www.opsi.org

Copyright (C) 2010 Andrey Petrov Copyright (C) 2010 uib GmbH

http://www.uib.de/

All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

@copyright: uib GmbH <info@uib.de> @author: Christian Kampka <c.kampka@uib.de> @license: GNU General Public License version 2

class OPSI.Util.AMP.ChunkedArgument(**kw)

Bases: twisted.protocols.amp.Command

allErrors = {<class 'OPSI.Util.AMP.RemoteExecutionException'>: 'RemoteExecutionError', <class 'OPSI.Util.AMP.OpsiProcessException'>: 'OpsiProcessError'}
arguments = [('tag', <twisted.protocols.amp.Integer object>), ('chunk', <twisted.protocols.amp.String object>)]
commandName = 'ChunkedArgument'
errors = {<class 'OPSI.Util.AMP.RemoteExecutionException'>: 'RemoteExecutionError', <class 'OPSI.Util.AMP.OpsiProcessException'>: 'OpsiProcessError'}
requiresAnswer = True
response = [('result', <twisted.protocols.amp.Integer object>)]
reverseErrors = {'RemoteExecutionError': <class 'OPSI.Util.AMP.RemoteExecutionException'>, 'OpsiProcessError': <class 'OPSI.Util.AMP.OpsiProcessException'>}
class OPSI.Util.AMP.OpsiProcessAddress(name)

Bases: twisted.internet.address.UNIXAddress

generateUniqueName()
name
class OPSI.Util.AMP.OpsiProcessConnector(socket, timeout=None, reactor=<twisted.internet.epollreactor.EPollReactor object>)

Bases: object

connect()
connectionFailed(reason)
disconnect()
factory

alias of OpsiProcessProtocolFactory

remote

alias of RemoteDaemonProxy

exception OPSI.Util.AMP.OpsiProcessException(failure)

Bases: exceptions.Exception

class OPSI.Util.AMP.OpsiProcessProtocol

Bases: OPSI.Util.AMP.OpsiQueryingProtocol, OPSI.Util.AMP.OpsiResponseProtocol

class OPSI.Util.AMP.OpsiProcessProtocolFactory(remote=None, dataport=None, reactor=<twisted.internet.epollreactor.EPollReactor object>)

Bases: twisted.internet.protocol.ReconnectingClientFactory

addNotifier(callback, errback=None)
buildProtocol(addr)
clientConnectionFailed(connector, reason)
notifyFailure(failure)
notifySuccess(*args, **kwargs)
protocol

alias of OpsiProcessProtocol

removeNotifier(callback, errback=None)
shutdown()
class OPSI.Util.AMP.OpsiQueryingProtocol

Bases: twisted.protocols.amp.AMP

chunkedResponseReceived(tag, chunk)
closeDataSink()
getNextTag()
getResponseBuffer(tag)
openDataSink(address)
sendRemoteCall(method, args=[], kwargs={})
class OPSI.Util.AMP.OpsiResponseProtocol

Bases: twisted.protocols.amp.AMP

assignDataPort(protocol)
chunkReceived(tag, chunk)
closeDataPort(result=None)
processFailure(failure)
processResult(result, tag)
remoteProcessCallReceived(tag, name, argString)
class OPSI.Util.AMP.RemoteArgument(optional=False)

Bases: twisted.protocols.amp.Argument

fromString(str)
toString(obj)
class OPSI.Util.AMP.RemoteDaemonProxy(protocol)

Bases: object

attachDataPort(dataport)
exception OPSI.Util.AMP.RemoteExecutionException

Bases: exceptions.Exception

class OPSI.Util.AMP.RemoteProcessCall(**kw)

Bases: twisted.protocols.amp.Command

allErrors = {<class 'OPSI.Util.AMP.RemoteExecutionException'>: 'RemoteExecutionError', <class 'OPSI.Util.AMP.OpsiProcessException'>: 'OpsiProcessError'}
arguments = [('name', <twisted.protocols.amp.String object>), ('argString', <twisted.protocols.amp.String object>), ('tag', <twisted.protocols.amp.Integer object>)]
commandName = 'RemoteProcessCall'
errors = {<class 'OPSI.Util.AMP.RemoteExecutionException'>: 'RemoteExecutionError', <class 'OPSI.Util.AMP.OpsiProcessException'>: 'OpsiProcessError'}
requiresAnswer = True
response = [('tag', <twisted.protocols.amp.Integer object>), ('result', <OPSI.Util.AMP.RemoteArgument object>)]
reverseErrors = {'RemoteExecutionError': <class 'OPSI.Util.AMP.RemoteExecutionException'>, 'OpsiProcessError': <class 'OPSI.Util.AMP.OpsiProcessException'>}
class OPSI.Util.AMP.ResponseBufferPush(**kw)

Bases: twisted.protocols.amp.Command

allErrors = {<class 'OPSI.Util.AMP.RemoteExecutionException'>: 'RemoteExecutionError', <class 'OPSI.Util.AMP.OpsiProcessException'>: 'OpsiProcessError'}
arguments = [('tag', <twisted.protocols.amp.Integer object>), ('chunk', <twisted.protocols.amp.String object>)]
commandName = 'ResponseBufferPush'
errors = {<class 'OPSI.Util.AMP.RemoteExecutionException'>: 'RemoteExecutionError', <class 'OPSI.Util.AMP.OpsiProcessException'>: 'OpsiProcessError'}
requiresAnswer = True
response = [('result', <twisted.protocols.amp.Integer object>)]
reverseErrors = {'RemoteExecutionError': <class 'OPSI.Util.AMP.RemoteExecutionException'>, 'OpsiProcessError': <class 'OPSI.Util.AMP.OpsiProcessException'>}