armodel 1.7.9__py3-none-any.whl → 1.8.1__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.
- armodel/cli/arxml_format_cli.py +1 -0
- armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +50 -12
- armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior.py +14 -14
- armodel/models/M2/AUTOSARTemplates/CommonStructure/FlatMap.py +2 -3
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Implementation.py +1 -1
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ImplementationDataTypes.py +36 -34
- armodel/models/M2/AUTOSARTemplates/CommonStructure/InternalBehavior.py +1 -1
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ModeDeclaration.py +4 -4
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ResourceConsumption/__init__.py +3 -3
- armodel/models/M2/AUTOSARTemplates/CommonStructure/ServiceNeeds.py +5 -0
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/ExecutionOrderConstraint.py +3 -3
- armodel/models/M2/AUTOSARTemplates/CommonStructure/Timing/TimingConstraint/TimingExtensions.py +3 -3
- armodel/models/M2/AUTOSARTemplates/ECUCDescriptionTemplate.py +86 -9
- armodel/models/M2/AUTOSARTemplates/ECUCParameterDefTemplate.py +1249 -0
- armodel/models/M2/AUTOSARTemplates/GenericStructure/AbstractStructure.py +13 -10
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ARPackage.py +238 -225
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/ArObject.py +5 -4
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/Identifiable.py +46 -25
- armodel/models/M2/AUTOSARTemplates/GenericStructure/GeneralTemplateClasses/PrimitiveTypes.py +38 -3
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Components/__init__.py +18 -20
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Datatype/Datatypes.py +23 -19
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/EndToEndProtection.py +4 -4
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/PortInterface/__init__.py +71 -27
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py +27 -17
- armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +172 -128
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/DataMapping.py +11 -10
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreCommunication.py +11 -11
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/CoreTopology.py +16 -10
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/FibexCore/EcuInstance.py +2 -2
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +6 -6
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/RteEventToOsTaskMapping.py +35 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/SWmapping.py +25 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/SecureCommunication.py +83 -0
- armodel/models/M2/AUTOSARTemplates/SystemTemplate/__init__.py +90 -38
- armodel/models/M2/MSR/AsamHdo/AdminData.py +101 -8
- armodel/models/__init__.py +2 -0
- armodel/models/utils/__init__.py +0 -0
- armodel/models/utils/uuid_mgr.py +23 -0
- armodel/parser/abstract_arxml_parser.py +13 -5
- armodel/parser/arxml_parser.py +412 -85
- armodel/tests/test_armodel/models/test_ECUCParameterDefTemplate.py +116 -0
- armodel/tests/test_armodel/models/test_Identifiable.py +85 -0
- armodel/tests/test_armodel/models/test_ar_object.py +85 -86
- armodel/tests/test_armodel/models/test_ar_package.py +70 -70
- armodel/tests/test_armodel/models/test_ar_ref.py +36 -36
- armodel/tests/test_armodel/models/test_common_structure.py +37 -35
- armodel/tests/test_armodel/models/test_datatype.py +140 -142
- armodel/tests/test_armodel/models/test_general_structure.py +19 -18
- armodel/tests/test_armodel/models/test_port_interface.py +2 -6
- armodel/tests/test_armodel/parser/test_arxml_parser.py +8 -8
- armodel/writer/abstract_arxml_writer.py +6 -2
- armodel/writer/arxml_writer.py +414 -57
- {armodel-1.7.9.dist-info → armodel-1.8.1.dist-info}/METADATA +31 -1
- {armodel-1.7.9.dist-info → armodel-1.8.1.dist-info}/RECORD +58 -51
- {armodel-1.7.9.dist-info → armodel-1.8.1.dist-info}/LICENSE +0 -0
- {armodel-1.7.9.dist-info → armodel-1.8.1.dist-info}/WHEEL +0 -0
- {armodel-1.7.9.dist-info → armodel-1.8.1.dist-info}/entry_points.txt +0 -0
- {armodel-1.7.9.dist-info → armodel-1.8.1.dist-info}/top_level.txt +0 -0
armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/ServiceMapping.py
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
from typing import List
|
|
2
2
|
from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import CryptoServiceNeeds, DiagnosticCommunicationManagerNeeds, DiagnosticEventInfoNeeds
|
|
3
|
+
from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import DltUserNeeds
|
|
3
4
|
from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import DiagnosticEventNeeds, DiagnosticRoutineNeeds, DiagnosticValueNeeds
|
|
4
5
|
from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import DtcStatusChangeNotificationNeeds, EcuStateMgrUserNeeds, NvBlockNeeds
|
|
5
6
|
from .....M2.AUTOSARTemplates.CommonStructure.ServiceNeeds import RoleBasedDataAssignment, ServiceNeeds, ServiceDependency
|
|
@@ -49,79 +50,88 @@ class SwcServiceDependency(ServiceDependency):
|
|
|
49
50
|
return self._assigned_ports
|
|
50
51
|
|
|
51
52
|
def createNvBlockNeeds(self, short_name: str) -> NvBlockNeeds:
|
|
52
|
-
if (
|
|
53
|
+
if (not self.IsElementExists(short_name)):
|
|
53
54
|
needs = NvBlockNeeds(self, short_name)
|
|
54
55
|
self.addElement(needs)
|
|
55
56
|
return self.getElement(short_name)
|
|
56
57
|
|
|
57
58
|
def createDiagnosticCommunicationManagerNeeds(self, short_name: str) -> DiagnosticCommunicationManagerNeeds:
|
|
58
|
-
if (
|
|
59
|
+
if (not self.IsElementExists(short_name)):
|
|
59
60
|
needs = DiagnosticCommunicationManagerNeeds(self, short_name)
|
|
60
61
|
self.addElement(needs)
|
|
61
62
|
return self.getElement(short_name)
|
|
62
63
|
|
|
63
64
|
def createDiagnosticRoutineNeeds(self, short_name: str) -> DiagnosticRoutineNeeds:
|
|
64
|
-
if (
|
|
65
|
+
if (not self.IsElementExists(short_name)):
|
|
65
66
|
needs = DiagnosticRoutineNeeds(self, short_name)
|
|
66
67
|
self.addElement(needs)
|
|
67
68
|
return self.getElement(short_name)
|
|
68
69
|
|
|
69
70
|
def createDiagnosticValueNeeds(self, short_name: str) -> DiagnosticValueNeeds:
|
|
70
|
-
if (
|
|
71
|
+
if (not self.IsElementExists(short_name)):
|
|
71
72
|
needs = DiagnosticValueNeeds(self, short_name)
|
|
72
73
|
self.addElement(needs)
|
|
73
74
|
return self.getElement(short_name)
|
|
74
75
|
|
|
75
76
|
def createDiagnosticEventNeeds(self, short_name: str) -> DiagnosticEventNeeds:
|
|
76
|
-
if (
|
|
77
|
+
if (not self.IsElementExists(short_name)):
|
|
77
78
|
needs = DiagnosticEventNeeds(self, short_name)
|
|
78
79
|
self.addElement(needs)
|
|
79
80
|
return self.getElement(short_name)
|
|
80
81
|
|
|
81
82
|
def createDiagnosticEventInfoNeeds(self, short_name: str) -> DiagnosticEventInfoNeeds:
|
|
82
|
-
if (
|
|
83
|
+
if (not self.IsElementExists(short_name)):
|
|
83
84
|
needs = DiagnosticEventInfoNeeds(self, short_name)
|
|
84
85
|
self.addElement(needs)
|
|
85
86
|
return self.getElement(short_name)
|
|
86
87
|
|
|
87
88
|
def createCryptoServiceNeeds(self, short_name: str) -> CryptoServiceNeeds:
|
|
88
|
-
if (
|
|
89
|
+
if (not self.IsElementExists(short_name)):
|
|
89
90
|
needs = CryptoServiceNeeds(self, short_name)
|
|
90
91
|
self.addElement(needs)
|
|
91
92
|
return self.getElement(short_name)
|
|
92
93
|
|
|
93
94
|
def createEcuStateMgrUserNeeds(self, short_name: str) -> EcuStateMgrUserNeeds:
|
|
94
|
-
if (
|
|
95
|
+
if (not self.IsElementExists(short_name)):
|
|
95
96
|
needs = EcuStateMgrUserNeeds(self, short_name)
|
|
96
97
|
self.addElement(needs)
|
|
97
98
|
return self.getElement(short_name)
|
|
98
99
|
|
|
99
100
|
def createDtcStatusChangeNotificationNeeds(self, short_name: str) -> DtcStatusChangeNotificationNeeds:
|
|
100
|
-
if (
|
|
101
|
+
if (not self.IsElementExists(short_name)):
|
|
101
102
|
needs = DtcStatusChangeNotificationNeeds(self, short_name)
|
|
102
103
|
self.addElement(needs)
|
|
103
104
|
return self.getElement(short_name)
|
|
104
105
|
|
|
106
|
+
def createDltUserNeeds(self, short_name: str) -> DltUserNeeds:
|
|
107
|
+
if (not self.IsElementExists(short_name)):
|
|
108
|
+
needs = DltUserNeeds(self, short_name)
|
|
109
|
+
self.addElement(needs)
|
|
110
|
+
return self.getElement(short_name)
|
|
111
|
+
|
|
105
112
|
def getNvBlockNeeds(self) -> List[NvBlockNeeds]:
|
|
106
|
-
return sorted(filter(lambda c: isinstance(c, NvBlockNeeds), self.elements
|
|
113
|
+
return sorted(filter(lambda c: isinstance(c, NvBlockNeeds), self.elements), key=lambda e: e.short_name)
|
|
107
114
|
|
|
108
115
|
def getDiagnosticCommunicationManagerNeeds(self) -> List[DiagnosticCommunicationManagerNeeds]:
|
|
109
|
-
return sorted(filter(lambda c: isinstance(c, DiagnosticCommunicationManagerNeeds), self.elements
|
|
116
|
+
return sorted(filter(lambda c: isinstance(c, DiagnosticCommunicationManagerNeeds), self.elements), key=lambda e: e.short_name)
|
|
110
117
|
|
|
111
118
|
def getDiagnosticRoutineNeeds(self) -> List[DiagnosticRoutineNeeds]:
|
|
112
|
-
return sorted(filter(lambda c: isinstance(c, DiagnosticRoutineNeeds), self.elements
|
|
119
|
+
return sorted(filter(lambda c: isinstance(c, DiagnosticRoutineNeeds), self.elements), key=lambda e: e.short_name)
|
|
113
120
|
|
|
114
121
|
def getDiagnosticEventNeeds(self) -> List[DiagnosticEventNeeds]:
|
|
115
|
-
return sorted(filter(lambda c: isinstance(c, DiagnosticEventNeeds), self.elements
|
|
122
|
+
return sorted(filter(lambda c: isinstance(c, DiagnosticEventNeeds), self.elements), key=lambda e: e.short_name)
|
|
116
123
|
|
|
117
124
|
def getCryptoServiceNeeds(self) -> List[CryptoServiceNeeds]:
|
|
118
|
-
return sorted(filter(lambda c: isinstance(c, CryptoServiceNeeds), self.elements
|
|
125
|
+
return sorted(filter(lambda c: isinstance(c, CryptoServiceNeeds), self.elements), key=lambda e: e.short_name)
|
|
119
126
|
|
|
120
127
|
def getEcuStateMgrUserNeeds(self) -> List[EcuStateMgrUserNeeds]:
|
|
121
|
-
return sorted(filter(lambda c: isinstance(c, EcuStateMgrUserNeeds), self.elements
|
|
128
|
+
return sorted(filter(lambda c: isinstance(c, EcuStateMgrUserNeeds), self.elements), key=lambda e: e.short_name)
|
|
122
129
|
|
|
123
130
|
def getDtcStatusChangeNotificationNeeds(self) -> List[DtcStatusChangeNotificationNeeds]:
|
|
124
|
-
return sorted(filter(lambda c: isinstance(c, DtcStatusChangeNotificationNeeds), self.elements
|
|
131
|
+
return sorted(filter(lambda c: isinstance(c, DtcStatusChangeNotificationNeeds), self.elements), key=lambda e: e.short_name)
|
|
132
|
+
|
|
133
|
+
def getDltUserNeeds(self) -> List[DltUserNeeds]:
|
|
134
|
+
return sorted(filter(lambda c: isinstance(c, DltUserNeeds), self.elements), key=lambda e: e.short_name)
|
|
125
135
|
|
|
126
136
|
def getServiceNeeds(self) -> List[ServiceNeeds]:
|
|
127
|
-
return sorted(filter(lambda c: isinstance(c, ServiceNeeds), self.elements
|
|
137
|
+
return sorted(filter(lambda c: isinstance(c, ServiceNeeds), self.elements), key=lambda e: e.short_name)
|