Skip to content

Commit

Permalink
Merge pull request #1 from IncQueryLabs/issues/ARUMLPD-33/basic-struc…
Browse files Browse the repository at this point in the history
…ture

ARUMLPD-33 Basic structure of the repository
  • Loading branch information
kkadosa authored Sep 20, 2023
2 parents 45d7324 + c73589a commit 385c012
Show file tree
Hide file tree
Showing 3 changed files with 332 additions and 0 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/AutosarUmlActionExample.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright (c) IncQuery Labs cPlc.
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at https://mozilla.org/MPL/2.0/.

# The following secrets need to be defined: INCQUERY_USERNAME, INCQUERY_PASSWORD, INCQUERY_AUTOSAR_UML_INTEGRATION_LICENSE

on:
push
jobs:
AutosarUml:
defaults:
run:
shell: pwsh
runs-on: windows-latest
timeout-minutes: 15
steps:
- name: Checkout Git repository
uses: actions/checkout@v3
313 changes: 313 additions & 0 deletions counting-logic.arxml
Original file line number Diff line number Diff line change
@@ -0,0 +1,313 @@
<?xml version="1.0" encoding="UTF-8"?>
<AUTOSAR xmlns="http://autosar.org/schema/r4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://autosar.org/schema/r4.0 AUTOSAR_4-3-0.xsd">
<AR-PACKAGES>
<AR-PACKAGE>
<SHORT-NAME>CountingLogic</SHORT-NAME>
<AR-PACKAGES>
<AR-PACKAGE>
<SHORT-NAME>Components</SHORT-NAME>
<ELEMENTS>
<COMPOSITION-SW-COMPONENT-TYPE UUID="d90f55ee-ef2d-3464-9a19-f354e196ddc8">
<SHORT-NAME>Application</SHORT-NAME>
<COMPONENTS>
<SW-COMPONENT-PROTOTYPE UUID="02d1e39b-7ca4-319c-81c1-2ac6dba7c9fa">
<SHORT-NAME>consumer</SHORT-NAME>
<TYPE-TREF DEST="COMPLEX-DEVICE-DRIVER-SW-COMPONENT-TYPE">/CountingLogic/Components/CountConsumer</TYPE-TREF>
</SW-COMPONENT-PROTOTYPE>
<SW-COMPONENT-PROTOTYPE UUID="43aa679d-bda3-3526-85ba-f9445db15801">
<SHORT-NAME>counter</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-SW-COMPONENT-TYPE">/CountingLogic/Components/Counter</TYPE-TREF>
</SW-COMPONENT-PROTOTYPE>
<SW-COMPONENT-PROTOTYPE UUID="8894a408-6820-3aa4-bae8-eebe34da1469">
<SHORT-NAME>generator</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-SW-COMPONENT-TYPE">/CountingLogic/Components/CountAlterer</TYPE-TREF>
</SW-COMPONENT-PROTOTYPE>
</COMPONENTS>
<CONNECTORS>
<ASSEMBLY-SW-CONNECTOR UUID="2e502592-412b-3335-bb33-4a2f1f51f849">
<SHORT-NAME>counter_control_to_generator_alterCount</SHORT-NAME>
<PROVIDER-IREF>
<CONTEXT-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">/CountingLogic/Components/Application/counter</CONTEXT-COMPONENT-REF>
<TARGET-P-PORT-REF DEST="P-PORT-PROTOTYPE">/CountingLogic/Components/Counter/control</TARGET-P-PORT-REF>
</PROVIDER-IREF>
<REQUESTER-IREF>
<CONTEXT-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">/CountingLogic/Components/Application/generator</CONTEXT-COMPONENT-REF>
<TARGET-R-PORT-REF DEST="R-PORT-PROTOTYPE">/CountingLogic/Components/CountAlterer/alterCount</TARGET-R-PORT-REF>
</REQUESTER-IREF>
</ASSEMBLY-SW-CONNECTOR>
<ASSEMBLY-SW-CONNECTOR UUID="ced96122-6dbb-3ea7-9f87-44e83f2c435f">
<SHORT-NAME>counter_data_to_consumer_readCount</SHORT-NAME>
<PROVIDER-IREF>
<CONTEXT-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">/CountingLogic/Components/Application/counter</CONTEXT-COMPONENT-REF>
<TARGET-P-PORT-REF DEST="P-PORT-PROTOTYPE">/CountingLogic/Components/Counter/data</TARGET-P-PORT-REF>
</PROVIDER-IREF>
<REQUESTER-IREF>
<CONTEXT-COMPONENT-REF DEST="SW-COMPONENT-PROTOTYPE">/CountingLogic/Components/Application/consumer</CONTEXT-COMPONENT-REF>
<TARGET-R-PORT-REF DEST="R-PORT-PROTOTYPE">/CountingLogic/Components/CountConsumer/readCount</TARGET-R-PORT-REF>
</REQUESTER-IREF>
</ASSEMBLY-SW-CONNECTOR>
</CONNECTORS>
</COMPOSITION-SW-COMPONENT-TYPE>
<APPLICATION-SW-COMPONENT-TYPE S="" UUID="7e501d0b-b9be-39e0-b592-be2f92aa65b7">
<SHORT-NAME>CountAlterer</SHORT-NAME>
<SHORT-NAME-PATTERN></SHORT-NAME-PATTERN>
<PORTS>
<R-PORT-PROTOTYPE UUID="5da55d19-1d33-3386-923c-16631b86d297">
<SHORT-NAME>alterCount</SHORT-NAME>
<REQUIRED-INTERFACE-TREF DEST="CLIENT-SERVER-INTERFACE">/CountingLogic/Interfaces/CounterControlInterface</REQUIRED-INTERFACE-TREF>
</R-PORT-PROTOTYPE>
</PORTS>
</APPLICATION-SW-COMPONENT-TYPE>
<COMPLEX-DEVICE-DRIVER-SW-COMPONENT-TYPE UUID="b0071002-315d-358c-9bbb-85e4a98a9f68">
<SHORT-NAME>CountConsumer</SHORT-NAME>
<PORTS>
<R-PORT-PROTOTYPE UUID="0b84bf86-fc24-3ffb-a4e4-72f340347234">
<SHORT-NAME>readCount</SHORT-NAME>
<REQUIRED-COM-SPECS>
<QUEUED-RECEIVER-COM-SPEC>
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Interfaces/CounterDataInterface/count</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>NONE</HANDLE-OUT-OF-RANGE>
<NETWORK-REPRESENTATION>
<SW-DATA-DEF-PROPS-VARIANTS>
<SW-DATA-DEF-PROPS-CONDITIONAL/>
</SW-DATA-DEF-PROPS-VARIANTS>
</NETWORK-REPRESENTATION>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
<QUEUE-LENGTH>5</QUEUE-LENGTH>
</QUEUED-RECEIVER-COM-SPEC>
</REQUIRED-COM-SPECS>
<REQUIRED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/CountingLogic/Interfaces/CounterDataInterface</REQUIRED-INTERFACE-TREF>
</R-PORT-PROTOTYPE>
</PORTS>
</COMPLEX-DEVICE-DRIVER-SW-COMPONENT-TYPE>
<APPLICATION-SW-COMPONENT-TYPE UUID="c80963c0-89e3-362c-b96a-aaa86057d931">
<SHORT-NAME>Counter</SHORT-NAME>
<PORTS>
<P-PORT-PROTOTYPE UUID="44eacbb3-dd64-3e3b-859e-2fd71a24d2a3">
<SHORT-NAME>control</SHORT-NAME>
<PROVIDED-INTERFACE-TREF DEST="CLIENT-SERVER-INTERFACE">/CountingLogic/Interfaces/CounterControlInterface</PROVIDED-INTERFACE-TREF>
</P-PORT-PROTOTYPE>
<P-PORT-PROTOTYPE UUID="2cb31540-8588-3310-accf-6228e1e143a3">
<SHORT-NAME>data</SHORT-NAME>
<PROVIDED-COM-SPECS>
<QUEUED-SENDER-COM-SPEC S="">
<DATA-ELEMENT-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Interfaces/CounterDataInterface/count</DATA-ELEMENT-REF>
<HANDLE-OUT-OF-RANGE>SATURATE</HANDLE-OUT-OF-RANGE>
<NETWORK-REPRESENTATION>
<SW-DATA-DEF-PROPS-VARIANTS>
<SW-DATA-DEF-PROPS-CONDITIONAL/>
</SW-DATA-DEF-PROPS-VARIANTS>
</NETWORK-REPRESENTATION>
<USES-END-TO-END-PROTECTION>false</USES-END-TO-END-PROTECTION>
</QUEUED-SENDER-COM-SPEC>
</PROVIDED-COM-SPECS>
<PROVIDED-INTERFACE-TREF DEST="SENDER-RECEIVER-INTERFACE">/CountingLogic/Interfaces/CounterDataInterface</PROVIDED-INTERFACE-TREF>
</P-PORT-PROTOTYPE>
</PORTS>
<INTERNAL-BEHAVIORS>
<SWC-INTERNAL-BEHAVIOR>
<SHORT-NAME>ib</SHORT-NAME>
<EVENTS>
<OPERATION-INVOKED-EVENT>
<SHORT-NAME>onDecrease</SHORT-NAME>
<START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/CountingLogic/Components/Counter/ib/Decrease</START-ON-EVENT-REF>
<OPERATION-IREF>
<CONTEXT-P-PORT-REF DEST="P-PORT-PROTOTYPE">/CountingLogic/Components/Counter/control</CONTEXT-P-PORT-REF>
<TARGET-PROVIDED-OPERATION-REF DEST="CLIENT-SERVER-OPERATION">/CountingLogic/Interfaces/CounterControlInterface/decrease</TARGET-PROVIDED-OPERATION-REF>
</OPERATION-IREF>
</OPERATION-INVOKED-EVENT>
<OPERATION-INVOKED-EVENT>
<SHORT-NAME>onIncrease</SHORT-NAME>
<START-ON-EVENT-REF DEST="RUNNABLE-ENTITY">/CountingLogic/Components/Counter/ib/Increase</START-ON-EVENT-REF>
<OPERATION-IREF>
<CONTEXT-P-PORT-REF DEST="P-PORT-PROTOTYPE">/CountingLogic/Components/Counter/control</CONTEXT-P-PORT-REF>
<TARGET-PROVIDED-OPERATION-REF DEST="CLIENT-SERVER-OPERATION">/CountingLogic/Interfaces/CounterControlInterface/increase</TARGET-PROVIDED-OPERATION-REF>
</OPERATION-IREF>
</OPERATION-INVOKED-EVENT>
</EVENTS>
<EXPLICIT-INTER-RUNNABLE-VARIABLES>
<VARIABLE-DATA-PROTOTYPE>
<SHORT-NAME>current</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</TYPE-TREF>
</VARIABLE-DATA-PROTOTYPE>
</EXPLICIT-INTER-RUNNABLE-VARIABLES>
<RUNNABLES>
<RUNNABLE-ENTITY>
<SHORT-NAME>Decrease</SHORT-NAME>
<DATA-SEND-POINTS>
<VARIABLE-ACCESS>
<SHORT-NAME>send</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/CountingLogic/Components/Counter/data</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Interfaces/CounterDataInterface/count</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</DATA-SEND-POINTS>
<READ-LOCAL-VARIABLES>
<VARIABLE-ACCESS>
<SHORT-NAME>readCurrent</SHORT-NAME>
<ACCESSED-VARIABLE>
<LOCAL-VARIABLE-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Components/Counter/ib/current</LOCAL-VARIABLE-REF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</READ-LOCAL-VARIABLES>
<WRITTEN-LOCAL-VARIABLES>
<VARIABLE-ACCESS>
<SHORT-NAME>writeCurrent</SHORT-NAME>
<ACCESSED-VARIABLE>
<LOCAL-VARIABLE-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Components/Counter/ib/current</LOCAL-VARIABLE-REF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</WRITTEN-LOCAL-VARIABLES>
</RUNNABLE-ENTITY>
<RUNNABLE-ENTITY>
<SHORT-NAME>Increase</SHORT-NAME>
<DATA-SEND-POINTS>
<VARIABLE-ACCESS>
<SHORT-NAME>send</SHORT-NAME>
<ACCESSED-VARIABLE>
<AUTOSAR-VARIABLE-IREF>
<PORT-PROTOTYPE-REF DEST="P-PORT-PROTOTYPE">/CountingLogic/Components/Counter/data</PORT-PROTOTYPE-REF>
<TARGET-DATA-PROTOTYPE-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Interfaces/CounterDataInterface/count</TARGET-DATA-PROTOTYPE-REF>
</AUTOSAR-VARIABLE-IREF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</DATA-SEND-POINTS>
<READ-LOCAL-VARIABLES>
<VARIABLE-ACCESS>
<SHORT-NAME>readCurrent</SHORT-NAME>
<ACCESSED-VARIABLE>
<LOCAL-VARIABLE-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Components/Counter/ib/current</LOCAL-VARIABLE-REF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</READ-LOCAL-VARIABLES>
<WRITTEN-LOCAL-VARIABLES>
<VARIABLE-ACCESS>
<SHORT-NAME>writeCurrent</SHORT-NAME>
<ACCESSED-VARIABLE>
<LOCAL-VARIABLE-REF DEST="VARIABLE-DATA-PROTOTYPE">/CountingLogic/Components/Counter/ib/current</LOCAL-VARIABLE-REF>
</ACCESSED-VARIABLE>
</VARIABLE-ACCESS>
</WRITTEN-LOCAL-VARIABLES>
</RUNNABLE-ENTITY>
</RUNNABLES>
</SWC-INTERNAL-BEHAVIOR>
</INTERNAL-BEHAVIORS>
</APPLICATION-SW-COMPONENT-TYPE>
</ELEMENTS>
</AR-PACKAGE>
<AR-PACKAGE>
<SHORT-NAME>DataTypes</SHORT-NAME>
<ELEMENTS>
<APPLICATION-PRIMITIVE-DATA-TYPE UUID="72db0514-c53e-3afa-b75e-12f53d1d1fb9">
<SHORT-NAME>CounterDataType</SHORT-NAME>
<CATEGORY>VALUE</CATEGORY>
<SW-DATA-DEF-PROPS>
<SW-DATA-DEF-PROPS-VARIANTS>
<SW-DATA-DEF-PROPS-CONDITIONAL>
<DATA-CONSTR-REF DEST="DATA-CONSTR">/CountingLogic/DataTypes/CounterDataType_sizeLimits</DATA-CONSTR-REF>
</SW-DATA-DEF-PROPS-CONDITIONAL>
</SW-DATA-DEF-PROPS-VARIANTS>
</SW-DATA-DEF-PROPS>
</APPLICATION-PRIMITIVE-DATA-TYPE>
<IMPLEMENTATION-DATA-TYPE UUID="82fd0646-5ec0-3618-a1ec-5e36e097b899">
<SHORT-NAME>CounterDataTypeImpl</SHORT-NAME>
<CATEGORY>VALUE</CATEGORY>
<SW-DATA-DEF-PROPS>
<SW-DATA-DEF-PROPS-VARIANTS>
<SW-DATA-DEF-PROPS-CONDITIONAL>
<DATA-CONSTR-REF DEST="DATA-CONSTR">/CountingLogic/DataTypes/CounterDataType_sizeLimits</DATA-CONSTR-REF>
</SW-DATA-DEF-PROPS-CONDITIONAL>
</SW-DATA-DEF-PROPS-VARIANTS>
</SW-DATA-DEF-PROPS>
</IMPLEMENTATION-DATA-TYPE>
<DATA-CONSTR S="" UUID="0c695bad-7376-31ae-b6ae-94c31847c1c3">
<SHORT-NAME>CounterDataType_sizeLimits</SHORT-NAME>
<DATA-CONSTR-RULES>
<DATA-CONSTR-RULE>
<PHYS-CONSTRS>
<LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
<UPPER-LIMIT INTERVAL-TYPE="CLOSED">100</UPPER-LIMIT>
</PHYS-CONSTRS>
<INTERNAL-CONSTRS>
<LOWER-LIMIT INTERVAL-TYPE="CLOSED">0</LOWER-LIMIT>
<UPPER-LIMIT INTERVAL-TYPE="CLOSED">100</UPPER-LIMIT>
</INTERNAL-CONSTRS>
</DATA-CONSTR-RULE>
</DATA-CONSTR-RULES>
</DATA-CONSTR>
<DATA-TYPE-MAPPING-SET UUID="f0faff98-8b06-3d48-b4c2-ea3aef211e33">
<SHORT-NAME>dataTypeMappingSet</SHORT-NAME>
<DATA-TYPE-MAPS>
<DATA-TYPE-MAP>
<APPLICATION-DATA-TYPE-REF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</APPLICATION-DATA-TYPE-REF>
<IMPLEMENTATION-DATA-TYPE-REF DEST="IMPLEMENTATION-DATA-TYPE">/CountingLogic/DataTypes/CounterDataTypeImpl</IMPLEMENTATION-DATA-TYPE-REF>
</DATA-TYPE-MAP>
</DATA-TYPE-MAPS>
</DATA-TYPE-MAPPING-SET>
</ELEMENTS>
</AR-PACKAGE>
<AR-PACKAGE>
<SHORT-NAME>Interfaces</SHORT-NAME>
<ELEMENTS>
<CLIENT-SERVER-INTERFACE UUID="0e4a8dd5-fd3d-375a-9455-08123fbdb929">
<SHORT-NAME>CounterControlInterface</SHORT-NAME>
<IS-SERVICE>false</IS-SERVICE>
<OPERATIONS>
<CLIENT-SERVER-OPERATION UUID="0335f38b-7e95-3d39-a8e7-06688453459e">
<SHORT-NAME>decrease</SHORT-NAME>
<ARGUMENTS>
<ARGUMENT-DATA-PROTOTYPE UUID="c6994b26-426e-37af-ba68-05ade4c20aec">
<SHORT-NAME>delta</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</TYPE-TREF>
<DIRECTION>IN</DIRECTION>
</ARGUMENT-DATA-PROTOTYPE>
<ARGUMENT-DATA-PROTOTYPE UUID="c30eb2f7-f55c-3287-ad4a-879bf91a4de1">
<SHORT-NAME>result</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</TYPE-TREF>
<DIRECTION>OUT</DIRECTION>
</ARGUMENT-DATA-PROTOTYPE>
</ARGUMENTS>
</CLIENT-SERVER-OPERATION>
<CLIENT-SERVER-OPERATION UUID="c2248b83-ed5b-3dfa-8e02-e2a25deb54c6">
<SHORT-NAME>increase</SHORT-NAME>
<ARGUMENTS>
<ARGUMENT-DATA-PROTOTYPE UUID="2d7cc452-1677-35ee-80ad-caaeef96e745">
<SHORT-NAME>delta</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</TYPE-TREF>
<DIRECTION>IN</DIRECTION>
</ARGUMENT-DATA-PROTOTYPE>
<ARGUMENT-DATA-PROTOTYPE UUID="f118ea42-fa18-38a3-99a7-3d439c7c8150">
<SHORT-NAME>result</SHORT-NAME>
<TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</TYPE-TREF>
<DIRECTION>OUT</DIRECTION>
</ARGUMENT-DATA-PROTOTYPE>
</ARGUMENTS>
</CLIENT-SERVER-OPERATION>
</OPERATIONS>
</CLIENT-SERVER-INTERFACE>
<SENDER-RECEIVER-INTERFACE UUID="609c4a97-29a9-33d9-ba66-1a5ed080a095">
<SHORT-NAME>CounterDataInterface</SHORT-NAME>
<IS-SERVICE>false</IS-SERVICE>
<DATA-ELEMENTS>
<VARIABLE-DATA-PROTOTYPE UUID="ec11ece4-5317-305b-8ee0-07fbe9583145">
<SHORT-NAME>count</SHORT-NAME>
<SW-DATA-DEF-PROPS>
<SW-DATA-DEF-PROPS-VARIANTS>
<SW-DATA-DEF-PROPS-CONDITIONAL>
<SW-IMPL-POLICY>QUEUED</SW-IMPL-POLICY>
</SW-DATA-DEF-PROPS-CONDITIONAL>
</SW-DATA-DEF-PROPS-VARIANTS>
</SW-DATA-DEF-PROPS>
<TYPE-TREF DEST="APPLICATION-PRIMITIVE-DATA-TYPE">/CountingLogic/DataTypes/CounterDataType</TYPE-TREF>
</VARIABLE-DATA-PROTOTYPE>
</DATA-ELEMENTS>
</SENDER-RECEIVER-INTERFACE>
</ELEMENTS>
</AR-PACKAGE>
</AR-PACKAGES>
</AR-PACKAGE>
</AR-PACKAGES>
</AUTOSAR>
Binary file added counting-logic.qeax
Binary file not shown.

0 comments on commit 385c012

Please sign in to comment.