armodel 1.8.3__py3-none-any.whl → 1.8.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,94 @@
1
+ import argparse
2
+ import pkg_resources
3
+ import logging
4
+ import sys
5
+ import os.path
6
+
7
+ from ..models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import Referrable
8
+ from ..models.M2.AUTOSARTemplates.AutosarTopLevelStructure import AUTOSAR
9
+ from ..parser.arxml_parser import ARXMLParser
10
+ from ..lib.cli_args_parser import InputFileParser
11
+
12
+
13
+ def perform_uuid_duplicate_check(args):
14
+ logger = logging.getLogger()
15
+
16
+ formatter = logging.Formatter('[%(levelname)s] : %(message)s')
17
+
18
+ stdout_handler = logging.StreamHandler(sys.stderr)
19
+ stdout_handler.setFormatter(formatter)
20
+
21
+ base_path = os.path.dirname(args.OUTPUT)
22
+ log_file = os.path.join(base_path, 'uuid_check.log')
23
+
24
+ if os.path.exists(log_file):
25
+ os.remove(log_file)
26
+
27
+ if args.verbose:
28
+ file_handler = logging.FileHandler(log_file)
29
+ file_handler.setFormatter(formatter)
30
+ file_handler.setLevel(logging.DEBUG)
31
+
32
+ logger.setLevel(logging.DEBUG)
33
+
34
+ if args.verbose:
35
+ stdout_handler.setLevel(logging.DEBUG)
36
+ else:
37
+ stdout_handler.setLevel(logging.INFO)
38
+
39
+ if args.verbose:
40
+ logger.addHandler(file_handler)
41
+ logger.addHandler(stdout_handler)
42
+
43
+ try:
44
+ options = {}
45
+ if args.warning:
46
+ options['warning'] = True
47
+
48
+ inputs = []
49
+ inputs.append(args.INPUT)
50
+ parser = InputFileParser(inputs)
51
+ filenames = parser.parse()
52
+
53
+ document = AUTOSAR().getInstance()
54
+ parser = ARXMLParser(options)
55
+
56
+ for filename in filenames:
57
+ parser.load(filename, document)
58
+
59
+ with open(args.OUTPUT, 'w') as f_out:
60
+ for uuid in document.getDuplicateUUIDs():
61
+ ar_objects = document.getARObjectByUUID(uuid)
62
+ if len(ar_objects) > 1:
63
+ f_out.write("Duplicate UUID found: %s \n" % uuid)
64
+ for ar_object in ar_objects:
65
+ if isinstance(ar_object, Referrable):
66
+ f_out.write(" - %s (%s)\n" % (ar_object.getFullName(), type(ar_object).__name__))
67
+ else:
68
+ raise NotImplementedError("Unsupported type <%s>" % type(ar_object))
69
+
70
+ except Exception as e:
71
+ logger.error(e)
72
+ if args.verbose:
73
+ raise e
74
+
75
+
76
+ def main():
77
+ version = pkg_resources.require("armodel")[0].version
78
+
79
+ ap = argparse.ArgumentParser()
80
+ ap.description = "arxml-format ver: %s" % version
81
+ ap.add_argument("-v", "--verbose", required=False, help="Print debug information", action="store_true")
82
+ ap.add_argument("--log", required=False, help="Log all information to file")
83
+ ap.add_argument("-w", "--warning", required=False, help="Skip the error and report it as warning message", action="store_true")
84
+
85
+ ap.add_argument("INPUT", help="The path of AUTOSAR ARXML file")
86
+ ap.add_argument("OUTPUT", help="The path of output ARXML file")
87
+
88
+ args = ap.parse_args()
89
+
90
+ perform_uuid_duplicate_check(args)
91
+
92
+
93
+ if __name__ == "__main__":
94
+ main()
@@ -247,13 +247,16 @@ class AbstractAUTOSAR(CollectableElement):
247
247
  return self
248
248
 
249
249
  def getARObjectByUUID(self, uuid: str) -> List[ARObject]:
250
- return self.uuid_mgr.getObjects()
250
+ return self.uuid_mgr.getObjects(uuid)
251
251
 
252
252
  def addARObject(self, value: ARObject):
253
253
  if value is not None:
254
254
  self.uuid_mgr.addObject(value)
