def new_session(self, account_id, credential, contracts, data_sets, data_set_for_store, new_session_lang): contracts_list = [] for con_id in contracts: contracts_list.append(Utils.get_msg_id(con_id)) data_set_list = [] for data_set in data_sets: data_set_list.append(Utils.get_msg_id(data_set)) request = logicmodule_messages_pb2.NewSessionRequest( accountID=Utils.get_msg_id(account_id), credential=Utils.get_credential(credential), contractIDs=contracts_list, dataSetIDs=data_set_list, storeDataSet=Utils.get_msg_id(data_set_for_store), sessionLang=new_session_lang) lm_function = lambda request: self.lm_stub.newSession.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) return dataclay_yaml_load(response.sessionInfo)
def get_stubs(self, applicant_account_id, applicant_credential, language, contracts_ids): cid_list = [] for cID in contracts_ids: cid_list.append(Utils.get_msg_id(cID)) request = logicmodule_messages_pb2.GetStubsRequest( applicantAccountID=Utils.get_msg_id(applicant_account_id), credentials=Utils.get_credential(applicant_credential), language=language, contractIDs=cid_list) lm_function = lambda request: self.lm_stub.getStubs.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) result = dict() for k, v in response.stubs.items(): result[k] = v return result
def new_class(self, account_id, credential, language, new_classes): new_cl = {} for klass in new_classes: yaml_str = dataclay_yaml_dump(klass) new_cl[klass.name] = yaml_str request = logicmodule_messages_pb2.NewClassRequest( accountID=Utils.get_msg_id(account_id), credential=Utils.get_credential(credential), language=language, newClasses=new_cl) lm_function = lambda request: self.lm_stub.newClass.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) result = dict() for k, v in response.newClasses.items(): result[k] = dataclay_yaml_load(v) return result
def remove_class(self, account_id, credential, namespace_id, class_name): request = logicmodule_messages_pb2.RemoveClassRequest( accountID=Utils.get_msg_id(account_id), credential=Utils.get_credential(credential), className=class_name) lm_function = lambda request: self.lm_stub.removeClass.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.isException: raise DataClayException(response.exceptionMessage)
def register_event_listener_implementation(self, account_id, credential, new_event_listener): request = logicmodule_messages_pb2.RegisterECARequest( applicantAccountID=Utils.get_msg_id(account_id), credentials=Utils.get_credential(credential), eca=dataclay_yaml_dump(new_event_listener)) lm_function = lambda request: self.lm_stub.registerECA.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage)
def get_dataset_id(self, account_id, credential, dataset_name): request = logicmodule_messages_pb2.GetDataSetIDRequest( accountID=Utils.get_msg_id(account_id), credential=Utils.get_credential(credential), dataSetName=dataset_name) lm_function = lambda request: self.lm_stub.getDataSetID.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) return Utils.get_id(response.dataSetID)
def new_namespace(self, account_id, credential, namespace): yaml_dom = dataclay_yaml_dump(namespace) request = logicmodule_messages_pb2.NewNamespaceRequest( accountID=account_id, credential=Utils.get_credential(credential), newNamespaceYaml=yaml_dom) lm_function = lambda request: self.lm_stub.newNamespace.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) return Utils.get_id(response.namespaceID)
def new_account(self, admin_account_id, admin_credential, account): acc_yaml = dataclay_yaml_dump(account) request = logicmodule_messages_pb2.NewAccountRequest( adminID=Utils.get_msg_id(admin_account_id), admincredential=Utils.get_credential(admin_credential), yamlNewAccount=acc_yaml) lm_function = lambda request: self.lm_stub.newAccount.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) return Utils.get_id(response.newAccountID)
def perform_set_of_new_accounts(self, admin_id, admin_credential, yaml_file): request = logicmodule_messages_pb2.PerformSetAccountsRequest( accountID=Utils.get_msg_id(admin_id), credential=Utils.get_credential(admin_credential), yaml=yaml_file) lm_function = lambda request: self.lm_stub.performSetOfNewAccounts.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) result = Utils.prepare_bytes(response.resultYaml) return result
def get_account_list(self, admin_account_id, admin_credential): request = logicmodule_messages_pb2.GetAccountListRequest( adminID=Utils.get_msg_id(admin_account_id), admincredential=Utils.get_credential(admin_credential)) lm_function = lambda request: self.lm_stub.getAccountList.future( request=request, metadata=self.metadata_call) response = self._call_logicmodule(request, lm_function) if response.excInfo.isException: raise DataClayException(response.excInfo.exceptionMessage) result = set() for acc_id in response.accountIDs: result.add(Utils.get_id(acc_id)) return result