Commit 14a0b7c2 authored by Xiaowu Zhang's avatar Xiaowu Zhang

ERP5Configurator: add WebServiceConfiguratorItem

parent 0e09e99e
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>action</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>action_type/object_view</string>
</tuple>
</value>
</item>
<item>
<key> <string>category</string> </key>
<value> <string>object_view</string> </value>
</item>
<item>
<key> <string>condition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>icon</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>view</string> </value>
</item>
<item>
<key> <string>permissions</string> </key>
<value>
<tuple>
<string>View</string>
</tuple>
</value>
</item>
<item>
<key> <string>priority</string> </key>
<value> <float>1.0</float> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>View</string> </value>
</item>
<item>
<key> <string>visible</string> </key>
<value> <int>1</int> </value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="Expression" module="Products.CMFCore.Expression"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>text</string> </key>
<value> <string>string:${object_url}/ConfiguratorItem_view</string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -44,6 +44,7 @@
<item>Solver Configurator Item</item>
<item>Standard BT5 Configurator Item</item>
<item>System Preference Configurator Item</item>
<item>Web Service Configurator Item</item>
<item>Workflow Security Configurator Item</item>
</portal_type>
<portal_type id="Organisation Configurator Item">
......
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Base Type" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>content_icon</string> </key>
<value> <string>document.gif</string> </value>
</item>
<item>
<key> <string>content_meta_type</string> </key>
<value> <string>ERP5 Account Configurator Item</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string> Setup an Accounting Account. </string> </value>
</item>
<item>
<key> <string>factory</string> </key>
<value> <string>addAccountConfiguratorItem</string> </value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>Web Service Configurator Item</string> </value>
</item>
<item>
<key> <string>init_script</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>permission</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>type_class</string> </key>
<value> <string>WebServiceConfiguratorItem</string> </value>
</item>
<item>
<key> <string>type_interface</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>type_mixin</string> </key>
<value>
<tuple/>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
......@@ -27,6 +27,7 @@ Site Property Configurator Item | view
Solver Configurator Item | view
Standard BT5 Configurator Item | view
System Preference Configurator Item | view
Web Service Configurator Item | view
Workflow Security Configurator Item | view
Workflow | configurator_settings
Workflow | launch_configuration
......
......@@ -34,6 +34,7 @@ Configuration Save | Site Property Configurator Item
Configuration Save | Solver Configurator Item
Configuration Save | Standard BT5 Configurator Item
Configuration Save | System Preference Configurator Item
Configuration Save | Web Service Configurator Item
Configuration Save | Workflow Security Configurator Item
Organisation Configurator Item | Address
Organisation Configurator Item | Email
......
......@@ -30,4 +30,5 @@ Site Property Configurator Item
Solver Configurator Item
Standard BT5 Configurator Item
System Preference Configurator Item
Web Service Configurator Item
Workflow Security Configurator Item
\ No newline at end of file
##############################################################################
#
# Copyright (c) 2006 Nexedi SARL and Contributors. All Rights Reserved.
# Ivan Tyagov <ivan@nexedi.com>
#
# WARNING: This program as such is intended to be used by professional
# programmers who take the whole responsability of assessing all potential
# consequences resulting from its eventual inadequacies and bugs
# End users who are looking for a ready-to-use solution with commercial
# garantees and support are strongly adviced to contract a Free Software
# Service Company
#
# This program is Free Software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
##############################################################################
import zope.interface
from AccessControl import ClassSecurityInfo
from Products.ERP5Type import Permissions, PropertySheet, interfaces
from Products.ERP5Type.XMLObject import XMLObject
from Products.ERP5Type.Message import translateString
from Products.ERP5Configurator.mixin.configurator_item import ConfiguratorItemMixin
class WebServiceConfiguratorItem(ConfiguratorItemMixin, XMLObject):
""" This class install a Organisation."""
meta_type = 'ERP5 Web Service Configurator'
portal_type = 'Web Service Configurator Item'
add_permission = Permissions.AddPortalContent
isPortalContent = 1
isRADContent = 1
# Declarative security
security = ClassSecurityInfo()
security.declareObjectProtected(Permissions.AccessContentsInformation)
# Declarative interfaces
zope.interface.implements(interfaces.IConfiguratorItem)
# Declarative properties
property_sheets = ( PropertySheet.Base
, PropertySheet.XMLObject
, PropertySheet.CategoryCore
, PropertySheet.DublinCore
, PropertySheet.FTPConnectorConfiguration
, PropertySheet.FTPConnector
, PropertySheet.Login
, PropertySheet.Reference
, PropertySheet.Url)
def _checkConsistency(self, fixit=False, filter=None, **kw):
""" Setup Web Service. """
property_list = [
'url_protocol',
'url_string',
'user_id',
'description',
'reference',
'footer',
'destination',
'import_filename',
'header',
'bind_address',
'use_temporary_file_on_write',
'country_code',
'password',
'psv',
'output_filename',
'source'
]
portal = self.getPortalObject()
result_list = portal.portal_catalog(
portal_type='FTP Connector',
reference=self.getReference())
if len(result_list):
web_service = result_list[0]
if not fixit:
for key in property_list:
value = web_service.getProperty(key)
if value is None or value != self.getProperty(key):
return [self._createConstraintMessage(
'Web Service %s has wrong value:%s' % (self.getReference(), key))]
else:
if not fixit:
return [self._createConstraintMessage(
'Web Service %s is not created' % self.getReference())]
web_service = portal.portal_web_services.newContent(portal_type='FTP Connector')
if not fixit:
if web_service.getValidationState() != 'validated':
return [self._createConstraintMessage(
'Web Service %s is not validated' % self.getReference())]
else:
org_dict = {}
for key in property_list:
org_dict[key] = self.getProperty(key)
web_service.edit(**org_dict)
if portal.portal_workflow.isTransitionPossible(web_service.getObject(), 'validate'):
web_service.validate(comment=translateString("Validated by Configurator"))
return []
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