in aws-frauddetector-eventtype/src/aws_frauddetector_eventtype/helpers/model_helpers.py [0:0]
def _get_event_variables_model_for_given_variables(frauddetector_client, variables, reference_variable_names: set):
variable_models = []
for variable in variables:
variable_tags = _get_tags_for_given_arn(frauddetector_client, variable.get("arn", ""))
tag_models = get_tag_models_from_tags(variable_tags)
variable_name = util.extract_name_from_arn(variable.get("arn", ""))
LOG.debug(f"checking if {variable_name} is in {reference_variable_names}")
if variable_name in reference_variable_names:
LOG.debug(f"in reference set, {variable_name} is not inline")
variable_model = models.EventVariable(
Arn=variable.get("arn", ""),
Name=variable_name,
Tags=None,
Description=None,
DataType=None,
DataSource=None,
DefaultValue=None,
VariableType=None,
CreatedTime=None,
LastUpdatedTime=None,
Inline=False,
)
else:
LOG.debug(f"not in reference set, {variable_name} is inline")
variable_model = models.EventVariable(
Name=variable.get("name", ""),
Tags=tag_models,
Description=variable.get("description", ""),
DataType=variable.get("dataType", ""),
DataSource=variable.get("dataSource", ""),
DefaultValue=variable.get("defaultValue", ""),
VariableType=variable.get("variableType", ""),
Arn=variable.get("arn", ""),
CreatedTime=variable.get("createdTime", ""),
LastUpdatedTime=variable.get("lastUpdatedTime", ""),
Inline=True,
)
# remove empty description/tags
if not variable_model.Tags:
del variable_model.Tags
if variable_model.Description is None or variable_model.Description == "":
del variable_model.Description
variable_models.append(variable_model)
return variable_models