255
255
  return self
256
256
 
257
+ def getDuplicateUUIDs(self) -> List[str]:
258
+ return self.uuid_mgr.getDuplicateUUIDs()
259
+
257
260
  def setARRelease(self, release: str):
258
261
  if release not in self.release_xsd_mappings:
259
262
  raise "invalid AUTOSAR Release <%s>" % release
@@ -162,6 +162,13 @@ class BswModuleEntity(ExecutableEntity, metaclass=ABCMeta):
162
162
  self.addElement(access)
163
163
  self.callPoints.append(access)
164
164
  return self.getElement(short_name)
165
+
166
+ def createBswSynchronousServerCallPoint(self, short_name):
167
+ if (not self.IsElementExists(short_name)):
168
+ access = BswSynchronousServerCallPoint(self, short_name)
169
+ self.addElement(access)
170
+ self.callPoints.append(access)
171
+ return self.getElement(short_name)
165
172
 
166
173
  def getDataReceivePoints(self):
167
174
  return self.dataReceivePoints
@@ -45,7 +45,7 @@ class BswModuleEntry(ARElement):
45
45
  def __init__(self, parent: ARObject, short_name: str):
46
46
  super().__init__(parent, short_name)
47
47
 
48
- self.arguments = [] # type: List[SwServiceArg]
48
+ self.arguments = [] # type
49
49
  self.bswEntryKind = None # type: BswEntryKindEnum
50
50
  self.callType = None # type: BswCallType
51
51
  self.executionContext = None # type: BswExecutionContext
@@ -114,9 +114,12 @@ class BswModuleEntry(ARElement):
114
114
  def getReturnType(self):
115
115
  return self.returnType
116
116
 
117
- def setReturnType(self, value):
118
- self.returnType = value
119
- return self
117
+ def createReturnType(self, short_name: str) -> SwServiceArg:
118
+ if (short_name not in self.elements):
119
+ arg = SwServiceArg(self, short_name)
120
+ self.addElement(arg)
121
+ self.returnType = arg
122
+ return self.getElement(short_name)
120
123
 
121
124
  def getRole(self):
122
125
  return self.role
@@ -248,8 +248,8 @@ class ARBoolean(ARType):
248
248
  self._value = self._convertNumberToBoolean(val)
249
249
  self._text = str(val)
250
250
  elif isinstance(val, str):
251
- self._text = val
252
- self._value = self._convertStringToBoolean(val)
251
+ self._value = self._convertStringToBoolean(val.strip())
252
+ self._text = val.strip()
253
253
  else:
254
254
  raise ValueError("Unsupported Type <%s>", type(val))
255
255
 
@@ -21,3 +21,9 @@ class UUIDMgr:
21
21
  if uuid in self.uuid_object_mappings:
22
22
  result = self.uuid_object_mappings[uuid]
23
23
  return result
24
+
25
+ def getDuplicateUUIDs(self):
26
+ if len(self.uuid_object_mappings) > 0:
27
+ return self.uuid_object_mappings.keys()
28
+ else:
29
+ return []
@@ -175,7 +175,7 @@ class AbstractARXMLParser:
175
175
  return None
176
176
  bool_value = Boolean()
177
177
  bool_value.timestamp = literal.timestamp
178
- bool_value.setValue(literal.getValue())
178
+ bool_value.setValue(literal.getText())
179
179
  return bool_value
180
180
 
181
181
  def _convertStringToNumberValue(self, value) -> int:
@@ -31,6 +31,7 @@ from ..models.M2.MSR.Documentation.TextModel.BlockElements.PaginationAndView imp
31
31
 
32
32
  from ..models.M2.AUTOSARTemplates.AutosarTopLevelStructure import AUTOSAR
33
33
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswApiOptions, BswAsynchronousServerCallPoint, BswBackgroundEvent
34
+ from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswSynchronousServerCallPoint
34
35
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswCalledEntity, BswDataReceivedEvent, BswModuleCallPoint
35
36
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswInternalTriggeringPoint, BswOperationInvokedEvent
36
37
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswDataReceptionPolicy, BswExternalTriggerOccurredEvent, BswInternalBehavior
@@ -865,12 +866,19 @@ class ARXMLParser(AbstractARXMLParser):
865
866
  self.readBswModuleCallPoint(element, point)
