Commit 4bca2e87 authored by Ivan Tyagov's avatar Ivan Tyagov

Implement generic mix in WebService class.


git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@25670 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 83f61201
......@@ -39,9 +39,9 @@ from Products.ERP5Type.Cache import CachingMethod
class IntrospectionTool(BaseTool, LogMixIn):
"""
This tool provides both local and remote introspection.
This tool provides both local and remote introspection.
"""
id = 'portal_introspections'
title = 'Introspection Tool'
meta_type = 'ERP5 Introspection Tool'
......
......@@ -28,7 +28,8 @@
from AccessControl import ClassSecurityInfo
from Products.ERP5Type import Permissions
from Products.ERP5Wizard.transport.XMLRPCConnection import XMLRPCConnection
from Products.ERP5Wizard.transport.SOAPConnection import SOAPConnection
class WebServiceMixIn:
"""
......@@ -38,10 +39,18 @@ class WebServiceMixIn:
security = ClassSecurityInfo()
security.declareProtected('connect', Permissions.ManagePortal)
def connect(self, url, user=None, password=None, authentication_method=None):
def connect(self, url, user_name=None, password=None, authentication_method=None):
"""
Connect to remote instances
of any kind of web service (not only ERP5) with many
different kinds of authentication.
authentication_method: 'xml-rpc' or 'soap'
"""
pass
\ No newline at end of file
# XXX: implement connection caching per zope thread
if authentication_method == 'xml-rpc':
connection_handler = XMLRPCConnection(url, user_name, password)
elif authentication_method == 'soap':
connection_handler = SOAPConnection(url, user_name, password)
connection_handler = connection_handler.connect()
return connection_handler
\ No newline at end of file
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment