Skip to content

Commit f63222d

Browse files
committed
#3 deduplicated extracted artifacts from job
1 parent f6cbb49 commit f63222d

File tree

1 file changed

+19
-7
lines changed

1 file changed

+19
-7
lines changed

cortexutils/extractor.py

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -164,8 +164,8 @@ def check_iterable(self, iterable):
164164
dt = self.__checktype(iterable)
165165
if len(dt) > 0:
166166
results.append({
167-
'type': dt,
168-
'value': iterable
167+
'dataType': dt,
168+
'data': iterable
169169
})
170170
elif isinstance(iterable, list):
171171
for item in iterable:
@@ -175,8 +175,8 @@ def check_iterable(self, iterable):
175175
dt = self.__checktype(item)
176176
if len(dt) > 0:
177177
results.append({
178-
'type': dt,
179-
'value': item
178+
'dataType': dt,
179+
'data': item
180180
})
181181
elif isinstance(iterable, dict):
182182
for _, item in iterable.items():
@@ -186,10 +186,22 @@ def check_iterable(self, iterable):
186186
dt = self.__checktype(item)
187187
if len(dt) > 0:
188188
results.append({
189-
'type': dt,
190-
'value': item
189+
'dataType': dt,
190+
'data': item
191191
})
192192
else:
193193
raise TypeError('Not supported type.')
194194

195-
return results
195+
return self.deduplicate(results)
196+
197+
@staticmethod
198+
def deduplicate(list_of_objects):
199+
dedup_list = []
200+
for obj in list_of_objects:
201+
present = False
202+
for new_object in dedup_list:
203+
if obj['dataType'] == new_object['dataType'] and obj['data'] == new_object['data']:
204+
present = True
205+
if not present:
206+
dedup_list.append(obj)
207+
return dedup_list

0 commit comments

Comments
 (0)