866
867
  point.setCalledEntryRef(self.getChildElementOptionalRefType(element, "CALLED-ENTRY-REF"))
867
868
 
869
+ def readBswSynchronousServerCallPoint(self, element: ET.Element, point: BswSynchronousServerCallPoint):
870
+ self.readBswModuleCallPoint(element, point)
871
+ point.setCalledEntryRef(self.getChildElementOptionalRefType(element, "CALLED-ENTRY-REF"))
872
+
868
873
  def readBswModuleEntityCallPoints(self, element: ET.Element, entity: BswModuleEntity):
869
874
  for child_element in self.findall(element, "CALL-POINTS/*"):
870
875
  tag_name = self.getTagName(child_element)
871
876
  if tag_name == "BSW-ASYNCHRONOUS-SERVER-CALL-POINT":
872
877
  point = entity.createBswAsynchronousServerCallPoint(self.getShortName(child_element))
873
878
  self.readBswAsynchronousServerCallPoint(child_element, point)
879
+ elif tag_name == "BSW-SYNCHRONOUS-SERVER-CALL-POINT":
880
+ point = entity.createBswSynchronousServerCallPoint(self.getShortName(child_element))
881
+ self.readBswSynchronousServerCallPoint(child_element, point)
874
882
  else:
875
883
  self.notImplemented("Unsupported Call Point <%s>" % tag_name)
876
884
 
@@ -1099,16 +1107,25 @@ class ARXMLParser(AbstractARXMLParser):
1099
1107
  else:
1100
1108
  self.notImplemented("Unsupported Argument <%s>" % tag_name)
1101
1109
 
1110
+ def readBswModuleEntryReturnType(self, element: ET.Element, entry: BswModuleEntry):
1111
+ child_element = self.find(element, "RETURN-TYPE")
1112
+ if child_element is not None:
1113
+ self.logger.debug("Read ReturnType of BswModuleEntry <%s>" % entry.getShortName())
1114
+ return_type = entry.createReturnType(self.getShortName(child_element))
1115
+ self.readSwServiceArg(child_element, return_type)
1116
+
1102
1117
  def readBswModuleEntry(self, element: ET.Element, entry: BswModuleEntry):
1103
1118
  self.logger.debug("Read BswModuleEntry <%s>" % entry.getShortName())
1104
1119
  self.readIdentifiable(element, entry)
1105
1120
  self.readBswModuleEntryArguments(element, entry)
1106
- entry.setIsReentrant(self.getChildElementOptionalBooleanValue(element, "IS-REENTRANT")) \
1107
- .setIsSynchronous(self.getChildElementOptionalBooleanValue(element, "IS-SYNCHRONOUS")) \
1108
- .setServiceId(self.getChildElementOptionalNumericalValue(element, "SERVICE-ID")) \
1109
- .setCallType(self.getChildElementOptionalLiteral(element, "CALL-TYPE")) \
1110
- .setExecutionContext(self.getChildElementOptionalLiteral(element, "EXECUTION-CONTEXT")) \
1111
- .setSwServiceImplPolicy(self.getChildElementOptionalLiteral(element, "SW-SERVICE-IMPL-POLICY"))
1121
+ entry.setIsReentrant(self.getChildElementOptionalBooleanValue(element, "IS-REENTRANT"))
1122
+ entry.setIsSynchronous(self.getChildElementOptionalBooleanValue(element, "IS-SYNCHRONOUS"))
1123
+ entry.setServiceId(self.getChildElementOptionalNumericalValue(element, "SERVICE-ID"))
1124
+ entry.setCallType(self.getChildElementOptionalLiteral(element, "CALL-TYPE"))
1125
+ entry.setExecutionContext(self.getChildElementOptionalLiteral(element, "EXECUTION-CONTEXT"))
1126
+ entry.setSwServiceImplPolicy(self.getChildElementOptionalLiteral(element, "SW-SERVICE-IMPL-POLICY"))
1127
+ entry.setBswEntryKind(self.getChildElementOptionalLiteral(element, "BSW-ENTRY-KIND"))
1128
+ self.readBswModuleEntryReturnType(element, entry)
1112
1129
 
1113
1130
  def readEngineeringObject(self, element: ET.Element, engineering_obj: EngineeringObject):
