interface documentation

class IStreamClientEndpointStringParserWithReactor(Interface): (source)

Known implementations: twisted.internet.endpoints._TLSClientEndpointParser

View In Hierarchy

An IStreamClientEndpointStringParserWithReactor is a parser which can convert a set of string *args and **kwargs into an IStreamClientEndpoint provider.

This interface is really only useful in the context of the plugin system for endpoints.clientFromString. See the document entitled "The Twisted Plugin System" for more details on how to write a plugin.

If you place an IStreamClientEndpointStringParserWithReactor plugin in the twisted.plugins package, that plugin's parseStreamClient method will be used to produce endpoints for any description string that begins with the result of that IStreamClientEndpointStringParserWithReactor's prefix attribute.

Method parseStreamClient This method is invoked by endpoints.clientFromString, if the type of endpoint matches the return value from this IStreamClientEndpointStringParserWithReactor's prefix method.
Attribute prefix bytes, the description prefix to respond to. For example, an IStreamClientEndpointStringParserWithReactor plugin which had b"foo" for its prefix attribute would be called for endpoint descriptions like ...
def parseStreamClient(reactor: IReactorCore, *args: object, **kwargs: object) -> IStreamClientEndpoint: (source)

This method is invoked by endpoints.clientFromString, if the type of endpoint matches the return value from this IStreamClientEndpointStringParserWithReactor's prefix method.

Parameters
reactor:IReactorCoreThe reactor passed to endpoints.clientFromString.
*args:objectThe byte string arguments, minus the endpoint type, in the endpoint description string, parsed according to the rules described in endpoints.quoteStringArgument. For example, if the description were b"my-type:foo:bar:baz=qux", args would be (b'foo', b'bar')
**kwargs:objectThe byte string arguments from the endpoint description passed as keyword arguments. For example, if the description were b"my-type:foo:bar:baz=qux", kwargs would be dict(baz=b'qux').
Returns
IStreamClientEndpointa client endpoint

bytes, the description prefix to respond to. For example, an IStreamClientEndpointStringParserWithReactor plugin which had b"foo" for its prefix attribute would be called for endpoint descriptions like b"foo:bar:baz" or b"foo:".