armodel 1.9.1__py3-none-any.whl → 1.9.2__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.
Files changed (45) hide show
  1. armodel/__init__.py +7 -8
  2. armodel/cli/connector2xlsx_cli.py +0 -2
  3. armodel/cli/connector_update_cli.py +0 -2
  4. armodel/cli/memory_section_cli.py +0 -2
  5. armodel/cli/swc_list_cli.py +0 -2
  6. armodel/cli/system_signal_cli.py +0 -2
  7. armodel/lib/__init__.py +0 -1
  8. armodel/models/M2/AUTOSARTemplates/AbstractPlatform/ApplicationDeferredDataType.py +21 -0
  9. armodel/models/M2/AUTOSARTemplates/AbstractPlatform/ApplicationInterface.py +79 -0
  10. armodel/models/M2/AUTOSARTemplates/AbstractPlatform/__init__.py +2 -0
  11. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/ApplicationDesign/PortInterface/Field.py +52 -0
  12. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/ApplicationDesign/PortInterface/__init__.py +1 -0
  13. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/AdaptiveModule/PlatformModuleEthernetEndpointConfiguration.py +63 -0
  14. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/AdaptiveModule/__init__.py +3 -0
  15. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/CryptoDeployment/CryptoKeySlot.py +128 -0
  16. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/CryptoDeployment/CryptoKeySlotContent.py +19 -0
  17. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/CryptoDeployment/__init__.py +4 -0
  18. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/Firewall/__init__.py +3 -3
  19. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/IntrusionDetectionSystem/IdsPlatformInstantiation.py +52 -0
  20. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/IntrusionDetectionSystem/IdsmModuleInstantiation.py +19 -0
  21. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/IntrusionDetectionSystem/__init__.py +4 -0
  22. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/PlatformModuleDeployment/__init__.py +24 -2
  23. armodel/models/M2/AUTOSARTemplates/AdaptivePlatform/__init__.py +1 -1
  24. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswAsynchronousServerCallReturnsEvent.py +1 -1
  25. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswInterruptEvent.py +1 -1
  26. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswBehavior/BswModeManagerErrorEvent.py +1 -1
  27. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview/InstanceRefs/ModeInBswModuleDescriptionInstanceRef.py +61 -0
  28. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview/InstanceRefs/__init__.py +3 -0
  29. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/{BswOverview.py → BswOverview/__init__.py} +62 -62
  30. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/Communication.py +8 -10
  31. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/RTEEvents.py +1 -1
  32. armodel/models/M2/AUTOSARTemplates/SWComponentTemplate/SwcInternalBehavior/__init__.py +15 -30
  33. armodel/models/M2/AUTOSARTemplates/SystemTemplate/DataMapping.py +1 -1
  34. armodel/models/M2/AUTOSARTemplates/SystemTemplate/Fibex/Fibex4Ethernet/ServiceInstances.py +15 -15
  35. armodel/models/M2/AUTOSARTemplates/SystemTemplate/NetworkManagement.py +2 -2
  36. armodel/models/__init__.py +69 -0
  37. armodel/parser/arxml_parser.py +1 -1
  38. {armodel-1.9.1.dist-info → armodel-1.9.2.dist-info}/METADATA +1 -1
  39. {armodel-1.9.1.dist-info → armodel-1.9.2.dist-info}/RECORD +43 -30
  40. armodel/models/M2/AUTOSARTemplates/AutosarTopLevelStructure.py +0 -315
  41. armodel/models/M2/AUTOSARTemplates/BswModuleTemplate/BswOverview/ModeInBswModuleDescriptionInstanceRef.py +0 -17
  42. {armodel-1.9.1.dist-info → armodel-1.9.2.dist-info}/WHEEL +0 -0
  43. {armodel-1.9.1.dist-info → armodel-1.9.2.dist-info}/entry_points.txt +0 -0
  44. {armodel-1.9.1.dist-info → armodel-1.9.2.dist-info}/licenses/LICENSE +0 -0
  45. {armodel-1.9.1.dist-info → armodel-1.9.2.dist-info}/top_level.txt +0 -0
armodel/__init__.py CHANGED
@@ -5,15 +5,14 @@ This library provides ARXML parser and writer functionality for automotive
5
5
  ECU software development.