1114
1131
  self.readARObjectAttributes(element, engineering_obj)
@@ -27,6 +27,7 @@ from ..models.M2.MSR.Documentation.TextModel.MultilanguageData import Multilangu
27
27
 
28
28
  from ..models.M2.AUTOSARTemplates.AutosarTopLevelStructure import AUTOSAR
29
29
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswApiOptions, BswAsynchronousServerCallPoint, BswBackgroundEvent
30
+ from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswSynchronousServerCallPoint
30
31
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswCalledEntity, BswDataReceivedEvent, BswModuleCallPoint
31
32
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswInternalTriggerOccurredEvent, BswOperationInvokedEvent
32
33
  from ..models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswDataReceptionPolicy, BswEvent, BswExternalTriggerOccurredEvent
@@ -2207,6 +2208,11 @@ class ARXMLWriter(AbstractARXMLWriter):
2207
2208
  self.writeBswModuleCallPoint(child_element, point)
2208
2209
  self.setChildElementOptionalRefType(child_element, "CALLED-ENTRY-REF", point.getCalledEntryRef())
2209
2210
 
2211
+ def writeBswSynchronousServerCallPoint(self, element: ET.Element, point: BswSynchronousServerCallPoint):
2212
+ child_element = ET.SubElement(element, "BSW-SYNCHRONOUS-SERVER-CALL-POINT")
2213
+ self.writeBswModuleCallPoint(child_element, point)
2214
+ self.setChildElementOptionalRefType(child_element, "CALLED-ENTRY-REF", point.getCalledEntryRef())
2215
+
2210
2216
  def writeBswModuleEntityCallPoints(self, element: ET.Element, entity: BswModuleEntity):
2211
2217
  points = entity.getCallPoints()
2212
2218
  if len(points) > 0:
@@ -2214,6 +2220,8 @@ class ARXMLWriter(AbstractARXMLWriter):
2214
2220
  for point in points:
2215
2221
  if isinstance(point, BswAsynchronousServerCallPoint):
2216
2222
  self.writeBswAsynchronousServerCallPoint(child_element, point)
2223
+ elif isinstance(point, BswModuleCallPoint):
2224
+ self.writeBswSynchronousServerCallPoint(child_element, point)
2217
2225
  else:
2218
2226
  self.notImplemented("Unsupported Call Point <%s>" % type(point))
2219
2227
 
@@ -2488,10 +2496,10 @@ class ARXMLWriter(AbstractARXMLWriter):
2488
2496
  self.writeBswModuleDescriptionInternalBehaviors(child_element, desc)
2489
2497
  self.writeBswModuleDescriptionReleasedTriggers(child_element, desc)
2490
2498
 
2491
- def setSwServiceArg(self, element: ET.Element, arg: SwServiceArg):
2499
+ def setSwServiceArg(self, element: ET.Element, key: str, arg: SwServiceArg):
2492
2500
  self.logger.debug("Set SwServiceArg <%s>" % arg.getShortName())
2493
2501
  if arg is not None:
2494
- child_element = ET.SubElement(element, "SW-SERVICE-ARG")
2502
+ child_element = ET.SubElement(element, key)
2495
2503
  self.writeIdentifiable(child_element, arg)
2496
2504
  self.setChildElementOptionalLiteral(child_element, "DIRECTION", arg.getDirection())
2497
2505
  self.setSwDataDefProps(child_element, "SW-DATA-DEF-PROPS", arg.getSwDataDefProps())
@@ -2501,7 +2509,11 @@ class ARXMLWriter(AbstractARXMLWriter):
2501
2509
  if len(arguments) > 0:
2502
2510
  child_element = ET.SubElement(element, "ARGUMENTS")
2503
2511
  for argument in arguments:
2504
- self.setSwServiceArg(child_element, argument)
2512
+ self.setSwServiceArg(child_element, "SW-SERVICE-ARG", argument)
2513
+
2514
+ def writeBswModuleEntryReturnType(self, element: ET.Element, entry: BswModuleEntry):
2515
+ if entry.getReturnType() is not None:
2516
+ self.setSwServiceArg(element, "RETURN-TYPE", entry.getReturnType())
2505
2517
 
