[Erp5-report] r35803 nicolas - /erp5/trunk/products/ERP5SyncML/SyncCode.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon May 31 17:26:23 CEST 2010


Author: nicolas
Date: Mon May 31 17:26:08 2010
New Revision: 35803

URL: http://svn.erp5.org?rev=35803&view=rev
Log:
merge object_exp, sub_object_exp and sub_sub_object_exp
into one regular expression.
A new algorithm will be used in ERPConduit to access
sub_object according xpath expression read from 
xupdate document.

Modified:
    erp5/trunk/products/ERP5SyncML/SyncCode.py

Modified: erp5/trunk/products/ERP5SyncML/SyncCode.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5SyncML/SyncCode.py?rev=35803&r1=35802&r2=35803&view=diff
==============================================================================
--- erp5/trunk/products/ERP5SyncML/SyncCode.py [utf8] (original)
+++ erp5/trunk/products/ERP5SyncML/SyncCode.py [utf8] Mon May 31 17:26:08 2010
@@ -111,12 +111,19 @@
   ADDABLE_PROPERTY = local_role_list + (history_tag,) + local_permission_list
   NOT_EDITABLE_PROPERTY = ('id','object','uid','xupdate:attribute') \
                           + XUPDATE_ELEMENT + ADDABLE_PROPERTY
-  sub_object_exp = re.compile("/object\[@id='.*'\]/")
-  object_exp = re.compile("/object\[@id='.*'\]")
+
   attribute_type_exp = re.compile("^.*attribute::type$")
-  sub_sub_object_exp = re.compile("/object\[@id='.*'\]/object\[@id='.*'\]/")
   history_exp = re.compile("/%s\[@id='.*'\]" % history_tag)
   bad_history_exp = re.compile("/%s\[@id='.*'\]/" % history_tag)
+  extract_id_from_xpath = re.compile(
+                              "(?P<object_block>(?P<property>[^/]+)\[@"\
+                              "(?P<id_of_id>id|gid)='(?P<object_id>[^']+)'\])")
+
+  # Those regular expression are deprecated and keept
+  # only for backward compatibility
+  object_exp = re.compile("/object\[@id='.*'\]")
+  sub_object_exp = re.compile("/object\[@id='.*'\]/")
+  sub_sub_object_exp = re.compile("/object\[@id='.*'\]/object\[@id='.*'\]/")
 
   #media types :
 




More information about the Erp5-report mailing list