Skip to content
Snippets Groups Projects
Commit 5cd4075c authored by Henrik tom Wörden's avatar Henrik tom Wörden
Browse files

MAINT: move code parts

parent e9f1a33f
No related branches found
No related tags found
1 merge request!53Release 0.1
......@@ -101,6 +101,9 @@ class Store(object):
self.storage = dict()
def __getitem__(self, key):
if key not in self.storage:
self.storage[key] = db.Record()
return self.storage[key]
def update(self, other):
......@@ -256,11 +259,30 @@ class Converter(object):
element: StructureElement):
pass
@abstractmethod
def create_records(self, values: GeneralStore,
records: RecordStore,
element: StructureElement):
pass
if "records" not in self.definition:
return
for name, record in self.definition["records"].items():
c_record = records.storage[name]
if "parents" in record:
for parent in record["parents"]:
c_record.add_parent(name=parent)
else:
c_record.add_parent(name=name)
for key, value in record.items():
if key == "parents":
continue
propvalue = value
for varname, varvalue in values.storage.items():
propvalue = propvalue.replace("$" + varname, varvalue)
c_record.add_property(name=key, value=propvalue)
@abstractmethod
def typecheck(self, element: StructureElement):
......@@ -295,32 +317,6 @@ class DirectoryConverter(Converter):
return self.create_children_from_directory(element)
def create_records(self, values: GeneralStore,
records: RecordStore,
element: StructureElement):
if "records" not in self.definition:
return
for name, record in self.definition["records"].items():
if name not in records.storage:
c_record = db.Record()
records.storage[name] = c_record
c_record = records.storage[name]
if "parents" in record:
for parent in record["parents"]:
c_record.add_parent(name=parent)
else:
c_record.add_parent(name=name)
for key, value in record.items():
if key == "parents":
continue
propvalue = value
for varname, varvalue in values.storage.items():
propvalue = propvalue.replace("$" + varname, varvalue)
c_record.add_property(name=key, value=propvalue)
def typecheck(self, element: StructureElement):
return isinstance(element, Directory)
......
......@@ -2,5 +2,4 @@
# Tests for main functions of crawler
# A. Schlemmer, 07/2021
from newcrawler import match_complete
#from newcrawler import match_complete
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment