changeset 12:6db3135cf337 draft

"planemo upload for repository https://github.com/galaxy-genome-annotation/galaxy-tools/tree/master/tools/chado commit 1640878827bdc3870b6f34eded3a3f7571a1849f"
author gga
date Wed, 21 Aug 2019 05:09:59 -0400
parents 497a82f6a337
children 7b544eab3897
files chado.py macros.xml organism_delete_all_organisms.xml
diffstat 3 files changed, 46 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/chado.py	Thu Jul 11 08:35:34 2019 -0400
+++ b/chado.py	Wed Aug 21 05:09:59 2019 -0400
@@ -389,7 +389,8 @@
         os.environ['GALAXY_CHADO_DBPASS'],
         os.environ['GALAXY_CHADO_DBSCHEMA'],
         os.environ['GALAXY_CHADO_DBPORT'],
-        no_reflect=True
+        no_reflect=True,
+        pool_connections=False
     )
 
 
@@ -474,3 +475,43 @@
     for an in ci.analysis.get_analyses():
         ans_data.append((an['name'], str(an['analysis_id']), False))
     return ans_data
+
+
+def list_dbs(*args, **kwargs):
+
+    ci = _get_instance()
+
+    # Key for cached data
+    cacheKey = 'dbs'
+    # We don't want to trust "if key in cache" because between asking and fetch
+    # it might through key error.
+    if cacheKey not in cache:
+        # However if it ISN'T there, we know we're safe to fetch + put in
+        # there.<?xml version="1.0"?>
+
+        data = _list_dbs(ci, *args, **kwargs)
+        cache[cacheKey] = data
+        ci.session.close()
+        return data
+    try:
+        # The cache key may or may not be in the cache at this point, it
+        # /likely/ is. However we take no chances that it wasn't evicted between
+        # when we checked above and now, so we reference the object from the
+        # cache in preparation to return.
+        data = cache[cacheKey]
+        ci.session.close()
+        return data
+    except KeyError:
+        # If access fails due to eviction, we will fail over and can ensure that
+        # data is inserted.
+        data = _list_dbs(ci, *args, **kwargs)
+        cache[cacheKey] = data
+        ci.session.close()
+        return data
+
+
+def _list_dbs(ci, *args, **kwargs):
+    dbs_data = []
+    for db in ci.load._get_dbs():
+        dbs_data.append((db['name'], str(db['db_id']), False))
+    return dbs_data
--- a/macros.xml	Thu Jul 11 08:35:34 2019 -0400
+++ b/macros.xml	Wed Aug 21 05:09:59 2019 -0400
@@ -2,7 +2,7 @@
 <macros>
     <xml name="requirements">
         <requirements>
-            <requirement type="package" version="2.2.6">python-chado</requirement>
+            <requirement type="package" version="@LIB_VERSION@">python-chado</requirement>
             <requirement type="package" version="1.5">jq</requirement>
             <requirement type="package" version="@PG_VERSION@">postgresql</requirement>
             <requirement type="package" version="0.1">pglite</requirement>
@@ -10,6 +10,8 @@
         </requirements>
     </xml>
 
+    <token name="@LIB_VERSION@">2.3.0</token>
+    <token name="@WRAPPER_VERSION@">@LIB_VERSION@</token>
     <token name="@PG_VERSION@">11.2</token>
 
     <xml name="stdio">
@@ -20,8 +22,6 @@
         </stdio>
     </xml>
 
-    <token name="@WRAPPER_VERSION@">2.2.6</token>
-
     <xml name="citation">
         <citations>
         </citations>
--- a/organism_delete_all_organisms.xml	Thu Jul 11 08:35:34 2019 -0400
+++ b/organism_delete_all_organisms.xml	Wed Aug 21 05:09:59 2019 -0400
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
-<tool id="organism_delete_all_organisms" name="Chado delete all organisms" version="@WRAPPER_VERSION@.2">
+<tool id="organism_delete_all_organisms" name="Chado delete all organisms" version="@WRAPPER_VERSION@">
     <description></description>
 	<macros>
 		<import>macros.xml</import>