def set(self, model_cls, path, meta): resource_type = self._model_class_to_resource_type(model_cls) message_body = MetadataRequest("set", "-" + resource_type, path, meta.name, meta.value, meta.units) request = iRODSMessage("RODS_API_REQ", msg=message_body, int_info=api_number['MOD_AVU_METADATA_AN']) with self.sess.pool.get_connection() as conn: conn.send(request) response = conn.recv() logger.debug(response.int_info)
def copy(self, src_model_cls, dest_model_cls, src, dest): src_resource_type = self._model_class_to_resource_type(src_model_cls) dest_resource_type = self._model_class_to_resource_type(dest_model_cls) message_body = MetadataRequest("cp", "-" + src_resource_type, "-" + dest_resource_type, src, dest) request = iRODSMessage("RODS_API_REQ", msg=message_body, int_info=api_number['MOD_AVU_METADATA_AN']) with self.sess.pool.get_connection() as conn: conn.send(request) response = conn.recv() logger.debug(response.int_info)
def add(self, model_cls, path, meta): # Avoid sending request with empty argument(s) if not (len(path) and len(meta.name) and len(meta.value)): raise ValueError('Empty value in ' + repr(meta)) resource_type = self._model_class_to_resource_type(model_cls) message_body = MetadataRequest("add", "-" + resource_type, path, meta.name, meta.value, meta.units) request = iRODSMessage("RODS_API_REQ", msg=message_body, int_info=api_number['MOD_AVU_METADATA_AN']) with self.sess.pool.get_connection() as conn: conn.send(request) response = conn.recv() logger.debug(response.int_info)