Example #1
0
 def start(self):
     self._do_read = getattr(self.parent, self.read_op)
     if self.write_op:
         self._do_write = getattr(self.parent, self.write_op)
         setattr(self, 'set', self._set)
         self.inparams_write = self.parent._proxy.methods[self.write_op].inparams
         for parameter in self.write_params:
             if hasattr(self.__call_args_w, name):
                 raise EConfigurationInvalid(name)
             if value.startswith('/') and is_node_url(value):
                 setattr(self.__call_args_w, name, as_node(value))
             else:
                 setattr(self.__call_args_w, name, value)
     self.inparams_read = self.parent._proxy.methods[self.read_op].inparams
     for parameter in self.read_params:
         if not self.__call_args_r:
             self.__call_args_r = object()
         name = parameter['pn']
         value = parameter['value']
         if hasattr(self.__call_args_r, name):
             raise EConfigurationInvalid(name)
         if value.startswith('/') and is_node_url(value):
             setattr(self.__call_args_r, name, as_node(value))
         else:
             setattr(self.__call_args_r, name, value)
     return super(RemoteWebServiceOp, self).start()
Example #2
0
 def start(self):
     self._do_read = getattr(self.parent, self.read_op)
     if self.write_op:
         self._do_write = getattr(self.parent, self.write_op)
         setattr(self, 'set', self._set)
         self.inparams_write = self.parent._proxy.methods[
             self.write_op].inparams
         for parameter in self.write_params:
             if hasattr(self.__call_args_w, name):
                 raise EConfigurationInvalid(name)
             if value.startswith('/') and is_node_url(value):
                 setattr(self.__call_args_w, name, as_node(value))
             else:
                 setattr(self.__call_args_w, name, value)
     self.inparams_read = self.parent._proxy.methods[self.read_op].inparams
     for parameter in self.read_params:
         if not self.__call_args_r:
             self.__call_args_r = object()
         name = parameter['pn']
         value = parameter['value']
         if hasattr(self.__call_args_r, name):
             raise EConfigurationInvalid(name)
         if value.startswith('/') and is_node_url(value):
             setattr(self.__call_args_r, name, as_node(value))
         else:
             setattr(self.__call_args_r, name, value)
     return super(RemoteWebServiceOp, self).start()
Example #3
0
 def __register(self, name=None, file=None, dmtype=None):
     if name is None:
         assert file is None and dmtype is None, (
             "If name is None, file, and dmtype must be as well."
             )
         if not self.__deferred_register:
             # Already registerred.
             return
         name = self.__deferred_register['name']
         file = self.__deferred_register['file']
         dmtype = self.__deferred_register['dmtype']
         self.__deferred_register = None
     else:
         assert file is not None, (
             "If name is not None, file must not be as well."
             )
         assert self.__deferred_register is None, (
             "If name is not None, self.__deferred_register must be None."
             )
     if is_node_url(name):
         try:
             from mpx.service.garbage_collector import GARBAGE_COLLECTOR
             GARBAGE_COLLECTOR.register(name, file, dmtype)
         except:
             self.__deferred_register = {"name":name, "file":file,
                                         "dmtype":dmtype}
     return
Example #4
0
 def __register(self, name=None, file=None, dmtype=None):
     if name is None:
         assert file is None and dmtype is None, (
             "If name is None, file, and dmtype must be as well.")
         if not self.__deferred_register:
             # Already registerred.
             return
         name = self.__deferred_register['name']
         file = self.__deferred_register['file']
         dmtype = self.__deferred_register['dmtype']
         self.__deferred_register = None
     else:
         assert file is not None, (
             "If name is not None, file must not be as well.")
         assert self.__deferred_register is None, (
             "If name is not None, self.__deferred_register must be None.")
     if is_node_url(name):
         try:
             from mpx.service.garbage_collector import GARBAGE_COLLECTOR
             GARBAGE_COLLECTOR.register(name, file, dmtype)
         except:
             self.__deferred_register = {
                 "name": name,
                 "file": file,
                 "dmtype": dmtype
             }
     return
Example #5
0
 def commit_points(self, request_data):
     assert request_data.has_key('commitpoints')
     manager = self.manager
     if self.secured:
         manager = self.security_manager.as_secured_node(manager)
     configuration = self.extract_point_configuration(request_data)
     for point_map in configuration['points']:
         if not is_node_url(point_map['node']):
             raise ENotAValidUrl(point_map['node'])
     trend_name = self.extract_trend_name(request_data)
     confirmation = manager.update_trend(trend_name, configuration)
     if confirmation != None:
         return confirmation
     return manager
Example #6
0
 def commit_points(self, request_data):
     assert request_data.has_key('commitpoints')
     manager = self.manager
     if self.secured:
         manager = self.security_manager.as_secured_node(manager)
     configuration = self.extract_point_configuration(request_data)
     for point_map in configuration['points']:
         if not is_node_url(point_map['node']):
             raise ENotAValidUrl(point_map['node'])
     trend_name = self.extract_trend_name(request_data)
     confirmation = manager.update_trend(trend_name, configuration)
     if confirmation != None:
         return confirmation
     return manager