Python zope.interface.provider() Examples
The following are 30
code examples of zope.interface.provider().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
zope.interface
, or try the search function
.
Example #1
Source File: endpoints.py From learn_python3_spider with MIT License | 6 votes |
def __init__(self, reactor, path, timeout=30, checkPID=0): """ @param reactor: An L{IReactorUNIX} provider. @param path: The path to the Unix socket file, used when connecting @type path: str @param timeout: Number of seconds to wait before assuming the connection has failed. @type timeout: int @param checkPID: If True, check for a pid file to verify that a server is listening. @type checkPID: bool """ self._reactor = reactor self._path = path self._timeout = timeout self._checkPID = checkPID
Example #2
Source File: endpoints.py From learn_python3_spider with MIT License | 6 votes |
def __init__(self, connectedDeferred, wrappedProtocol): """ @param connectedDeferred: The L{Deferred} that will callback with the C{wrappedProtocol} when it is connected. @param wrappedProtocol: An L{IProtocol} provider that will be connected. """ self._connectedDeferred = connectedDeferred self._wrappedProtocol = wrappedProtocol for iface in [interfaces.IHalfCloseableProtocol, interfaces.IFileDescriptorReceiver, interfaces.IHandshakeListener]: if iface.providedBy(self._wrappedProtocol): directlyProvides(self, iface)
Example #3
Source File: endpoints.py From learn_python3_spider with MIT License | 6 votes |
def __init__(self, reactor, port, backlog, interface): """ @param reactor: An L{IReactorTCP} provider. @param port: The port number used for listening @type port: int @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to @type interface: str """ self._reactor = reactor self._port = port self._backlog = backlog self._interface = interface
Example #4
Source File: test_verify.py From learn_python3_spider with MIT License | 6 votes |
def test_staticmethod_hit_on_class(self): from zope.interface import Interface from zope.interface import provider from zope.interface.verify import verifyObject class IFoo(Interface): def bar(a, b): "The bar method" @provider(IFoo) class Foo(object): @staticmethod def bar(a, b): raise AssertionError("We're never actually called") # Don't use self._callFUT, we don't want to instantiate the # class. verifyObject(IFoo, Foo)
Example #5
Source File: blockdevice.py From flocker with Apache License 2.0 | 6 votes |
def async_block_device_api(self): """ Get an ``IBlockDeviceAsyncAPI`` provider which can manipulate volumes for this deployer. During real operation, this is a threadpool-based wrapper around the ``IBlockDeviceAPI`` provider. For testing purposes it can be overridden with a different object entirely (and this large amount of support code for this is necessary because this class is a ``PClass`` subclass). """ if self._async_block_device_api is None: return _SyncToThreadedAsyncAPIAdapter.from_api( self.block_device_api, ) return self._async_block_device_api
Example #6
Source File: blockdevice.py From flocker with Apache License 2.0 | 6 votes |
def profiled_blockdevice_api(self): """ Get an ``IProfiledBlockDeviceAPI`` provider which can create volumes configured based on pre-defined profiles. This will use the _underlying_blockdevice_api attribute, falling back to the block_device_api attributed and finally an adapter implementation around the block_device_api if neither of those provide the interface. """ if IProfiledBlockDeviceAPI.providedBy( self._underlying_blockdevice_api): return self._underlying_blockdevice_api if IProfiledBlockDeviceAPI.providedBy(self.block_device_api): return self.block_device_api return ProfiledBlockDeviceAPIAdapter( _blockdevice_api=self.block_device_api )
Example #7
Source File: endpoints.py From learn_python3_spider with MIT License | 6 votes |
def __init__(self, reactor, host, port, timeout=30, bindAddress=None): """ @param reactor: An L{IReactorTCP} provider @param host: A hostname, used when connecting @type host: str @param port: The port number, used when connecting @type port: int @param timeout: The number of seconds to wait before assuming the connection has failed. @type timeout: L{float} or L{int} @param bindAddress: A (host, port) tuple of local address to bind to, or None. @type bindAddress: tuple """ self._reactor = reactor self._host = host self._port = port self._timeout = timeout self._bindAddress = bindAddress
Example #8
Source File: endpoints.py From learn_python3_spider with MIT License | 6 votes |
def __init__(self, reactor, port, sslContextFactory, backlog=50, interface=''): """ @param reactor: An L{IReactorSSL} provider. @param port: The port number used for listening @type port: int @param sslContextFactory: An instance of L{interfaces.IOpenSSLContextFactory}. @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to, defaults to '' (all) @type interface: str """ self._reactor = reactor self._port = port self._sslContextFactory = sslContextFactory self._backlog = backlog self._interface = interface
Example #9
Source File: test_endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def spawnProcess(self, processProtocol, executable, args=(), env={}, path=None, uid=None, gid=None, usePTY=0, childFDs=None): """ @ivar processProtocol: Stores the protocol passed to the reactor. @return: An L{IProcessTransport} provider. """ self.processProtocol = processProtocol self.executable = executable self.args = args self.env = env self.path = path self.uid = uid self.gid = gid self.usePTY = usePTY self.childFDs = childFDs self.processTransport = MemoryProcessTransport() self.processProtocol.makeConnection(self.processTransport) return self.processTransport
Example #10
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def _parseServer(self, reactor, port, backlog=50, interface='::'): """ Internal parser function for L{_parseServer} to convert the string arguments into structured arguments for the L{TCP6ServerEndpoint} @param reactor: An L{IReactorTCP} provider. @param port: The port number used for listening @type port: int @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to @type interface: str """ port = int(port) backlog = int(backlog) return TCP6ServerEndpoint(reactor, port, backlog, interface)
Example #11
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def __init__(self, reactor, path, timeout=30, checkPID=0): """ @param reactor: An L{IReactorUNIX} provider. @param path: The path to the Unix socket file, used when connecting @type path: str @param timeout: Number of seconds to wait before assuming the connection has failed. @type timeout: int @param checkPID: If True, check for a pid file to verify that a server is listening. @type checkPID: bool """ self._reactor = reactor self._path = path self._timeout = timeout self._checkPID = checkPID
Example #12
Source File: endpoints.py From learn_python3_spider with MIT License | 6 votes |
def _parseServer(self, reactor, port, backlog=50, interface='::'): """ Internal parser function for L{_parseServer} to convert the string arguments into structured arguments for the L{TCP6ServerEndpoint} @param reactor: An L{IReactorTCP} provider. @param port: The port number used for listening @type port: int @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to @type interface: str """ port = int(port) backlog = int(backlog) return TCP6ServerEndpoint(reactor, port, backlog, interface)
Example #13
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def __init__(self, reactor, port, sslContextFactory, backlog=50, interface=''): """ @param reactor: An L{IReactorSSL} provider. @param port: The port number used for listening @type port: int @param sslContextFactory: An instance of L{interfaces.IOpenSSLContextFactory}. @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to, defaults to '' (all) @type interface: str """ self._reactor = reactor self._port = port self._sslContextFactory = sslContextFactory self._backlog = backlog self._interface = interface
Example #14
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def __init__(self, reactor, host, port, timeout=30, bindAddress=None): """ @param reactor: An L{IReactorTCP} provider @param host: A hostname, used when connecting @type host: str @param port: The port number, used when connecting @type port: int @param timeout: The number of seconds to wait before assuming the connection has failed. @type timeout: int @param bindAddress: A (host, port) tuple of local address to bind to, or None. @type bindAddress: tuple """ self._reactor = reactor self._host = host self._port = port self._timeout = timeout self._bindAddress = bindAddress
Example #15
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def __init__(self, reactor, port, backlog, interface): """ @param reactor: An L{IReactorTCP} provider. @param port: The port number used for listening @type port: int @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to @type interface: str """ self._reactor = reactor self._port = port self._backlog = backlog self._interface = interface
Example #16
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def connect(self, protocolFactory): """ Implement L{IStreamClientEndpoint.connect} to launch a child process and connect it to a protocol created by C{protocolFactory}. @param protocolFactory: A factory for an L{IProtocol} provider which will be notified of all events related to the created process. """ proto = protocolFactory.buildProtocol(_ProcessAddress()) try: self._spawnProcess( _WrapIProtocol(proto, self._executable, self._errFlag), self._executable, self._args, self._env, self._path, self._uid, self._gid, self._usePTY, self._childFDs) except: return defer.fail() else: return defer.succeed(proto)
Example #17
Source File: test_endpoints.py From learn_python3_spider with MIT License | 6 votes |
def spawnProcess(self, processProtocol, executable, args=(), env={}, path=None, uid=None, gid=None, usePTY=0, childFDs=None): """ @ivar processProtocol: Stores the protocol passed to the reactor. @return: An L{IProcessTransport} provider. """ self.processProtocol = processProtocol self.executable = executable self.args = args self.env = env self.path = path self.uid = uid self.gid = gid self.usePTY = usePTY self.childFDs = childFDs self.processTransport = MemoryProcessTransport() self.processProtocol.makeConnection(self.processTransport) return self.processTransport
Example #18
Source File: http.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def __init__(self, logPath=None, timeout=_REQUEST_TIMEOUT, logFormatter=None, reactor=None): """ @param logFormatter: An object to format requests into log lines for the access log. @type logFormatter: L{IAccessLogFormatter} provider @param reactor: A L{IReactorTime} provider used to compute logging timestamps. """ if not reactor: from twisted.internet import reactor self._reactor = reactor if logPath is not None: logPath = os.path.abspath(logPath) self.logPath = logPath self.timeOut = timeout if logFormatter is None: logFormatter = combinedLogFormatter self._logFormatter = logFormatter # For storing the cached log datetime and the callback to update it self._logDateTime = None self._logDateTimeCall = None
Example #19
Source File: endpoints.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 6 votes |
def __init__(self, connectedDeferred, wrappedProtocol): """ @param connectedDeferred: The L{Deferred} that will callback with the C{wrappedProtocol} when it is connected. @param wrappedProtocol: An L{IProtocol} provider that will be connected. """ self._connectedDeferred = connectedDeferred self._wrappedProtocol = wrappedProtocol for iface in [interfaces.IHalfCloseableProtocol, interfaces.IFileDescriptorReceiver, interfaces.IHandshakeListener]: if iface.providedBy(self._wrappedProtocol): directlyProvides(self, iface)
Example #20
Source File: http.py From Safejumper-for-Desktop with GNU General Public License v2.0 | 5 votes |
def getPeer(self): """ Get the remote address of this connection. @return: An L{IAddress} provider. """ return self.transport.getPeer()
Example #21
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def _loadCAsFromDir(directoryPath): """ Load certificate-authority certificate objects in a given directory. @param directoryPath: a L{unicode} or L{bytes} pointing at a directory to load .pem files from, or L{None}. @return: an L{IOpenSSLTrustRoot} provider. """ caCerts = {} for child in directoryPath.children(): if not child.asTextMode().basename().split(u'.')[-1].lower() == u'pem': continue try: data = child.getContent() except IOError: # Permission denied, corrupt disk, we don't care. continue try: theCert = Certificate.loadPEM(data) except SSLError: # Duplicate certificate, invalid certificate, etc. We don't care. pass else: caCerts[theCert.digest()] = theCert return trustRootFromCertificates(caCerts.values())
Example #22
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def __init__(self, proto, executable, errFlag): """ @param proto: An L{IProtocol} provider. @param errFlag: A constant belonging to L{StandardErrorBehavior} that determines if stderr is logged or dropped. @param executable: The file name (full path) to spawn. """ self.protocol = proto self.errFlag = errFlag self.executable = executable
Example #23
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def makeConnection(self, process): """ Call L{IProtocol} provider's makeConnection method with an L{ITransport} provider. @param process: An L{IProcessTransport} provider. """ self.transport = _ProcessEndpointTransport(process) return self.protocol.makeConnection(self.transport)
Example #24
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def processEnded(self, reason): """ If the process ends with L{error.ProcessDone}, this method calls the L{IProtocol} provider's L{connectionLost} with a L{error.ConnectionDone} @see: L{ProcessProtocol.processEnded} """ if (reason.check(error.ProcessDone) == error.ProcessDone) and ( reason.value.status == 0): return self.protocol.connectionLost( Failure(error.ConnectionDone())) else: return self.protocol.connectionLost(reason)
Example #25
Source File: twisted.py From maas with GNU Affero General Public License v3.0 | 5 votes |
def retries(timeout=30, intervals=1, clock=None): """Helper for retrying something, sleeping between attempts. Returns a generator that yields ``(elapsed, remaining, wait)`` tuples, giving times in seconds. The last item, `wait`, is the suggested amount of time to sleep before trying again. :param timeout: From now, how long to keep iterating, in seconds. This can be specified as a number, or as an iterable. In the latter case, the iterator is advanced each time an interval is needed. This allows for back-off strategies. :param intervals: The sleep between each iteration, in seconds, an an iterable from which to obtain intervals. :param clock: An optional `IReactorTime` provider. Defaults to the installed reactor. """ if clock is None: from twisted.internet import reactor as clock start = clock.seconds() end = start + timeout if isinstance(intervals, Iterable): intervals = iter(intervals) else: intervals = repeat(intervals) return gen_retries(start, end, intervals, clock)
Example #26
Source File: test_endpoints.py From learn_python3_spider with MIT License | 5 votes |
def test_resolveNameFailure(self): """ A resolution failure is logged with the name that failed to resolve and the callable that tried to resolve it. The resolution receiver begins, receives no addresses, and completes. """ logs = [] @provider(ILogObserver) def captureLogs(event): logs.append(event) globalLogPublisher.addObserver(captureLogs) self.addCleanup(lambda: globalLogPublisher.removeObserver(captureLogs)) receiver = self.resolver.resolveHostName(self.receiver, "example.com") self.assertIs(receiver, self.receiver) self.fakeResolverReturns.errback(Exception()) self.assertEqual(1, len(logs)) self.assertEqual(1, len(self.flushLoggedErrors(Exception))) [event] = logs self.assertTrue(event.get("isError")) self.assertTrue(event.get("name", "example.com")) self.assertTrue(event.get("callable", repr(self.fakeResolver))) self.assertEqual(1, len(self.resolutionBeganCalls)) self.assertEqual(self.resolutionBeganCalls[0].name, "example.com") self.assertFalse(self.addressResolvedCalls) self.assertEqual(1, self.resolutionCompleteCallCount)
Example #27
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def __init__(self, reactor, port, backlog=50, interface=''): """ @param reactor: An L{IReactorTCP} provider. @param port: The port number used for listening @type port: int @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to, defaults to '' (all) @type interface: str """ _TCPServerEndpoint.__init__(self, reactor, port, backlog, interface)
Example #28
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def __init__(self, reactor, port, backlog=50, interface='::'): """ @param reactor: An L{IReactorTCP} provider. @param port: The port number used for listening @type port: int @param backlog: Size of the listen queue @type backlog: int @param interface: The hostname to bind to, defaults to C{::} (all) @type interface: str """ _TCPServerEndpoint.__init__(self, reactor, port, backlog, interface)
Example #29
Source File: test_endpoints.py From learn_python3_spider with MIT License | 5 votes |
def test_constructor(self): """ Stores an L{IProtocol} provider and the flag to log/drop stderr """ d = self.ep.connect(self.factory) self.successResultOf(d) wpp = self.reactor.processProtocol self.assertIsInstance(wpp.protocol, StubApplicationProtocol) self.assertEqual(wpp.errFlag, self.ep._errFlag)
Example #30
Source File: endpoints.py From learn_python3_spider with MIT License | 5 votes |
def __init__(self, reactor, host, port, sslContextFactory, timeout=30, bindAddress=None): """ @param reactor: An L{IReactorSSL} provider. @param host: A hostname, used when connecting @type host: str @param port: The port number, used when connecting @type port: int @param sslContextFactory: SSL Configuration information as an instance of L{interfaces.IOpenSSLContextFactory}. @param timeout: Number of seconds to wait before assuming the connection has failed. @type timeout: int @param bindAddress: A (host, port) tuple of local address to bind to, or None. @type bindAddress: tuple """ self._reactor = reactor self._host = host self._port = port self._sslContextFactory = sslContextFactory self._timeout = timeout self._bindAddress = bindAddress