Skip to content

Commit feb4072

Browse files
committed
Included back FileChecker in MCG CC process
1 parent 58548b9 commit feb4072

2 files changed

Lines changed: 31 additions & 12 deletions

File tree

MCG/MCG_CC/mcg_cc_file_checker.py

Lines changed: 26 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
# This module contains definition of FileChecker class, which is
55
# responsible for checking of model module content from .exml file.
66
#
7-
# COPYRIGHT: Copyright (C) 2021-2023 Kamil Deć github.com/deckamil
8-
# DATE: 7 SEP 2023
7+
# COPYRIGHT: Copyright (C) 2021-2024 Kamil Deć github.com/deckamil
8+
# DATE: 26 FEB 2024
99
#
1010
# LICENSE:
1111
# This file is part of Mod Code Generator (MCG).
@@ -55,7 +55,8 @@ class FileChecker(object):
5555
def __init__(self, file_reader_list):
5656

5757
# initialize object data
58-
self.connection_list = file_reader_list[FileReader.CONNECTION_LIST_INDEX]
58+
self.diagram_layer = file_reader_list[FileReader.DIAGRAM_LAYER_INDEX]
59+
self.condition_layer_list = file_reader_list[FileReader.CONDITION_LAYER_LIST_INDEX]
5960
self.input_interface_list = file_reader_list[FileReader.INPUT_INTERFACE_LIST_INDEX]
6061
self.output_interface_list = file_reader_list[FileReader.OUTPUT_INTERFACE_LIST_INDEX]
6162
self.local_interface_list = file_reader_list[FileReader.LOCAL_INTERFACE_LIST_INDEX]
@@ -65,10 +66,28 @@ def __init__(self, file_reader_list):
6566
def check_connection_errors(self):
6667

6768
# record info
68-
Logger.save_in_log_file("FileChecker", "Looking for connection errors in .exml file", False)
69+
Logger.save_in_log_file("FileChecker", "Looking for diagram layer connection errors", False)
6970

70-
# check action types in connections
71-
for connection in self.connection_list:
71+
# search for connection errors under diagram layer
72+
FileChecker.check_connection_actions_from_layer(self.diagram_layer)
73+
74+
# record info
75+
Logger.save_in_log_file("FileChecker", "Looking for clause layer connection errors", False)
76+
77+
# search for connection errors under clause layer
78+
for condition_layer in self.condition_layer_list:
79+
Logger.save_in_log_file("FileChecker", "Looking under " + str(condition_layer) + " layer", False)
80+
for clause_layer in condition_layer.clause_layer_list:
81+
Logger.save_in_log_file("FileChecker", "Looking under " + str(clause_layer) + " layer", False)
82+
FileChecker.check_connection_actions_from_layer(clause_layer)
83+
84+
# Description:
85+
# This method looks for connection errors related with actions from given layer.
86+
@staticmethod
87+
def check_connection_actions_from_layer(layer):
88+
89+
# check action types
90+
for connection in layer.connection_list:
7291
# if action is connection source
7392
if connection.source_type == ActivityConnection.ACTION:
7493

@@ -116,7 +135,7 @@ def check_action_type(action_type_ref):
116135
def check_interface_errors(self):
117136

118137
# record info
119-
Logger.save_in_log_file("FileChecker", "Looking for interface errors in .exml file", False)
138+
Logger.save_in_log_file("FileChecker", "Looking for module interface errors", False)
120139

121140
# check interface element types in input interface
122141
for interface_element in self.input_interface_list:

MCG/MCG_CC/mcg_cc_main.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
# to convert model content from set of .exml files into configuration file.
77
#
88
# COPYRIGHT: Copyright (C) 2021-2024 Kamil Deć github.com/deckamil
9-
# DATE: 27 JAN 2024
9+
# DATE: 26 FEB 2024
1010
#
1111
# LICENSE:
1212
# This file is part of Mod Code Generator (MCG).
@@ -134,20 +134,20 @@ def convert_model():
134134
file_reader_list = file_reader.read_files()
135135

136136
# initialize file checker
137-
# file_checker = FileChecker(file_reader_list)
137+
file_checker = FileChecker(file_reader_list)
138138
# check module content
139-
# file_checker.check_files()
139+
file_checker.check_files()
140140

141141
# check errors
142-
# ErrorHandler.check_errors()
142+
ErrorHandler.check_errors()
143143

144144
# initialize module sorter
145145
module_sorter = ModuleSorter(file_reader_list)
146146
# sort module content
147147
module_sorter.sort_module()
148148

149149
# check errors
150-
# ErrorHandler.check_errors()
150+
ErrorHandler.check_errors()
151151

152152
# initialize module converter
153153
module_converter = ModuleConverter(file_finder_list, file_reader_list)

0 commit comments

Comments
 (0)