File tree Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Original file line number Diff line number Diff line change 18
18
CACHE_AGE = datetime .timedelta (days = 14 )
19
19
CACHE_DIR = os .path .join (tempfile .gettempdir (), "odml.cache" )
20
20
FILE_MAP_FILE = os .path .join (CACHE_DIR , "odml_filemap.csv" )
21
+
21
22
if not os .path .exists (CACHE_DIR ):
22
23
try :
23
24
os .makedirs (CACHE_DIR )
@@ -101,6 +102,7 @@ def from_cache(term):
101
102
102
103
class Terminologies (dict ):
103
104
loading = {}
105
+ types = None
104
106
105
107
def load (self , url = "http://portal.g-node.org/odml/terminologies/v1.0/terminologies.xml" ):
106
108
"""
@@ -147,6 +149,21 @@ def deferred_load(self, url):
147
149
self .loading [url ] = threading .Thread (target = self ._load , args = (url ,))
148
150
self .loading [url ].start ()
149
151
152
+ def empty (self ):
153
+ return len (self ) == 0
154
+
155
+ def type_list (self ):
156
+ if self .empty ():
157
+ from_cache (self )
158
+ if not self .types :
159
+ self .types = {}
160
+ for k in self .items ():
161
+ for s in k [1 ].itersections ():
162
+ if s .type in self .types :
163
+ self .types [s .type ].append ((k [0 ], s .get_path ()))
164
+ else :
165
+ self .types [s .type ] = [(k [0 ], s .get_path ())]
166
+ return self .types
150
167
terminologies = Terminologies ()
151
168
load = terminologies .load
152
169
deferred_load = terminologies .deferred_load
You can’t perform that action at this time.
0 commit comments