VariantDatabaseHandler.py 1.3 KB

1234567891011121314151617181920212223242526272829
  1. from UM.Settings.DatabaseContainerMetadataController import DatabaseMetadataContainerController
  2. from UM.Settings.InstanceContainer import InstanceContainer
  3. class VariantDatabaseHandler(DatabaseMetadataContainerController):
  4. def __init__(self) -> None:
  5. super().__init__(
  6. insert_query= "INSERT INTO variants (id, name, hardware_type, definition, version, setting_version) VALUES (?, ?, ?, ?, ?, ?)",
  7. update_query= "",
  8. select_query= "SELECT * FROM variants where id = ?",
  9. table_query="""CREATE TABLE variants
  10. (
  11. id text,
  12. name text,
  13. hardware_type text,
  14. definition text,
  15. version text,
  16. setting_version text
  17. );
  18. CREATE UNIQUE INDEX idx_variants_id on variants (id);"""
  19. )
  20. def _convertRawDataToMetadata(self, data):
  21. return {"id": data[0], "name": data[1], "hardware_type": data[2], "definition": data[3], "container_type": InstanceContainer, "version": data[4], "setting_version": data[5], "type": "variant"}
  22. def _convertMetadataToInsertBatch(self, metadata):
  23. return metadata["id"], metadata["name"], metadata["hardware_type"], metadata["definition"], metadata["version"], \
  24. metadata["setting_version"]