2506
2518
  def writeBswModuleEntry(self, element: ET.Element, entry: BswModuleEntry):
2507
2519
  self.logger.debug("writeBswModuleDescription %s" % entry.getShortName())
@@ -2513,6 +2525,8 @@ class ARXMLWriter(AbstractARXMLWriter):
2513
2525
  self.setChildElementOptionalLiteral(child_element, "CALL-TYPE", entry.getCallType())
2514
2526
  self.setChildElementOptionalLiteral(child_element, "EXECUTION-CONTEXT", entry.getExecutionContext())
2515
2527
  self.setChildElementOptionalLiteral(child_element, "SW-SERVICE-IMPL-POLICY", entry.getSwServiceImplPolicy())
2528
+ self.setChildElementOptionalLiteral(child_element, "BSW-ENTRY-KIND", entry.getBswEntryKind())
2529
+ self.writeBswModuleEntryReturnType(child_element, entry)
2516
2530
  self.writeBswModuleEntryArguments(child_element, entry)
2517
2531
 
2518
2532
  def setSwcBswRunnableMapping(self, element: ET.SubElement, mapping: SwcBswRunnableMapping):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: armodel
3
- Version: 1.8.3
3
+ Version: 1.8.4
4
4
  Summary: the python arxml parser
5
5
  Home-page: http://github.com/melodypapa/py-armodel
6
6
  Author: melodypapa
@@ -630,4 +630,12 @@ Fix the attribute intervalType of **Limit** is empty issue.
630
630
  * USER-DEFINED-TRANSFORMATION-COM-SPEC-PROPS
631
631
  * MASK
632
632
 
633
+ **Version 1.8.4**
634
+
635
+ 1. To Support the following AR Element:
636
+ * BSW-SYNCHRONOUS-SERVER-CALL-POINT
637
+ * RETURN-TYPE
638
+ 2. Add the armodel-uuid-checker cli.
639
+ 3. Remove the space in the boolean type.
640
+
633
641
 
@@ -9,6 +9,7 @@ armodel/cli/format_xml_cli.py,sha256=FGOmC78qFxl5zeaC8tAWZUcFu6CicJbGfCsQCA7ekfA
9
9
  armodel/cli/memory_section_cli.py,sha256=YPhnfP9dd8yjPG_F32FaKhnCGVmLIK-WH33Jbup31O8,2179
10
10
  armodel/cli/swc_list_cli.py,sha256=yrObi-imM3X6M8R5y5KrZlAdq2IE4mltP9-aH_iwlqk,2441
11
11
  armodel/cli/system_signal_cli.py,sha256=nOVVMZtcSHytmZ8ln-zwu4mhY4Oi9i13RbMyS-RdlEQ,2141
12
+ armodel/cli/uuid_checker_cli.py,sha256=7n-R4qO-5zuY4tyksghK5bBWOdHSCD1DkyvjMADupU0,3143
12
13
  armodel/data_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
13
14
  armodel/data_models/sw_connector.py,sha256=ZU1B3AI84vpSSSpQaGR6CMc3qZGnhbK1Z-SQGvwYA9o,584
14
15
  armodel/lib/__init__.py,sha256=5629DkORqTomt16J6VL40o5hFv86-9SRB1240OJWTts,142
@@ -17,13 +18,13 @@ armodel/lib/sw_component.py,sha256=spUeVR8ftzqf9h-pilh17qQg8amYqcqh39XKYql3HO4,1
17
18
  armodel/lib/system_signal.py,sha256=E3FNiUGRUZovTCclCkabkVPpScMIACOXERUpbAuBTv8,1397
18
19
  armodel/models/__init__.py,sha256=Oj9ea8HUVNZ9I_BUiH72LT23rGSJAwx5lcdmW_8O9fM,6017
19
20
  armodel/models/M2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py,sha256=xzaoUjGPC4HX_C05pjS_i1XaBuktavwZ67VUDQckkS4,11612
21
+ armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py,sha256=wWZqSULMHcrCv5wcuBBpzT4zk-DykK2a6Yfl7IQ0tgk,11719
21
22
  armodel/models/M2/AUTOSARTemplates/ECUCDescriptionTemplate.py,sha256=m9EMGnfdOeRbSFYcGabrCtOpZvb6uy2o03GoQ_MFpLQ,12261
