diff env/lib/python3.9/site-packages/bioblend/galaxy/dataset_collections/__init__.py @ 0:4f3585e2f14b draft default tip

"planemo upload commit 60cee0fc7c0cda8592644e1aad72851dec82c959"
author shellac
date Mon, 22 Mar 2021 18:12:50 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/env/lib/python3.9/site-packages/bioblend/galaxy/dataset_collections/__init__.py	Mon Mar 22 18:12:50 2021 +0000
@@ -0,0 +1,82 @@
+class HasElements:
+
+    def __init__(self, name, type="list", elements=None):
+        self.name = name
+        self.type = type
+        if isinstance(elements, dict):
+            self.elements = [dict(name=key, id=value, src="hda") for key, value in elements.values()]
+        elif elements:
+            self.elements = elements
+
+    def add(self, element):
+        self.elements.append(element)
+        return self
+
+
+class CollectionDescription(HasElements):
+
+    def to_dict(self):
+        return dict(
+            name=self.name,
+            collection_type=self.type,
+            element_identifiers=[e.to_dict() for e in self.elements]
+        )
+
+
+class CollectionElement(HasElements):
+
+    def to_dict(self):
+        return dict(
+            src="new_collection",
+            name=self.name,
+            collection_type=self.type,
+            element_identifiers=[e.to_dict() for e in self.elements]
+        )
+
+
+class SimpleElement:
+
+    def __init__(self, value):
+        self.value = value
+
+    def to_dict(self):
+        return self.value
+
+
+class HistoryDatasetElement(SimpleElement):
+
+    def __init__(self, name, id):
+        super().__init__(dict(
+            name=name,
+            src="hda",
+            id=id,
+        ))
+
+
+class HistoryDatasetCollectionElement(SimpleElement):
+
+    def __init__(self, name, id):
+        super().__init__(dict(
+            name=name,
+            src="hdca",
+            id=id,
+        ))
+
+
+class LibraryDatasetElement(SimpleElement):
+
+    def __init__(self, name, id):
+        super().__init__(dict(
+            name=name,
+            src="ldda",
+            id=id,
+        ))
+
+
+__all__ = (
+    "CollectionDescription",
+    "CollectionElement",
+    "HistoryDatasetElement",
+    "HistoryDatasetCollectionElement",
+    "LibraryDatasetElement",
+)