Skip to content
This repository was archived by the owner on Dec 5, 2025. It is now read-only.

Commit f55a481

Browse files
author
Samuel Hassine
committed
[client] Better management of empty in list
1 parent 69c503c commit f55a481

File tree

2 files changed

+23
-20
lines changed

2 files changed

+23
-20
lines changed

pycti/api/opencti_api_client.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,11 +205,11 @@ def not_empty(self, value):
205205
else:
206206
return False
207207
if isinstance(value, list):
208-
is_empty = True
208+
is_not_empty = False
209209
for v in value:
210210
if len(v) > 0:
211-
is_empty = False
212-
return is_empty
211+
is_not_empty = False
212+
return is_not_empty
213213
if isinstance(value, int):
214214
return True
215215
else:

pycti/utils/opencti_stix2.py

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -906,12 +906,11 @@ def prepare_export(self, entity, stix_object, mode='simple', max_marking_definit
906906
if 'tags' in entity and len(entity['tags']) > 0:
907907
tags = []
908908
for entity_tag in entity['tags']:
909-
tag = {
910-
'id': entity_tag['id'],
911-
'tag_type': entity_tag['tag_type'],
912-
'value': entity_tag['value'],
913-
'color': entity_tag['color']
914-
}
909+
tag = dict()
910+
tag['id'] = entity_tag['id']
911+
tag['tag_type'] = entity_tag['tag_type']
912+
tag['value'] = entity_tag['value']
913+
tag['color'] = entity_tag['color']
915914
tags.append(tag)
916915
stix_object[CustomProperties.TAG_TYPE] = tags
917916
if 'killChainPhases' in entity and len(entity['killChainPhases']) > 0:
@@ -931,17 +930,21 @@ def prepare_export(self, entity, stix_object, mode='simple', max_marking_definit
931930
if 'externalReferences' in entity and len(entity['externalReferences']) > 0:
932931
external_references = []
933932
for entity_external_reference in entity['externalReferences']:
934-
external_reference = {
935-
'id': entity_external_reference['stix_id_key'],
936-
'source_name': entity_external_reference['source_name'],
937-
'description': entity_external_reference['description'],
938-
'url': entity_external_reference['url'],
939-
'hash': entity_external_reference['hash'],
940-
'external_id': entity_external_reference['external_id'],
941-
CustomProperties.ID: entity_external_reference['id'],
942-
CustomProperties.CREATED: entity_external_reference['created'],
943-
CustomProperties.MODIFIED: entity_external_reference['modified'],
944-
}
933+
external_reference = dict()
934+
external_reference['id'] = entity_external_reference['stix_id_key']
935+
if self.opencti.not_empty(entity_external_reference['source_name']):
936+
external_reference['source_name'] = entity_external_reference['source_name']
937+
if self.opencti.not_empty(entity_external_reference['description']):
938+
external_reference['description'] = entity_external_reference['description']
939+
if self.opencti.not_empty(entity_external_reference['url']):
940+
external_reference['url'] = entity_external_reference['url']
941+
if self.opencti.not_empty(entity_external_reference['hash']):
942+
external_reference['hash'] = entity_external_reference['hash']
943+
if self.opencti.not_empty(entity_external_reference['external_id']):
944+
external_reference['external_id'] = entity_external_reference['external_id']
945+
external_reference[CustomProperties.ID] = entity_external_reference['id']
946+
external_reference[CustomProperties.CREATED] = entity_external_reference['created']
947+
external_reference[CustomProperties.MODIFIED] = entity_external_reference['modified']
945948
external_references.append(external_reference)
946949
stix_object['external_references'] = external_references
947950
if 'objectRefs' in entity and len(entity['objectRefs']) > 0:

0 commit comments

Comments
 (0)