22
23
  armodel/models/M2/AUTOSARTemplates/ECUCParameterDefTemplate.py,sha256=umY2aFmJepGOsmOTtfWTYeqY5KPb7bw4E0oazAUA7Wk,51238
23
24
  armodel/models/M2/AUTOSARTemplates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py,sha256=ttA9KPP6I1MKNFTHJ6V2VoiXW8cavKKzVqR7QowHMzQ,29701
25
+ armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py,sha256=iFPCTPAs4ypcXg_TGt_ZBZv2QfCbxyVK-WJtN1wxcxQ,30018
25
26
  armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswImplementation.py,sha256=el7uFWztAqqYaCX_BOiSI6n7zeXsdD7acwpK52ZO5cM,2209
26
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py,sha256=PXZNpITaJ5jPaDytMkV3x_4Khp7ZlR3JZT4RRZkryUI,7003
27
+ armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswInterfaces.py,sha256=R5xu-KRd4utc7fWigQAS_Pw50_aW7koEZbeztR1ONWk,7168
27
28
  armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview.py,sha256=zb8tcqYPbVy72nKA9w2heZzJrEPdA5Fgz_MWnxiEqvA,7899
28
29
  armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/__init__.py,sha256=IY7GCwskITrwr1Rv76zzNUupbMsPAiG4ZMf5ZqtQuBg,118
29
30
  armodel/models/M2/AUTOSARTemplates/CommonStructure/Filter.py,sha256=siMMcMNN0zQgLMdmumWGXMUDtgMytUImoarQT0HctSE,2825
@@ -65,7 +66,7 @@ armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObj
65
66
  armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ElementCollection.py,sha256=-btGbRzkRmvBhKui8RnNV5jwCQnFEFTY4mjTilF4zJk,2567
66
67
  armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/EngineeringObject.py,sha256=GAlpyZhgyJSNyMpGMDqF7wd7bpzQtpWhB-2wYUvQbYw,1718
67
68
  armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py,sha256=CCoxJd-6M8SpbeBwrIyhdMoAhKQMsYqpOPdf07I5xko,7673
68
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py,sha256=lGo0G7rxHJpGwATemS4YFdbS-lwJB6Zu0eVdCiqnmCg,17481
69
+ armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py,sha256=yYGz5Spea6SRUk_3leTfeqHiOJyruz9LHeZbf10ne_A,17497
69
70
  armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
71
  armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py,sha256=ugfJuhglOkGZR__w1aIC_T0sKFtSkIHmtx-yG6V5v7Q,20847
71
72
  armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py,sha256=FoRVcXvjzdwWTS6ZtTrSc4NSnUJfRFG7gDmaUavhYN0,6386
@@ -159,10 +160,10 @@ armodel/models/M2/MSR/Documentation/TextModel/BlockElements/ListElements.py,sha2
159
160
  armodel/models/M2/MSR/Documentation/TextModel/BlockElements/PaginationAndView.py,sha256=9soQNUg6hje5l_pakfYc5PtDF1UeEJplfBbh_HZ4Q50,885
160
161
  armodel/models/M2/MSR/Documentation/TextModel/BlockElements/__init__.py,sha256=4MwJLkr2prOy5p2-JE0BwvH_EHpisjPm4ccDMRDzP9I,3325
161
162
  armodel/models/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
162
- armodel/models/utils/uuid_mgr.py,sha256=t_g52S4ej-umvo9S3kcpxytSyEVljVZoKjxhxBeYL8Y,747
163
+ armodel/models/utils/uuid_mgr.py,sha256=riuiZo6uaJpWK1dRDx3Fl86Apk1gHpv_ZtfATmGCId4,926
163
164
  armodel/parser/__init__.py,sha256=wFcqh5unmDvKvf4R8vWkeertAXwWxAuOOEsbsM4mOHs,78