6
6
  """
7
7
 
8
- __version__ = "1.9.1"
8
+ __version__ = "1.9.2"
9
9
 
10
- from armodel.models import AUTOSAR
10
+ # Import all model classes for direct access
11
+ from armodel.models import *
11
12
  from armodel.parser import ARXMLParser, FileListParser
12
13
  from armodel.writer import ARXMLWriter
13
14
 
14
- __all__ = [
15
- "AUTOSAR",
16
- "ARXMLParser",
17
- "FileListParser",
18
- "ARXMLWriter",
19
- ]
15
+ # Export all model classes plus parser/writer
16
+ import armodel.models
17
+ _models_all = getattr(armodel.models, '__all__', [])
18
+ __all__ = list(_models_all) + ["ARXMLParser", "FileListParser", "ARXMLWriter"]
@@ -10,8 +10,6 @@ from armodel.lib import InputFileParser
10
10
  from armodel.report import ConnectorXlsReport
11
11
 
12
12
  def main():
13
- version = __version__
14
-
15
13
  ap = argparse.ArgumentParser()
16
14
  ap.add_argument("-v", "--verbose", required= False, help= "Print debug information", action= "store_true")
17
15
  ap.add_argument("-w", "--warning", required= False, help= "Skip the error and report it as warning message", action= "store_true")
@@ -10,8 +10,6 @@ from armodel.parser.arxml_parser import ARXMLParser
10
10
  from armodel.parser.connector_xlsx_parser import ConnectorXlsReader
11
11
 
12
12
  def main():
13
- version = __version__
14
-
15
13
  ap = argparse.ArgumentParser()
16
14
  ap.add_argument("-v", "--verbose", required= False, help= "Print debug information", action= "store_true")
17
15
  ap.add_argument("-w", "--warning", required= False, help= "Skip the error and report it as warning message", action= "store_true")
@@ -9,8 +9,6 @@ from armodel.parser import ARXMLParser
9
9
  from armodel.lib import InputFileParser, SystemSignalAnalyzer
10
10
 
11
11
  def main():
12
- version = __version__
13
-
14
12
  ap = argparse.ArgumentParser()
15
13
  ap.add_argument("-v", "--verbose", required= False, help= "Print debug information", action= "store_true")
16
14
  ap.add_argument("-f", "--format", required= False, help= "Specify the short or long name of Sw-C. [short|long]")
@@ -9,8 +9,6 @@ from armodel.parser import ARXMLParser
9
9
  from armodel.lib import InputFileParser, SwComponentAnalyzer
10
10
 
11
11
  def main():
12
- version = __version__
13
-
14
12
  ap = argparse.ArgumentParser()
15
13
  ap.add_argument("-v", "--verbose", required= False, help= "Print debug information", action= "store_true")
16
14
  ap.add_argument("-f", "--format", required= False, help= "Specify the short or long name of Sw-C. [short|long]")
@@ -9,8 +9,6 @@ from armodel.parser import ARXMLParser
9
9
  from armodel.lib import InputFileParser, SystemSignalAnalyzer
10
10
 
11
11
  def main():
12
- version = __version__
13
-
14
12
  ap = argparse.ArgumentParser()
15
13
  ap.add_argument("-v", "--verbose", required= False, help= "Print debug information", action= "store_true")
16
14
  ap.add_argument("-f", "--format", required= False, help= "Specify the name format of SW-C. [short|full]")
armodel/lib/__init__.py CHANGED
@@ -1,4 +1,3 @@
1
1
 
2
- from armodel.lib.cli_args_parser import InputFileParser
3
2
  from armodel.lib.sw_component import SwComponentAnalyzer
4
3
  from armodel.lib.system_signal import SystemSignalAnalyzer
@@ -0,0 +1,21 @@
1
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
2
+ ARObject,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.Datatypes import (
5
+ ApplicationDataType,
6
+ )
7
+
8
+
9
+ class ApplicationDeferredDataType(ApplicationDataType):
10
+ """
11
+ A placeholder data type in which the precise application data type is
12
+ deferred to a later stage. Tags: atp.Status=draft
13
+ atp.recommendedPackage=ApplicationDataTypes
14
+
15
+ Sources:
16
+ - AUTOSAR_FO_TPS_AbstractPlatformSpecification.pdf (Page 37, Foundation
17
+ R23-11)
18
+ """
19
+
20
+ def __init__(self, parent: ARObject, short_name: str):
21
+ super().__init__(parent, short_name)
@@ -0,0 +1,79 @@
1
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.ApplicationDesign.PortInterface.Field import (
2
+ Field,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
5
+ ARObject,
6
+ )
7
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import (
8
+ RefType,
9
+ )
10
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.PortInterface import (
11
+ ClientServerOperation,
12
+ )
13
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.PortInterface import (
14
+ PortInterface,
15
+ )
16
+ from typing import List
17
+
18
+
19
+ class ApplicationInterface(PortInterface):
20
+ """
21
+ This represents the ability to define a PortInterface that consists of a
22
+ composition of commands (method calls), indications (events) and attributes
23
+ (fields) Tags: atp.Status=draft atp.recommendedPackage=Interfaces
24
+
25
+ Sources:
26
+ - AUTOSAR_FO_TPS_AbstractPlatformSpecification.pdf (Page 28, Foundation
27
+ R23-11)
28
+ """
29
+
30
+ def __init__(self, parent: ARObject, short_name: str):
31
+ super().__init__(parent, short_name)
32
+
33
+ # This represents the set of attributes defined in the context Abstract
34
+ # Platform ApplicationInterface.
35
+ # atpVariation.
36
+ self.attributes: List[Field] = []
37
+ # This represents the collection of commands or function optional data
38
+ # arguments) defined in the context ApplicationInterface.
39
+ # atpVariation.
40
+ self.commands: List[ClientServerOperation] = []
41
+ # This represents the collection of indication or events (with argument)
42
+ # defined in the context of an atpVariation.
43
+ self.indications: List[RefType] = []
44
+
45
+ def getAttributes(self) -> List[Field]:
46
+ return self.attributes
47
+
48
+ def setAttributes(self, value: List[Field]) -> "ApplicationInterface":
49
+ self.attributes = value
50
+ return self
51
+
52
+ def addAttribute(self, value: Field) -> "ApplicationInterface":
53
+ """Adds a value to the attributes list."""
54
+ self.attributes.append(value)
55
+ return self
56
+
57
+ def getCommands(self) -> List[ClientServerOperation]:
58
+ return self.commands
59
+
60
+ def setCommands(self, value: List[ClientServerOperation]) -> "ApplicationInterface":
61
+ self.commands = value
62
+ return self
63
+
64
+ def addCommand(self, value: ClientServerOperation) -> "ApplicationInterface":
65
+ """Adds a value to the commands list."""
66
+ self.commands.append(value)
67
+ return self
68
+
69
+ def getIndications(self) -> List[RefType]:
70
+ return self.indications
71
+
72
+ def setIndications(self, value: List[RefType]) -> "ApplicationInterface":
73
+ self.indications = value
74
+ return self
75
+
76
+ def addIndication(self, value: RefType) -> "ApplicationInterface":
77
+ """Adds a value to the indications list."""
78
+ self.indications.append(value)
79
+ return self
@@ -0,0 +1,2 @@
1
+ from .ApplicationDeferredDataType import *
2
+ from .ApplicationInterface import *
@@ -0,0 +1,52 @@
1
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import ARObject
2
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import Boolean
3
+ from armodel.models.M2.AUTOSARTemplates.SWComponentTemplate.Datatype.DataPrototypes import AutosarDataPrototype
4
+ from typing import Optional
5
+
6
+ class Field(AutosarDataPrototype):
7
+ """
8
+ This meta-class represents the ability to define a piece of data that can be
9
+ accessed with read and/or write semantics. It is also possible to generate a
10
+ notification if the value of the data changes.
11
+
12
+ Sources:
13
+ - AUTOSAR_FO_TPS_AbstractPlatformSpecification.pdf (Page 45, Foundation
14
+ R23-11)
15
+ """
16
+ def __init__(self, parent: ARObject, short_name: str):
17
+ super().__init__(parent, short_name)
18
+
19
+ # This attribute controls whether read access is foreseen to.
20
+ self.hasGetter: Optional[Boolean] = None
21
+ # This attribute controls whether a notification semantics is this field.
22
+ self.hasNotifier: Optional[Boolean] = None
23
+ # This attribute controls whether write access is foreseen to.
24
+ self.hasSetter: Optional[Boolean] = None
25
+
26
+ def getHasGetter(self) -> Boolean:
27
+ return self.hasGetter
28
+
29
+
30
+ def setHasGetter(self, value: Boolean) -> "Field":
31
+ self.hasGetter = value
32
+ return self
33
+
34
+
35
+ def getHasNotifier(self) -> Boolean:
36
+ return self.hasNotifier
37
+
38
+
39
+ def setHasNotifier(self, value: Boolean) -> "Field":
40
+ self.hasNotifier = value
41
+ return self
42
+
43
+
44
+ def getHasSetter(self) -> Boolean:
45
+ return self.hasSetter
46
+
47
+
48
+ def setHasSetter(self, value: Boolean) -> "Field":
49
+ self.hasSetter = value
50
+ return self
51
+
52
+
@@ -0,0 +1,63 @@
1
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
2
+ ARObject,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import (
5
+ ARElement,
6
+ )
7
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import (
8
+ Ip4AddressString,
9
+ )
10
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import (
11
+ Ip6AddressString,
12
+ )
13
+ from typing import Any, Optional
14
+
15
+
16
+ class PlatformModuleEthernetEndpointConfiguration(ARElement):
17
+ """
18
+ This meta-class defines the attributes for the configuration of a port,
19
+ protocol type and IP address of the communication on a VLAN. Tags:
20
+ atp.recommendedPackage=PlatformModuleEndpointConfigurations
21
+
22
+ Sources:
23
+ - AUTOSAR_FO_TPS_SecurityExtractTemplate.pdf (Page 65, Foundation R23-11)
24
+ """
25
+
26
+ def __init__(self, parent: ARObject, short_name: str):
27
+ super().__init__(parent, short_name)
28
+
29
+ # Type: EthernetCommunication.
30
+ # Reference to the CommunicationConnector (VLAN) for which the network
31
+ # configuration is defined.
32
+ self.communications: Optional[Any] = None
33
+ # Multicast IPv4 Address to which the message will be.
34
+ self.ipv4MulticastIps: Optional[Ip4AddressString] = None
35
+ # Multicast IPv6 Address to which the message will be.
36
+ self.ipv6MulticastIps: Optional[Ip6AddressString] = None
37
+
38
+ def getCommunications(self) -> Any:
39
+ return self.communications
40
+
41
+ def setCommunications(
42
+ self, value: Any
43
+ ) -> "PlatformModuleEthernetEndpointConfiguration":
44
+ self.communications = value
45
+ return self
46
+
47
+ def getIpv4MulticastIps(self) -> Ip4AddressString:
48
+ return self.ipv4MulticastIps
49
+
50
+ def setIpv4MulticastIps(
51
+ self, value: Ip4AddressString
52
+ ) -> "PlatformModuleEthernetEndpointConfiguration":
53
+ self.ipv4MulticastIps = value
54
+ return self
55
+
56
+ def getIpv6MulticastIps(self) -> Ip6AddressString:
57
+ return self.ipv6MulticastIps
58
+
59
+ def setIpv6MulticastIps(
60
+ self, value: Ip6AddressString
61
+ ) -> "PlatformModuleEthernetEndpointConfiguration":
62
+ self.ipv6MulticastIps = value
63
+ return self
@@ -0,0 +1,3 @@
1
+ from .PlatformModuleEthernetEndpointConfiguration import PlatformModuleEthernetEndpointConfiguration
2
+
3
+ __all__ = ['PlatformModuleEthernetEndpointConfiguration']
@@ -0,0 +1,128 @@
1
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.CryptoDeployment.CryptoKeySlotContent import ( # noqa: F401
2
+ CryptoKeySlotContent,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
5
+ ARObject,
6
+ )
7
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import (
8
+ Identifiable,
9
+ )
10
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import (
11
+ Boolean,
12
+ )
13
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import (
14
+ PositiveInteger,
15
+ )
16
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import (
17
+ String,
18
+ )
19
+ from typing import Any, List, Optional
20
+
21
+
22
+ class CryptoKeySlot(Identifiable):
23
+ """
24
+ This meta-class represents the ability to define a concrete key to be used
25
+ for a crypto operation. Tags: atp.ManifestKind=MachineManifest
26
+
27
+ Sources:
28
+ - AUTOSAR_FO_TPS_SecurityExtractTemplate.pdf (Page 57, Foundation R23-11)
29
+ """
30
+
31
+ def __init__(self, parent: ARObject, short_name: str):
32
+ super().__init__(parent, short_name)
33
+
34
+ # This attribute defines whether a shadow copy of this Key shall be allocated
35
+ # to enable rollback of a failed Key campaign (see interface BeginTransaction).
36
+ self.allocateShadows: Optional[Boolean] = None
37
+ # This attribute defines a crypto algorithm restriction (kAlgId without
38
+ # restriction).
39
+ # The algorithm can be family & length, mode, padding.
40
+ # Providers can support some crypto are not well known/ standardized today,
41
+ # doesn’t provide a concrete list of identifiers and doesn’t suppose usage
42
+ # identifiers.
43
+ # Instead of this a provider supplier string names of supported algorithms in
44
+ # The name of a crypto follow the rules defined in the specification for
45
+ # Adaptive Platform.
46
+ # 97 Document ID 980: AUTOSAR_FO_TPS_SecurityExtractTemplate Template R23-11.
47
+ self.cryptoAlgIds: Optional[String] = None
48
+ # Type: CryptoObjectTypeEnum.
49
+ # Object type that can be stored in the slot.
50
+ # If this field "Undefined" then mSlotCapacity must be larger then 0.
51
+ self.cryptoObjects: Optional[Any] = None
52
+ # Type: CryptoKeySlotAllowed.
53
+ # Restricts how this keySlot may be used Tags: atp.
54
+ # Status=candidate.
55
+ self.keySlotAlloweds: Optional[Any] = None
56
+ # Type: CryptoKeySlotContent.
57
+ # Restriction of allowed usage of a key stored to the slot.
58
+ # Tags: atp.
59
+ # Status=candidate.
60
+ self.keySlotContents: List[Any] = []
61
+ # Capacity of the slot in bytes to be reserved by the stack use case is to
62
+ # define this value in case that is undefined and the slot size can deduced
63
+ # from cryptoObjectType and cryptoAlgId.
64
+ # slot size can be deduced from cryptoObject cryptoAlgId.
65
+ self.slotCapacitys: Optional[PositiveInteger] = None
66
+ # Type: CryptoKeySlotType.
67
+ # This attribute defines whether the keySlot is exclusively by the Application;
68
+ # or whether it is used by Stack managed by a Key Manager Application.
69
+ self.slotTypes: Optional[Any] = None
70
+
71
+ def getAllocateShadows(self) -> Boolean:
72
+ return self.allocateShadows
73
+
74
+ def setAllocateShadows(self, value: Boolean) -> "CryptoKeySlot":
75
+ self.allocateShadows = value
76
+ return self
77
+
78
+ def getCryptoAlgIds(self) -> String:
79
+ return self.cryptoAlgIds
80
+
81
+ def setCryptoAlgIds(self, value: String) -> "CryptoKeySlot":
82
+ self.cryptoAlgIds = value
83
+ return self
84
+
85
+ def getCryptoObjects(self) -> Any:
86
+ return self.cryptoObjects
87
+
88
+ def setCryptoObjects(self, value: Any) -> "CryptoKeySlot":
89
+ self.cryptoObjects = value
90
+ return self
91
+
92
+ def getKeySlotAlloweds(self) -> Any:
93
+ return self.keySlotAlloweds
94
+
95
+ def setKeySlotAlloweds(self, value: Any) -> "CryptoKeySlot":
96
+ self.keySlotAlloweds = value
97
+ return self
98
+
99
+ def getKeySlotContents(self) -> List[Any]:
100
+ return self.keySlotContents
101
+
102
+ def setKeySlotContents(self, value: List[Any]) -> "CryptoKeySlot":
103
+ self.keySlotContents = value
104
+ return self
105
+
106
+ def createKeySlotContent(self, short_name: str) -> CryptoKeySlotContent:
107
+ """Creates and adds a keySlotContent to this CryptoKeySlot."""
108
+ if short_name not in self.elements:
109
+ new_element = CryptoKeySlotContent(self, short_name)
110
+ # Only call addElement if child has getShortName method (Referrable subclasses)
111
+ if hasattr(new_element, "getShortName"):
112
+ self.addElement(new_element)
113
+ self.keySlotContents.append(new_element)
114
+ return new_element
115
+
116
+ def getSlotCapacitys(self) -> PositiveInteger:
117
+ return self.slotCapacitys
118
+
119
+ def setSlotCapacitys(self, value: PositiveInteger) -> "CryptoKeySlot":
120
+ self.slotCapacitys = value
121
+ return self
122
+
123
+ def getSlotTypes(self) -> Any:
124
+ return self.slotTypes
125
+
126
+ def setSlotTypes(self, value: Any) -> "CryptoKeySlot":
127
+ self.slotTypes = value
128
+ return self
@@ -0,0 +1,19 @@
1
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
2
+ ARObject,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import (
5
+ Identifiable,
6
+ )
7
+
8
+
9
+ class CryptoKeySlotContent(Identifiable):
10
+ """
11
+ This meta-class represents the restriction of allowed usage of a key stored
12
+ to the slot. Tags: atp.Status=candidate
13
+
14
+ Sources:
15
+ - AUTOSAR_FO_TPS_SecurityExtractTemplate.pdf (Page 57, Foundation R23-11)
16
+ """
17
+
18
+ def __init__(self, parent: ARObject, short_name: str):
19
+ super().__init__(parent, short_name)
@@ -0,0 +1,4 @@
1
+ from .CryptoKeySlot import CryptoKeySlot
2
+ from .CryptoKeySlotContent import CryptoKeySlotContent
3
+
4
+ __all__ = ['CryptoKeySlot', 'CryptoKeySlotContent']
@@ -1,5 +1,5 @@
1
- from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.FirewallRule import FirewallRule
2
- from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.FirewallRuleProps import FirewallRuleProps
3
- from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.StateDependentFirewall import StateDependentFirewall
1
+ from .FirewallRule import FirewallRule
2
+ from .FirewallRuleProps import FirewallRuleProps
3
+ from .StateDependentFirewall import StateDependentFirewall
4
4
 
5
5
  __all__ = ['FirewallRule', 'FirewallRuleProps', 'StateDependentFirewall']
@@ -0,0 +1,52 @@
1
+ from abc import ABC
2
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
3
+ ARObject,
4
+ )
5
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.Identifiable import (
6
+ Identifiable,
7
+ )
8
+ from typing import Any, List, Optional
9
+
10
+
11
+ class IdsPlatformInstantiation(Identifiable, ABC):
12
+ """
13
+ This meta-class acts as an abstract base class for platform modules that
14
+ implement the intrusion detection system. Tags: atp.Status=candidate
15
+
16
+ Sources:
17
+ - AUTOSAR_FO_TPS_SecurityExtractTemplate.pdf (Page 63, Foundation R23-11)
18
+ """
19
+
20
+ def __init__(self, parent: ARObject, short_name: str):
21
+ if type(self) is IdsPlatformInstantiation:
22
+ raise TypeError("IdsPlatformInstantiation is an abstract class.")
23
+ super().__init__(parent, short_name)
24
+
25
+ # Type: PlatformModule.
26
+ # This association contains the network configuration that shall be applied to
27
+ # an instance of an IDS entity.
28
+ # atp.
29
+ # Status=candidate.
30
+ self.networks: List[Any] = []
31
+ # Type: TimeBaseResource.
32
+ # This reference identifies the applicable time base atpVariation.
33
+ self.timeBases: Optional[Any] = None
34
+
35
+ def getNetworks(self) -> List[Any]:
36
+ return self.networks
37
+
38
+ def setNetworks(self, value: List[Any]) -> "IdsPlatformInstantiation":
39
+ self.networks = value
40
+ return self
41
+
42
+ def addNetwork(self, value: Any) -> "IdsPlatformInstantiation":
43
+ """Adds a value to the networks list."""
44
+ self.networks.append(value)
45
+ return self
46
+
47
+ def getTimeBases(self) -> Any:
48
+ return self.timeBases
49
+
50
+ def setTimeBases(self, value: Any) -> "IdsPlatformInstantiation":
51
+ self.timeBases = value
52
+ return self
@@ -0,0 +1,19 @@
1
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.IntrusionDetectionSystem.IdsPlatformInstantiation import ( # noqa: F401
2
+ IdsPlatformInstantiation,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.ArObject import (
5
+ ARObject,
6
+ )
7
+
8
+
9
+ class IdsmModuleInstantiation(IdsPlatformInstantiation):
10
+ """
11
+ This meta-class defines the attributes for the IdsM configuration on a
12
+ specific machine. Tags: atp.Status=candidate
13
+
14
+ Sources:
15
+ - AUTOSAR_FO_TPS_SecurityExtractTemplate.pdf (Page 63, Foundation R23-11)
16
+ """
17
+
18
+ def __init__(self, parent: ARObject, short_name: str):
19
+ super().__init__(parent, short_name)
@@ -0,0 +1,4 @@
1
+ from .IdsPlatformInstantiation import IdsPlatformInstantiation
2
+ from .IdsmModuleInstantiation import IdsmModuleInstantiation
3
+
4
+ __all__ = ['IdsPlatformInstantiation', 'IdsmModuleInstantiation']
@@ -1,3 +1,25 @@
1
- from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.Firewall import FirewallRule, FirewallRuleProps, StateDependentFirewall
1
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.AdaptiveModule import ( # noqa: F401
2
+ PlatformModuleEthernetEndpointConfiguration,
3
+ )
4
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.CryptoDeployment import ( # noqa: F401
5
+ CryptoKeySlot,
6
+ )
7
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.Firewall import ( # noqa: F401
8
+ FirewallRule,
9
+ FirewallRuleProps,
10
+ StateDependentFirewall,
11
+ )
12
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment.IntrusionDetectionSystem import ( # noqa: F401
13
+ IdsPlatformInstantiation,
14
+ IdsmModuleInstantiation,
15
+ )
2
16
 
3
- __all__ = ['FirewallRule', 'FirewallRuleProps', 'StateDependentFirewall']
17
+ __all__ = [
18
+ 'PlatformModuleEthernetEndpointConfiguration',
19
+ 'CryptoKeySlot',
20
+ 'FirewallRule',
21
+ 'FirewallRuleProps',
22
+ 'StateDependentFirewall',
23
+ 'IdsPlatformInstantiation',
24
+ 'IdsmModuleInstantiation',
25
+ ]
@@ -1,3 +1,3 @@
1
- from armodel.models.M2.AUTOSARTemplates.PlatformModuleDeployment import FirewallRule, FirewallRuleProps, StateDependentFirewall
1
+ from armodel.models.M2.AUTOSARTemplates.AdaptivePlatform.PlatformModuleDeployment import FirewallRule, FirewallRuleProps, StateDependentFirewall
2
2
 
3
3
  __all__ = ['FirewallRule', 'FirewallRuleProps', 'StateDependentFirewall']
@@ -3,7 +3,7 @@ This module defines BSW asynchronous server call returns event in AUTOSAR.
3
3
  """
