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 @@ ...@@ -44,6 +44,7 @@
<item>Solver Configurator Item</item> <item>Solver Configurator Item</item>
<item>Standard BT5 Configurator Item</item> <item>Standard BT5 Configurator Item</item>
<item>System Preference Configurator Item</item> <item>System Preference Configurator Item</item>
<item>Web Service Configurator Item</item>
<item>Workflow Security Configurator Item</item> <item>Workflow Security Configurator Item</item>
</portal_type> </portal_type>
<portal_type id="Organisation Configurator Item"> <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 ...@@ -27,6 +27,7 @@ Site Property Configurator Item | view
Solver Configurator Item | view Solver Configurator Item | view
Standard BT5 Configurator Item | view Standard BT5 Configurator Item | view
System Preference Configurator Item | view System Preference Configurator Item | view
Web Service Configurator Item | view
Workflow Security Configurator Item | view Workflow Security Configurator Item | view
Workflow | configurator_settings Workflow | configurator_settings
Workflow | launch_configuration Workflow | launch_configuration
......
...@@ -34,6 +34,7 @@ Configuration Save | Site Property Configurator Item ...@@ -34,6 +34,7 @@ Configuration Save | Site Property Configurator Item
Configuration Save | Solver Configurator Item Configuration Save | Solver Configurator Item
Configuration Save | Standard BT5 Configurator Item Configuration Save | Standard BT5 Configurator Item
Configuration Save | System Preference Configurator Item Configuration Save | System Preference Configurator Item
Configuration Save | Web Service Configurator Item
Configuration Save | Workflow Security Configurator Item Configuration Save | Workflow Security Configurator Item
Organisation Configurator Item | Address Organisation Configurator Item | Address
Organisation Configurator Item | Email Organisation Configurator Item | Email
......
...@@ -30,4 +30,5 @@ Site Property Configurator Item ...@@ -30,4 +30,5 @@ Site Property Configurator Item
Solver Configurator Item Solver Configurator Item
Standard BT5 Configurator Item Standard BT5 Configurator Item
System Preference Configurator Item System Preference Configurator Item
Web Service Configurator Item
Workflow Security 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