@@ -146,32 +146,20 @@ def get_state(self, refresh=False):
146146 return self ._state
147147
148148 def get_file (self , file_name , published = False ):
149- # Search published dataset if specified; otherwise, search draft
150- files = self .get_published_files () if published else self .get_files ()
149+ files = self .get_files (published )
151150 return next ((f for f in files if f .name == file_name ), None )
152151
153152 def get_file_by_id (self , file_id , published = False ):
154- # Search published dataset if specified; otherwise, search draft
155- files = self .get_published_files () if published else self .get_files ()
153+ files = self .get_files (published )
156154 return next ((f for f in files if f .id == file_id ), None )
157155
158156 def get_files (self , published = False , refresh = True ):
159- if published :
160- return self .get_published_files ()
161-
162- elements = get_elements (self .get_statement (refresh ), 'entry' )
157+ if self .get_state (refresh ) == 'DRAFT' and published :
158+ return []
159+ elements = get_elements (self .get_statement (), 'entry' )
163160 return [DataverseFile .from_statement (element , self )
164161 for element in elements ]
165162
166- def get_published_files (self ):
167- metadata_url = 'https://{0}/dvn/api/metadata/{1}' .format (
168- self .connection .host , self .doi
169- )
170- xml = requests .get (metadata_url , auth = self .connection .auth ).content
171- elements = get_elements (xml , tag = 'otherMat' )
172- return [DataverseFile .from_metadata (element , self )
173- for element in elements ]
174-
175163 def add_file (self , filepath ):
176164 self .add_files ([filepath ])
177165
0 commit comments