armodel 1.2.0__py3-none-any.whl → 1.4.0__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 (54) hide show
  1. armodel/cli/arxml_dump_cli.py +8 -8
  2. armodel/cli/connector2xlsx_cli.py +75 -0
  3. armodel/cli/connector_update_cli.py +70 -0
  4. armodel/cli/swc_list_cli.py +81 -0
  5. armodel/lib/__init__.py +3 -0
  6. armodel/lib/cli_args_parser.py +36 -0
  7. armodel/lib/data_analyzer.py +34 -0
  8. armodel/lib/sw_component.py +34 -0
  9. armodel/models/__init__.py +6 -1
  10. armodel/models/ar_object.py +40 -1
  11. armodel/models/ar_package.py +35 -1
  12. armodel/models/ar_ref.py +12 -2
  13. armodel/models/bsw_module_template.py +3 -2
  14. armodel/models/calibration.py +16 -0
  15. armodel/models/common_structure.py +92 -0
  16. armodel/models/communication.py +8 -0
  17. armodel/models/datatype.py +23 -5
  18. armodel/models/general_structure.py +48 -3
  19. armodel/models/global_constraints.py +40 -0
  20. armodel/models/m2_msr.py +76 -2
  21. armodel/models/port_prototype.py +21 -16
  22. armodel/models/sw_component.py +49 -18
  23. armodel/models/unit.py +14 -0
  24. armodel/parser/arxml_parser.py +595 -151
  25. armodel/parser/excel_parser.py +0 -0
  26. armodel/report/__init__.py +1 -0
  27. armodel/report/connector_xls_report.py +76 -0
  28. armodel/report/excel_report.py +42 -0
  29. armodel/tests/__init__.py +0 -0
  30. armodel/tests/test_armodel/__init__.py +0 -0
  31. armodel/tests/test_armodel/models/__init__.py +0 -0
  32. armodel/tests/test_armodel/models/test_ar_package.py +294 -0
  33. armodel/tests/test_armodel/models/test_ar_ref.py +74 -0
  34. armodel/tests/test_armodel/models/test_bsw_module_template.py +46 -0
  35. armodel/tests/test_armodel/models/test_common_structure.py +73 -0
  36. armodel/tests/test_armodel/models/test_data_dictionary.py +29 -0
  37. armodel/tests/test_armodel/models/test_data_prototype.py +86 -0
  38. armodel/tests/test_armodel/models/test_datatype.py +239 -0
  39. armodel/tests/test_armodel/models/test_general_structure.py +50 -0
  40. armodel/tests/test_armodel/models/test_m2_msr.py +77 -0
  41. armodel/tests/test_armodel/models/test_port_interface.py +198 -0
  42. armodel/tests/test_armodel/models/test_port_prototype.py +14 -0
  43. armodel/tests/test_armodel/parser/__init__.py +0 -0
  44. armodel/tests/test_armodel/parser/test_parse_bswmd.py +168 -0
  45. armodel/writer/__init__.py +1 -0
  46. armodel/writer/arxml_writer.py +641 -0
  47. {armodel-1.2.0.dist-info → armodel-1.4.0.dist-info}/METADATA +69 -5
  48. armodel-1.4.0.dist-info/RECORD +60 -0
  49. {armodel-1.2.0.dist-info → armodel-1.4.0.dist-info}/WHEEL +1 -1
  50. armodel-1.4.0.dist-info/entry_points.txt +5 -0
  51. armodel-1.2.0.dist-info/RECORD +0 -27
  52. armodel-1.2.0.dist-info/entry_points.txt +0 -3
  53. {armodel-1.2.0.dist-info → armodel-1.4.0.dist-info}/LICENSE +0 -0
  54. {armodel-1.2.0.dist-info → armodel-1.4.0.dist-info}/top_level.txt +0 -0
@@ -1,13 +1,12 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: armodel
3
- Version: 1.2.0
3
+ Version: 1.4.0
4
4
  Summary: the python arxml parser
5
5
  Home-page: http://github.com/melodypapa/py-armodel
6
6
  Author: melodypapa
7
7
  Author-email: melodypapa@outlook.com
8
8
  License: MIT
9
9
  Keywords: AUTOSAR ARXML
10
- Platform: UNKNOWN
11
10
  Classifier: Development Status :: 1 - Planning
12
11
  Classifier: Environment :: Console
13
12
  Classifier: Programming Language :: Python :: 3
@@ -15,6 +14,10 @@ Classifier: License :: OSI Approved :: MIT License
15
14
  Classifier: Operating System :: OS Independent
