"""__init__.py module for the If true then empty plugin."""# WARNING - DO NOT EDIT - YOUR CHANGES WILL NOT BE PROTECTED.# This file is auto-generated by the aac gen-plugin and may be overwritten.fromos.pathimportjoin,dirnamefromcopyimportdeepcopyfromtypingimportAnyfromaac.execute.aac_execution_resultimport(ExecutionResult,)fromaac.executeimporthookimplfromaac.context.language_contextimportLanguageContextfromaac.context.definitionimportDefinitionfromaac.execute.plugin_runnerimportPluginRunnerfromaac.plugins.if_true_then_empty.if_true_then_empty_implimportplugin_namefromaac.plugins.if_true_then_empty.if_true_then_empty_implimportif_true_then_emptyif_true_then_empty_aac_file_name="if_true_then_empty.aac"
[docs]defrun_if_true_then_empty(instance:Any,definition:Definition,defining_schema,arguments:Any)->ExecutionResult:"""Check to ensure the empty_field_name is empty if bool_field_name is true."""argument_copy=deepcopy(arguments)args={}forarginargument_copy:args[arg["name"]]=arg["value"]returnif_true_then_empty(instance,definition,defining_schema,**args)
[docs]@hookimpldefregister_plugin()->None:""" Returns information about the plugin. Returns: A collection of information about the plugin and what it contributes. """active_context=LanguageContext()if_true_then_empty_aac_file=join(dirname(__file__),if_true_then_empty_aac_file_name)definitions=active_context.parse_and_load(if_true_then_empty_aac_file)if_true_then_empty_plugin_definition=[definitionfordefinitionindefinitionsifdefinition.name==plugin_name][0]plugin_instance=if_true_then_empty_plugin_definition.instanceforfile_to_loadinplugin_instance.definition_sources:active_context.parse_and_load(file_to_load)plugin_runner=PluginRunner(plugin_definition=if_true_then_empty_plugin_definition)plugin_runner.add_constraint_callback("If true then empty",run_if_true_then_empty)active_context.register_plugin_runner(plugin_runner)