This commit is contained in:
Lartza
2020-03-10 22:22:20 +02:00
parent 44c7adae1f
commit b2ced96ba4
15 changed files with 166 additions and 121 deletions

View File

@ -15,19 +15,24 @@ item_builders = {}
item_loaders = {}
item_id_generators = {}
def example_builder(bot, **kwargs):
return BaseItem(bot)
def example_loader(bot, _dict):
return BaseItem(bot, from_dict=_dict)
def example_id_generator(**kwargs):
return ""
item_builders['base'] = example_builder
item_loaders['base'] = example_loader
item_id_generators['base'] = example_id_generator
def dicts_to_items(bot, music_dicts):
items = []
for music_dict in music_dicts:
@ -35,6 +40,7 @@ def dicts_to_items(bot, music_dicts):
items.append(item_loaders[type](bot, music_dict))
return items
def dict_to_item(bot, music_dict):
type = music_dict['type']
return item_loaders[type](bot, music_dict)
@ -48,11 +54,11 @@ class BaseItem:
self.title = ""
self.path = ""
self.tags = []
self.version = 0 # if version increase, wrapper will re-save this item
self.version = 0 # if version increase, wrapper will re-save this item
if from_dict is None:
self.id = ""
self.ready = "pending" # pending - is_valid() -> validated - prepare() -> yes, failed
self.ready = "pending" # pending - is_valid() -> validated - prepare() -> yes, failed
else:
self.id = from_dict['id']
self.ready = from_dict['ready']
@ -110,6 +116,6 @@ class BaseItem:
self.bot.send_msg(msg)
def to_dict(self):
return {"type" : self.type, "id": self.id, "ready": self.ready, "path": self.path, "tags": self.tags}
return {"type": self.type, "id": self.id, "ready": self.ready, "path": self.path, "tags": self.tags}