164
- armodel/parser/abstract_arxml_parser.py,sha256=kZ6Sb9UljUkefA6X23GxFbpuDuZ-NyVqI_nbrRlsNt0,14296
165
- armodel/parser/arxml_parser.py,sha256=FwznoOkNr_pYtMo0H_BDGyC3Isg6LgiilOnJ8sIeysw,390142
165
+ armodel/parser/abstract_arxml_parser.py,sha256=suBQkFeHIDzd2oV_BmLJJiYR_NTkDGFZyqraWX6Ici4,14295
166
+ armodel/parser/arxml_parser.py,sha256=qab1NsgnYt2dH6Eom0gBC7n2HYcwv46x5te1VR0cH3U,391330
166
167
  armodel/parser/connector_xlsx_parser.py,sha256=0YW0WGOeDFdSNEY_Xh8Hi-Zlv4e4ctaLUh9pibj2-1w,10312
167
168
  armodel/parser/excel_parser.py,sha256=-Ws0eDvGna9LPQC9T8bgMg3Zq84v04aSuSxZUlZx1Wo,698
168
169
  armodel/parser/file_parser.py,sha256=eexNNjO1hXd_jOVgj_zh-58v8hJ4Cf_m42WrhGohsIs,1527
@@ -201,10 +202,10 @@ armodel/transformer/abstract.py,sha256=y6oATVcdu7I34RTb1PxGqgz7QdvcWcL2rCctEZMeo
201
202
  armodel/transformer/admin_data.py,sha256=k5LnDz8F2WoBgNw71agEjWaMnGITrAzB-mp5iJ02PJU,1323
202
203
  armodel/writer/__init__.py,sha256=eXr3qhGzFIvHNBin22x-Tk2JM6QwRgx1jwrluDKAlzQ,37
203
204
  armodel/writer/abstract_arxml_writer.py,sha256=fmSC2beb_2Q_LW-nCbaOem85xX5616FW_sFPlJaflFw,6401
204
- armodel/writer/arxml_writer.py,sha256=cJA71OKzqScXusr8jlBwV8yvqyvrrSaIvGUgMprmFpw,403829
205
- armodel-1.8.3.dist-info/LICENSE,sha256=rceTpGhsmmN1M0k1KO0HRS11iCjen-2y56ZEqgo43wo,1088
206
- armodel-1.8.3.dist-info/METADATA,sha256=flH6NRVtBAJJsQyEiBcPxbMOtvsduZPb5pl0o8-yDMc,17922
207
- armodel-1.8.3.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
208
- armodel-1.8.3.dist-info/entry_points.txt,sha256=br5_peUAKrFTC7K4p11OlwsDKIhqpSdIvxpi7nDfAf0,493
209
- armodel-1.8.3.dist-info/top_level.txt,sha256=AEATYsqAuRpr0XGa_ThW7-o4WLlA5e3PEgD0QJhzmoA,8
210
- armodel-1.8.3.dist-info/RECORD,,
205
+ armodel/writer/arxml_writer.py,sha256=dQcrTa5kxKNGwCR2G22DAAkKSdUxAL3bRNWS4E2FeHM,404843
206
+ armodel-1.8.4.dist-info/LICENSE,sha256=rceTpGhsmmN1M0k1KO0HRS11iCjen-2y56ZEqgo43wo,1088
207
+ armodel-1.8.4.dist-info/METADATA,sha256=EbGQNSGeg-FNmFqTtO1vja_xT0biiZpY28HYMoPeIWc,18124
208
+ armodel-1.8.4.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
209
+ armodel-1.8.4.dist-info/entry_points.txt,sha256=24xz9yK6gjxZ2IlHB23zY3_8M8rwrqAkWgElNBquUdA,550
210
+ armodel-1.8.4.dist-info/top_level.txt,sha256=AEATYsqAuRpr0XGa_ThW7-o4WLlA5e3PEgD0QJhzmoA,8
211
+ armodel-1.8.4.dist-info/RECORD,,
@@ -3,6 +3,7 @@ armodel-component = armodel.cli.swc_list_cli:main
3
3
  armodel-file-list = armodel.cli.file_list_cli:main
4
4
  armodel-memory-section = armodel.cli.memory_section_cli:main
5
5
  armodel-system-signal = armodel.cli.system_signal_cli:main
6
+ armodel-uuid-checker = armodel.cli.uuid_checker_cli:main
6
7
  arxml-dump = armodel.cli.arxml_dump_cli:cli_main
7
8
  arxml-format = armodel.cli.arxml_format_cli:main
8
9
  connector-update = armodel.cli.connector_update_cli:main