Fixed some bugs

This commit is contained in:
2020-07-05 20:19:19 +02:00
parent 71f753c925
commit 56e1cb4587
13 changed files with 67 additions and 43 deletions
+18
View File
@@ -16,6 +16,8 @@ class SheerkaAdmin(BaseService):
self.sheerka.bind_service_method(self.caches_names)
self.sheerka.bind_service_method(self.cache)
self.sheerka.bind_service_method(self.restore)
self.sheerka.bind_service_method(self.concepts)
self.sheerka.bind_service_method(self.last_created_concept)
def caches_names(self):
"""
@@ -61,3 +63,19 @@ class SheerkaAdmin(BaseService):
print(f"Execution time: {elapsed}")
except IOError:
pass
def concepts(self):
return self.sheerka.sdp.list(self.sheerka.CONCEPTS_BY_ID_ENTRY)
def last_created_concept(self, use_history=False):
for exec_result in reversed(self.sheerka.last_executions):
return_values = exec_result.values["return_values"]
for ret in return_values:
if ret.status and self.sheerka.isinstance(ret.value, BuiltinConcepts.NEW_CONCEPT):
return ret.value.body
if use_history:
return self.sheerka.new(BuiltinConcepts.ERROR, body="Not yet implement")
return self.sheerka.new(BuiltinConcepts.NOT_FOUND)
@@ -75,7 +75,7 @@ class SheerkaCreateNewConcept(BaseService):
# update references
for ref in self.compute_references(concept):
cache_manager.put(sheerka.CONCEPTS_REFERENCES, ref, concept.id)
cache_manager.put(sheerka.CONCEPTS_REFERENCES_ENTRY, ref, concept.id)
# TODO : this line seems to be useless
# The grammar is never reset
+1 -12
View File
@@ -15,26 +15,15 @@ def get_pp():
class SheerkaDump(BaseService):
NAME = "Dump"
def __init__(self, sheerka):
super().__init__(sheerka)
def initialize(self):
self.sheerka.bind_service_method(self.dump_concepts, "concepts")
self.sheerka.bind_service_method(self.dump_desc, "desc")
self.sheerka.bind_service_method(self.dump_state, "state")
def dump_concepts(self):
lst = self.sheerka.sdp.list(self.sheerka.CONCEPTS_BY_ID_ENTRY)
for item in lst:
if hasattr(item, "__iter__"):
for i in item:
self.sheerka.log.info(i)
else:
self.sheerka.log.info(item)
def dump_desc(self, *concept_names, eval=False):
first = True
event = Event(f"Dumping description", "")
@@ -37,7 +37,7 @@ class SheerkaModifyConcept(BaseService):
BuiltinConcepts.CONCEPT_ALREADY_DEFINED,
body=concept))
old_references = self.sheerka.cache_manager.get(self.sheerka.CONCEPTS_REFERENCES, concept.id)
old_references = self.sheerka.cache_manager.get(self.sheerka.CONCEPTS_REFERENCES_ENTRY, concept.id)
if old_references:
old_references = old_references.copy()
@@ -59,7 +59,7 @@ class SheerkaModifyConcept(BaseService):
:return:
"""
refs = self.sheerka.cache_manager.get(self.sheerka.CONCEPTS_REFERENCES, concept.id)
refs = self.sheerka.cache_manager.get(self.sheerka.CONCEPTS_REFERENCES_ENTRY, concept.id)
if not refs:
return