4
4
 
5
5
  from armodel.models.M2.AUTOSARTemplates.GenericStructure.GeneralTemplateClasses.PrimitiveTypes import RefType
6
- from armodel.models.M2.AUTOSARTemplates.BswModuleTemplate.BswEvent import BswEvent
6
+ from armodel.models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswEvent
7
7
 
8
8
 
9
9
  class BswAsynchronousServerCallReturnsEvent(BswEvent):
@@ -2,7 +2,7 @@
2
2
  This module defines BSW interrupt event in AUTOSAR.
3
3
  """
4
4
 
5
- from armodel.models.M2.AUTOSARTemplates.BswModuleTemplate.BswEvent import BswEvent
5
+ from armodel.models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswEvent
6
6
 
7
7
 
8
8
  class BswInterruptEvent(BswEvent):
@@ -2,7 +2,7 @@
2
2
  This module defines BSW mode manager error event in AUTOSAR.
3
3
  """
4
4
 
5
- from armodel.models.M2.AUTOSARTemplates.BswModuleTemplate.BswEvent import BswEvent
5
+ from armodel.models.M2.AUTOSARTemplates.BswModuleTemplate.BswBehavior import BswEvent
6
6
 
7
7
 
8
8
  class BswModeManagerErrorEvent(BswEvent):