16
15
  Requires-Python: >=3.5
17
16
  Description-Content-Type: text/markdown
17
+ License-File: LICENSE
18
+ Requires-Dist: colorama
19
+ Requires-Dist: openpyxl
20
+ Requires-Dist: lxml
18
21
  Provides-Extra: pytest
19
22
  Requires-Dist: pytest-cov ; extra == 'pytest'
20
23
 
@@ -85,6 +88,11 @@ And more details can be found at https://packaging.python.org/
85
88
  - BswModuleDescription
86
89
  - ExecutableEntity
87
90
  - SwcBswMapping
91
+ - PortPrototype
92
+ - AbstractProvidedPortPrototype
93
+ - PPortPrototype
94
+ - AbstractRequiredPortPrototype
95
+ - RPortPrototype
88
96
  - ValueSpecification
89
97
  - ConstantReference
90
98
  ```
@@ -95,17 +103,55 @@ And more details can be found at https://packaging.python.org/
95
103
 
96
104
  **Dump all the arxml data to screen**
97
105
 
106
+
98
107
  `arxml-dump --arxml arg -h`
99
108
 
100
109
  --arxml arg The file name of arxml data
101
-
102
110
  -h show the help information
103
111
 
104
- ### 1.8.2. Example for arxml-dump
112
+ #### 1.8.1.1. arxml-dump usage
105
113
 
106
114
  **Dump the arxml data from test1.arxml and test2.arxml**
107
115
 
108
- `arxml-dump --arxml test1.arxml --arxml test2.arxml`
116
+ ```
117
+ $arxml-dump --arxml test1.arxml --arxml test2.arxml
118
+ ```
119
+
120
+ ### 1.8.2. arxml-swc
121
+
122
+ **List all the SwComponentType in the autosar model**
123
+
124
+ usage: swc-list [-h] [-v] [-f FORMAT] [--filter FILTER] Input [Input ...]
125
+
126
+ -h, --help show the help message and exit
127
+ -v, --verbose Print debug information
128
+ -f FORMAT, --format FORMAT
129
+ Specify the short or long name of Sw-C.
130
+ *short* : only print the short name of SWComponentType
131
+ *long* : print the SWComponentType with ARPackage names
132
+ --filter FILTER Set the filter condition.
133
+ *CompositionSwComponent* : Print the CompositionSwComponent only.
134
+
135
+
136
+ #### 1.8.2.1. List all the SW-Components in the specific path
137
+
138
+ ```
139
+ $arxml-swc <arxml_folder>
140
+ ```
141
+
142
+ #### 1.8.2.2. List all the CompositionSwComponent with the long name
143
+
144
+ ```
145
+ $arxml-swc --format long --filter CompositionSwComponent <arxml_folder>
146
+ ```
147
+
148
+ ### 1.8.3. connector2xlsx
149
+
150
+ **Export all the SwConnector (AssemblySwConnector, DelegationSwConnector) to excel file**
151
+
152
+ ```
153
+ $connector2xlsx <arxml_folder> connector.xlsx
154
+ ```
109
155
 
110
156
  ## 1.9. API
111
157
 
@@ -152,3 +198,21 @@ Fix the attribute intervalType of **Limit** is empty issue.
152
198
  7. Change the CATEGORY of COMPU-METHOD to optional.
153
199
  8. Change the CAN-BE-INVOKED-CONCURRENTLY to optional.
154
200
 
201
+ **Version 1.3.0**
202
+
203
+ 1. List all the SwComponentType (Issue #11)
204
+ 2. Support to parse the DelegationSwConnector (Issue #12)
205
+ 3. Correct the class definitions of PPortInCompositionInstanceRef and RPortInCompositionInstanceRef. (Issue #12)
206
+
207
+ **Version 1.4.0**
208
+
209
+ 1. Support to write the AUTOSAR model to arxml file (Issue #17)
210
+ * ARPackage
211
+ * CompositionSwComponent
212
+ * CompuMethod
213
+ * DataConstr
214
+ * Unit
215
+ 2. Support to read the AUTOSAR model from arxml file (Issue #17)
216
+ * ConstantSpecification
217
+ * DataConstr
218
+ * Unit
@@ -0,0 +1,60 @@
1
+ armodel/__init__.py,sha256=K_KHb3O2T21uteIe0wac-tb3kI2xWHTnwV9ShaXesAU,54
2
+ armodel/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ armodel/cli/arxml_dump_cli.py,sha256=SELbIKJMN65Lzfuze-q_XPBme-KTPrpb2yDl3fLctc8,9932
4
+ armodel/cli/connector2xlsx_cli.py,sha256=bPxJ53znVpluabEbjqN58RX8a9dvlf-cF5o7ncjqTyw,2125
5
+ armodel/cli/connector_update_cli.py,sha256=apbTgWluMxKsp2adjap93jcTgRHcrCkRIhHbPX1pGc0,2070
6
+ armodel/cli/swc_list_cli.py,sha256=NUyOuIYhXsbSzQl1CjWdgdP83CkeAkXS_kWY4zs-XKU,2414
7
+ armodel/lib/__init__.py,sha256=d6Zc24rVcVb5-TvPEdaJ7vx_7UJ37z9rLjXtpAzVBwU,93
8
+ armodel/lib/cli_args_parser.py,sha256=WiTC3wy_fZYloA1AjPqCvvOA_26V_y5toun0qfV51cw,1207
9
+ armodel/lib/data_analyzer.py,sha256=gIe52MuD90y32ygyyr-K7Nl88SkzEZtMvLyXmssJCBs,1177
10
+ armodel/lib/sw_component.py,sha256=y4ViEGPi_xRKD7hw1ptkGl0_UfhnNdgNzf2YjbOhpjM,1159
11
+ armodel/models/__init__.py,sha256=_T2emjzKbFAiyCR4Zu1c3FVghTzOSjlFKgmg3tTrppc,542
12
+ armodel/models/ar_object.py,sha256=GsTiPaN0lAh87pbsfU_fPfg7WQ_vMuia4ILWHBesDb8,1363
13
+ armodel/models/ar_package.py,sha256=0gY8Vl_eVmxehdi5wECGBzDsKL5KK7HDqS9ISorbUcI,14830
14
+ armodel/models/ar_ref.py,sha256=8QkTAJeJun8TMA39O4PjLYq3N4E7J19gB-DaJwZWpEQ,4075
15
+ armodel/models/bsw_module_template.py,sha256=cGSY2A5L0WmXJSaptCfX41CkmNsgJWDTPM7uQoRVmcs,11822
16
+ armodel/models/calibration.py,sha256=htYFZNCuqcCPIlQDMRt_euTZEyaGKKSzBqZ6tfpZH6s,405
17
+ armodel/models/common_structure.py,sha256=xRfRw7lD7WqJxhS-W2LO-OCXUmKbN7NPQzoa3qI-EZk,10056
18
+ armodel/models/communication.py,sha256=xcHEotwCLCzZm5OB0Opyxc3ODYRxSBPrEfrJ2eWquXg,183
19
+ armodel/models/data_dictionary.py,sha256=xSQzXkLQyOJiLIsczlAzGBnrrvHFVv2_-OfVyN6_MSE,867
20
+ armodel/models/data_prototype.py,sha256=pyIahyJh4KaikMfHikHiKzbGai1JnkrzDZpkVLvb6iU,2096
21
+ armodel/models/datatype.py,sha256=R3XKP3_ocar0uVsIBpOoKubkyIN7Jl9fY7-tgiXYbMg,6453
22
+ armodel/models/ecuc_parameter_def_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ armodel/models/general_structure.py,sha256=lomWyNcRLZAcOCwWocSBfCWdfyQ4_X4HdCZ61MxM-kU,5575
24
+ armodel/models/global_constraints.py,sha256=HeQNrDLNweHeqd6u_G7Jhf-CLVZiYTilU9Mqd-bZFUo,1280
25
+ armodel/models/implementation.py,sha256=jfatA90Ww51kMqnUsbx6q4JRRRIRFCQXVg88J44RNoA,3850
26
+ armodel/models/m2_msr.py,sha256=PqwPzLKrc0RWlaHYoX0ftQmSZGxXFIE9ZRp--UtkpOE,4944
27
+ armodel/models/port_interface.py,sha256=UDCvj78k3sfG4IJX4FWQj6LUV2mWw6Nt0plMnLsQfZk,6026
28
+ armodel/models/port_prototype.py,sha256=upFQ5xUR97aQy4FgKil0V85MgqK-GiABWeX8uJUcyZA,7683
29
+ armodel/models/sw_component.py,sha256=yoAw0C86oWgzWsaCSiQ-QCC-Y-hzSRVg7Ju6ReNcsgs,22340
30
+ armodel/models/unit.py,sha256=uTAHK2LzmQimlQKcWFFrFJJhYAcAlOcsMtvLEQ42EE8,397
31
+ armodel/parser/__init__.py,sha256=whzCLvAstuSlm6scgcCId7AUxSX8z8PV8AIKSNWMkGo,37
32
+ armodel/parser/arxml_parser.py,sha256=UVAgUeYCZ_BcXqyHUB2iY3ft3If-HgDDkgZThQy7cWs,83878
33
+ armodel/parser/excel_parser.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
+ armodel/report/__init__.py,sha256=EId0Ph3qYyzkKHKplJrs00ToxHeSjQVvhLwrSoV-SBw,52
35
+ armodel/report/connector_xls_report.py,sha256=7GsvFWo_lfZRKCLAV-a17kC8-3KKSMAR1wGOnp9Cqlo,3876
36
+ armodel/report/excel_report.py,sha256=Iome8wALpOFZyZkMCG5DPSAFkfv4pU0y_BZXHVSdonc,1412
37
+ armodel/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
+ armodel/tests/test_armodel/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
+ armodel/tests/test_armodel/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
+ armodel/tests/test_armodel/models/test_ar_package.py,sha256=LqxArs6g5ePASiBJb70veGDLPTUdP12WLlhwrU90AW0,14520
41
+ armodel/tests/test_armodel/models/test_ar_ref.py,sha256=2zayiW9gKnNJc3c8no3fPQ3B5m5GvQ5FHFSxXU-yUXo,3260
42
+ armodel/tests/test_armodel/models/test_bsw_module_template.py,sha256=ZmJ9_8omFtbf9_O_OHa0B1v2bP6cdhCzW4oJkuicZYY,2061
43
+ armodel/tests/test_armodel/models/test_common_structure.py,sha256=R9QkOvae_4NDD8bYxhnG4kaZwVUQWUwlUoBCYF2SMGA,3448
44
+ armodel/tests/test_armodel/models/test_data_dictionary.py,sha256=sNqJz5XWme9fR3j49xqoxGDgJHx0dIaS7Vhw3jN1Zgk,1077
45
+ armodel/tests/test_armodel/models/test_data_prototype.py,sha256=P66QDxw7Q9xwCJF0BYjH8c4zPz9OnwZVrskHY_YBbhA,4219
46
+ armodel/tests/test_armodel/models/test_datatype.py,sha256=PAIN4fQBa9gM5JvFN6a8rZOzgkiR_ByQ3V_DPL6Joos,11811
47
+ armodel/tests/test_armodel/models/test_general_structure.py,sha256=pkmeJIUfYJqRzXiczL3ZKRcBlI9zbWBjHGGNuLYgOSA,2221
48
+ armodel/tests/test_armodel/models/test_m2_msr.py,sha256=hnh4qJiDlAp70-B7q_A-UqJi2sDllwErMvzOhafTSUk,2656
49
+ armodel/tests/test_armodel/models/test_port_interface.py,sha256=JUeAOTOH8Sq7CLW0lDhvflC7h47anFTLgrZzHMfacX8,9099
50
+ armodel/tests/test_armodel/models/test_port_prototype.py,sha256=wV_QjAg4fb9MfeiwDWldzJiHeNpAcZq5vPZ4rWB2Pn0,494
51
+ armodel/tests/test_armodel/parser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
+ armodel/tests/test_armodel/parser/test_parse_bswmd.py,sha256=Ik_9zWe1ElR4rY4PBK80avf6ljSajQyqbtauUa8wvGA,8572
53
+ armodel/writer/__init__.py,sha256=eXr3qhGzFIvHNBin22x-Tk2JM6QwRgx1jwrluDKAlzQ,37
54
+ armodel/writer/arxml_writer.py,sha256=VHJn2Kd3oZTVvke8HLCNjb4qrPc2wtKOVf2p8BbDKQI,37664
55
+ armodel-1.4.0.dist-info/LICENSE,sha256=rceTpGhsmmN1M0k1KO0HRS11iCjen-2y56ZEqgo43wo,1088
56
+ armodel-1.4.0.dist-info/METADATA,sha256=coHAolnfyiS2fpMu6YeU3oVp7eBSUfG19_EG5M1zjWM,6877
57
+ armodel-1.4.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
58
+ armodel-1.4.0.dist-info/entry_points.txt,sha256=tKrWpjYL9k4GVknwAyGDmPRcUMkqOdh6q4PUulLmXC4,219
59
+ armodel-1.4.0.dist-info/top_level.txt,sha256=AEATYsqAuRpr0XGa_ThW7-o4WLlA5e3PEgD0QJhzmoA,8
60
+ armodel-1.4.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.41.2)
2
+ Generator: bdist_wheel (0.43.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -0,0 +1,5 @@
1
+ [console_scripts]
2
+ arxml-dump = armodel.cli.arxml_dump_cli:cli_main
3
+ arxml-swc = armodel.cli.swc_list_cli:main
4
+ connector-update = armodel.cli.connector_update_cli:main
5
+ connector2xlsx = armodel.cli.connector2xlsx_cli:main
@@ -1,27 +0,0 @@
1
- armodel/__init__.py,sha256=K_KHb3O2T21uteIe0wac-tb3kI2xWHTnwV9ShaXesAU,54
2
- armodel/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- armodel/cli/arxml_dump_cli.py,sha256=VBOTkrpj59kt2hM62iNVcDYGch_A2WL5_vFpbmC9ucI,9932
4
- armodel/models/__init__.py,sha256=ijDu-Ra2ZjEJNy88Y5ZsPqxAt05_reQsQti-_X4gD3o,402
5
- armodel/models/ar_object.py,sha256=gbo71ZPQ61-OhiPpHFbKtE2JA-8vOzXrd9T_0hh4GfA,341
6
- armodel/models/ar_package.py,sha256=OPoNGaAhTBf30elxc1dvJMyU6CpMUmvs0SUwaYoEtVs,13275
7
- armodel/models/ar_ref.py,sha256=RZT6URQ91YgmRk1oUTC-0UPnwn61MgEzmII7UKwQXUM,3548
8
- armodel/models/bsw_module_template.py,sha256=k_CZWtTipKtVFjIx08uRqadSubVtBJ-NhUlocfoA0a0,11778
9
- armodel/models/common_structure.py,sha256=DSnuhhYdpDW-klOCZNg8zULuhFBdk7k601YQsPg5IT4,6745
10
- armodel/models/data_dictionary.py,sha256=xSQzXkLQyOJiLIsczlAzGBnrrvHFVv2_-OfVyN6_MSE,867
11
- armodel/models/data_prototype.py,sha256=pyIahyJh4KaikMfHikHiKzbGai1JnkrzDZpkVLvb6iU,2096
12
- armodel/models/datatype.py,sha256=BEc8y3mcQZEvwteFUtJyPYBIwnHJcs9fIyxLgnMK5rk,5802
13
- armodel/models/ecuc_parameter_def_template.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- armodel/models/general_structure.py,sha256=syJTAAo3DIBE6O0nB8Whm4OEnNyN4uVIAJZPA8t3ukY,4480
15
- armodel/models/implementation.py,sha256=jfatA90Ww51kMqnUsbx6q4JRRRIRFCQXVg88J44RNoA,3850
16
- armodel/models/m2_msr.py,sha256=Gk-h-4jSnOkWlfJJcI1-1YvSQvBqkUJZxlzikwgAsec,2165
17
- armodel/models/port_interface.py,sha256=UDCvj78k3sfG4IJX4FWQj6LUV2mWw6Nt0plMnLsQfZk,6026
18
- armodel/models/port_prototype.py,sha256=Pqp5euv_RDfTlsEqvBkpAreBFMJlovuU49cJsYD4d3Q,7215
19
- armodel/models/sw_component.py,sha256=LUmof9nZnN7krpIScS72R6YqTzzpkIFkIvHJoklYXgw,20503
20
- armodel/parser/__init__.py,sha256=whzCLvAstuSlm6scgcCId7AUxSX8z8PV8AIKSNWMkGo,37
21
- armodel/parser/arxml_parser.py,sha256=NgIbfrXL2EoT5po1kvaxdpxnYOJCXk0TBlmgae-OfdQ,55951
22
- armodel-1.2.0.dist-info/LICENSE,sha256=rceTpGhsmmN1M0k1KO0HRS11iCjen-2y56ZEqgo43wo,1088
23
- armodel-1.2.0.dist-info/METADATA,sha256=MVqrzP9E8YfO9sA92XWqRNhwt-7CFPDyeg6-lX9ywUg,4998
24
- armodel-1.2.0.dist-info/WHEEL,sha256=yQN5g4mg4AybRjkgi-9yy4iQEFibGQmlz78Pik5Or-A,92
25
- armodel-1.2.0.dist-info/entry_points.txt,sha256=ofkww3HejFuRvGlQSANqFbTEcf0LUXX2FmXZovba9m0,68
26
- armodel-1.2.0.dist-info/top_level.txt,sha256=AEATYsqAuRpr0XGa_ThW7-o4WLlA5e3PEgD0QJhzmoA,8
27
- armodel-1.2.0.dist-info/RECORD,,
@@ -1,3 +0,0 @@
1
- [console_scripts]
2
- arxml-dump = armodel.cli.arxml_dump_cli:cli_main
3
-