Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
697ba9b
initial commit
jrdouceur Sep 26, 2025
fd45293
EnvoyGenerator
jrdouceur Oct 16, 2025
646e2d3
update ValueExtractor
jrdouceur Oct 30, 2025
c8f5d34
support external schemas
jrdouceur Nov 3, 2025
52a3065
enhance external schema support
jrdouceur Nov 4, 2025
5500182
add TypeNamer
jrdouceur Nov 6, 2025
40394e4
change JSON Schema suffix from .schema.json to .json
jrdouceur Nov 6, 2025
1c3aab0
allow JSON Schema null in any object field, array item, or map value
jrdouceur Nov 10, 2025
768d524
auto-add indirections to break cycles in recursive definitions
jrdouceur Nov 10, 2025
afb60a4
add JSON Schema validation for TD with AIO binding
jrdouceur Nov 11, 2025
8330f78
support bool consts and numbers without min/max
jrdouceur Nov 11, 2025
745644c
allow serviceGroupId in root form iff op is subscribeallevents
jrdouceur Nov 12, 2025
d7d01d6
add more descriptions and snippets to JSON Schema
jrdouceur Nov 13, 2025
4a30eb4
support use of ProtocolCompiler with no TDs
jrdouceur Nov 14, 2025
b1d4895
add and integrate tracker classes
jrdouceur Nov 17, 2025
049e6d3
check for duplicate names in schemas
jrdouceur Dec 1, 2025
328a71e
add ThingValidator
jrdouceur Dec 5, 2025
6662c3c
flag action reference type errors
jrdouceur Dec 8, 2025
77ab734
add Dtdl2Wot tool
jrdouceur Dec 11, 2025
b658de5
support nested constant definitions
jrdouceur Dec 15, 2025
e9a093c
add support for raw/custom serialization
jrdouceur Dec 17, 2025
119e17e
remove generated T4 .cs files
jrdouceur Dec 17, 2025
a3be13e
add Dtdld2Wot .gitignore
jrdouceur Dec 17, 2025
39be747
validate topic patterns
jrdouceur Dec 18, 2025
f4c277a
automatically determine source subdir from selected language
jrdouceur Dec 18, 2025
df3c42a
support custom SchemaNames rules file in Dtdl2Wot conversion tool
jrdouceur Dec 18, 2025
9110c93
restructure const objects to better fit schema
jrdouceur Dec 20, 2025
3ef2ce2
Merge branch 'main' into johndo/codegen2
jrdouceur Dec 22, 2025
84a4a95
update csproj files with t4 generation instructions
jrdouceur Dec 22, 2025
29acea8
add skeleton for ProtocolCompiler.UnitTests
jrdouceur Dec 26, 2025
8f4d2b1
Revert "update csproj files with t4 generation instructions"
jrdouceur Dec 26, 2025
79fb4f4
add programmatic error condition
jrdouceur Dec 27, 2025
cded6a0
add initial set of 356 validation-failure test cases
jrdouceur Jan 6, 2026
473689c
switch from Thing Descriptions to Thing Models
jrdouceur Jan 7, 2026
f16ce72
remove href from forms
jrdouceur Jan 7, 2026
46e10c6
further TM updates
jrdouceur Jan 7, 2026
5fb11a6
change file suffix from .TD.json to .TM.json
jrdouceur Jan 7, 2026
cc55bfb
rename testing folder from thing-descriptions to thing-models
jrdouceur Jan 8, 2026
c98fc95
support DTMI resolution in Dtdl2Wot
jrdouceur Jan 9, 2026
5fdaff6
add test cases and change test folder hierarchy
jrdouceur Jan 12, 2026
0493948
Merge branch 'main' into johndo/codegen2
jrdouceur Jan 13, 2026
f1d1c5c
eval cleanup
jrdouceur Jan 16, 2026
bbe27b8
add Golden Path properties to AIO TM JSON Schema
jrdouceur Jan 16, 2026
c373893
support Golden Path properties in ProtocolCompiler
jrdouceur Jan 20, 2026
71538cc
add 55 test cases for Golden Path properties
jrdouceur Jan 21, 2026
ac34665
add T4 template generated code to repo
jrdouceur Jan 21, 2026
98c0da7
add 19 more test cases for Golden Path properties
jrdouceur Jan 21, 2026
8573d91
suppress src subdir on --noProj option
jrdouceur Jan 21, 2026
e3a2e58
.tt file updates
vaavva Jan 21, 2026
d2fa68e
update .cs files
vaavva Jan 21, 2026
a3de4e9
.tt updates related to codegen changes
vaavva Jan 21, 2026
7527007
update .cs files
vaavva Jan 21, 2026
7d3be62
generated rust services
vaavva Jan 21, 2026
893e852
updated generated counter sample app as well
vaavva Jan 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions codegen2/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
!res
11 changes: 11 additions & 0 deletions codegen2/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# codegen2

This folder contains the beginnings of a fork of the `codegen` folder.

The plan of record is to switch our modeling language from DTDL to WoT.
The largest part of this effort will be changing the ProtocolCompiler to ingest WoT Thing Descriptions instead of DTDL models.

Rather than attempting to evolve the extant ProtocolCompiler to ingest WoT while preserving its DTDL support for legacy usage, we are starting a new solution for a new ProtocolCompiler.
As the architecture of the new codebase develops, portions of the old ProtocolCompiler will be copied into the new one.

This folder will contain the new ProtocolCompiler while it is under development.
84 changes: 84 additions & 0 deletions codegen2/codegen.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.0.31903.59
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.TDParser", "src\Azure.Iot.Operations.TDParser\Azure.Iot.Operations.TDParser.csproj", "{D100A0D2-9E52-4FF4-8964-C4DE816DC0D5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TDParse", "src\TDParse\TDParse.csproj", "{9F1A48E4-A681-4FCF-B0FF-1ECBF57E614D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.CodeGeneration", "src\Azure.Iot.Operations.CodeGeneration\Azure.Iot.Operations.CodeGeneration.csproj", "{FAACC86C-C974-4FE5-B7C4-6C59D7983D82}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.TypeGenerator", "src\Azure.Iot.Operations.TypeGenerator\Azure.Iot.Operations.TypeGenerator.csproj", "{6C3D81EA-5950-4AFA-AA0F-75EBFB5C1732}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.SchemaGenerator", "src\Azure.Iot.Operations.SchemaGenerator\Azure.Iot.Operations.SchemaGenerator.csproj", "{AED5A5DA-CA6D-4FC6-B806-050603EF5416}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.EnvoyGenerator", "src\Azure.Iot.Operations.EnvoyGenerator\Azure.Iot.Operations.EnvoyGenerator.csproj", "{7A0261EF-4C5B-009B-1F89-A78993646A3D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.ProtocolCompiler", "src\Azure.Iot.Operations.ProtocolCompiler\Azure.Iot.Operations.ProtocolCompiler.csproj", "{5A83D072-8E7F-424C-B009-4A6011A13CA5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Dtdl2Wot", "src\Dtdl2Wot\Dtdl2Wot.csproj", "{67B4CD3D-17A8-4D63-9996-79A424E628A1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.ProtocolCompilerLib", "src\Azure.Iot.Operations.ProtocolCompilerLib\Azure.Iot.Operations.ProtocolCompilerLib.csproj", "{F4163CB9-D895-4144-AEB5-CBDBC36B21D7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{02EA681E-C7D8-13C7-8484-4AC65E1B71E8}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Azure.Iot.Operations.ProtocolCompiler.UnitTests", "test\Azure.Iot.Operations.ProtocolCompiler.UnitTests\Azure.Iot.Operations.ProtocolCompiler.UnitTests.csproj", "{24D55C64-5869-C81B-611B-A84AB1D357C0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{D100A0D2-9E52-4FF4-8964-C4DE816DC0D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D100A0D2-9E52-4FF4-8964-C4DE816DC0D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D100A0D2-9E52-4FF4-8964-C4DE816DC0D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D100A0D2-9E52-4FF4-8964-C4DE816DC0D5}.Release|Any CPU.Build.0 = Release|Any CPU
{9F1A48E4-A681-4FCF-B0FF-1ECBF57E614D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9F1A48E4-A681-4FCF-B0FF-1ECBF57E614D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{9F1A48E4-A681-4FCF-B0FF-1ECBF57E614D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9F1A48E4-A681-4FCF-B0FF-1ECBF57E614D}.Release|Any CPU.Build.0 = Release|Any CPU
{FAACC86C-C974-4FE5-B7C4-6C59D7983D82}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FAACC86C-C974-4FE5-B7C4-6C59D7983D82}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FAACC86C-C974-4FE5-B7C4-6C59D7983D82}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FAACC86C-C974-4FE5-B7C4-6C59D7983D82}.Release|Any CPU.Build.0 = Release|Any CPU
{6C3D81EA-5950-4AFA-AA0F-75EBFB5C1732}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6C3D81EA-5950-4AFA-AA0F-75EBFB5C1732}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6C3D81EA-5950-4AFA-AA0F-75EBFB5C1732}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6C3D81EA-5950-4AFA-AA0F-75EBFB5C1732}.Release|Any CPU.Build.0 = Release|Any CPU
{AED5A5DA-CA6D-4FC6-B806-050603EF5416}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{AED5A5DA-CA6D-4FC6-B806-050603EF5416}.Debug|Any CPU.Build.0 = Debug|Any CPU
{AED5A5DA-CA6D-4FC6-B806-050603EF5416}.Release|Any CPU.ActiveCfg = Release|Any CPU
{AED5A5DA-CA6D-4FC6-B806-050603EF5416}.Release|Any CPU.Build.0 = Release|Any CPU
{7A0261EF-4C5B-009B-1F89-A78993646A3D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7A0261EF-4C5B-009B-1F89-A78993646A3D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7A0261EF-4C5B-009B-1F89-A78993646A3D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7A0261EF-4C5B-009B-1F89-A78993646A3D}.Release|Any CPU.Build.0 = Release|Any CPU
{5A83D072-8E7F-424C-B009-4A6011A13CA5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5A83D072-8E7F-424C-B009-4A6011A13CA5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5A83D072-8E7F-424C-B009-4A6011A13CA5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5A83D072-8E7F-424C-B009-4A6011A13CA5}.Release|Any CPU.Build.0 = Release|Any CPU
{67B4CD3D-17A8-4D63-9996-79A424E628A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{67B4CD3D-17A8-4D63-9996-79A424E628A1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{67B4CD3D-17A8-4D63-9996-79A424E628A1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{67B4CD3D-17A8-4D63-9996-79A424E628A1}.Release|Any CPU.Build.0 = Release|Any CPU
{F4163CB9-D895-4144-AEB5-CBDBC36B21D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F4163CB9-D895-4144-AEB5-CBDBC36B21D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F4163CB9-D895-4144-AEB5-CBDBC36B21D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F4163CB9-D895-4144-AEB5-CBDBC36B21D7}.Release|Any CPU.Build.0 = Release|Any CPU
{24D55C64-5869-C81B-611B-A84AB1D357C0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{24D55C64-5869-C81B-611B-A84AB1D357C0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{24D55C64-5869-C81B-611B-A84AB1D357C0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{24D55C64-5869-C81B-611B-A84AB1D357C0}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{24D55C64-5869-C81B-611B-A84AB1D357C0} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {DBD77462-D0B0-41D2-BC2B-EF17A519C667}
EndGlobalSection
EndGlobal
2 changes: 2 additions & 0 deletions codegen2/eval/.cargo/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[registries]
aio-sdks = { index = "sparse+https://pkgs.dev.azure.com/azure-iot-sdks/iot-operations/_packaging/preview/Cargo/index/" }
6 changes: 6 additions & 0 deletions codegen2/eval/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
**/*.cs
**/*.csproj
**/*.rs
**/Cargo.toml
**/*.json
!wot/**/*.json
129 changes: 129 additions & 0 deletions codegen2/eval/SchemaNames.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
{
"suppressTitles": false,
"constantsSchema": "Constants",
"aggregateEventName": "Events",
"aggregateEventSchema": "EventCollection",
"aggregatePropName": "Properties",
"aggregatePropSchema": "PropertyCollection",
"aggregatePropWriteSchema": "PropertyUpdate",
"aggregatePropReadRespSchema": "PropertyCollectionReadRespSchema",
"aggregatePropWriteRespSchema": "PropertyCollectionWriteRespSchema",
"aggregatePropReadErrSchema": "PropertyCollectionReadError",
"aggregatePropWriteErrSchema": "PropertyCollectionWriteError",
"readRequesterBinder": "ReadRequester",
"readResponderBinder": "ReadResponder",
"writeRequesterBinder": "WriteRequester",
"writeResponderBinder": "WriteResponder",
"aggregateReadRespValueField": "_properties",
"aggregateRespErrorField": "_errors",
"eventSchema": {
"in": [ "eventName" ],
"out": "{eventName}Event",
"capitalize": true
},
"eventValueSchema": {
"in": [ "eventName" ],
"out": "Event{eventName}Value",
"capitalize": true
},
"eventSenderBinder": {
"in": [ "eventSchema" ],
"out": "{eventSchema}Sender",
"capitalize": true
},
"eventReceiverBinder": {
"in": [ "eventSchema" ],
"out": "{eventSchema}Receiver",
"capitalize": true
},
"propSchema": {
"in": [ "propName" ],
"out": "{propName}Property",
"capitalize": true
},
"writablePropSchema": {
"in": [ "propName" ],
"out": "{propName}WritableProperty",
"capitalize": true
},
"propReadRespSchema": {
"in": [ "propName" ],
"out": "{propName}ReadRespSchema",
"capitalize": true
},
"propWriteRespSchema": {
"in": [ "propName" ],
"out": "{propName}WriteRespSchema",
"capitalize": true
},
"propValueSchema": {
"in": [ "propName" ],
"out": "Property{propName}Value",
"capitalize": true
},
"propReadActName": {
"in": [ "propName" ],
"out": "Read{propName}",
"capitalize": true
},
"propWriteActName": {
"in": [ "propName" ],
"out": "Write{propName}",
"capitalize": true
},
"propMaintainerBinder": {
"in": [ "propSchema" ],
"out": "{propSchema}Maintainer",
"capitalize": true
},
"propConsumerBinder": {
"in": [ "propSchema" ],
"out": "{propSchema}Consumer",
"capitalize": true
},
"actionInSchema": {
"in": [ "actionName" ],
"out": "{actionName}InputArguments",
"capitalize": true
},
"actionOutSchema": {
"in": [ "actionName" ],
"out": "{actionName}OutputArguments",
"capitalize": true
},
"actionRespSchema": {
"in": [ "actionName" ],
"out": "{actionName}ResponseSchema",
"capitalize": true
},
"actionExecutorBinder": {
"in": [ "actionName" ],
"out": "{actionName}ActionExecutor",
"capitalize": true
},
"actionInvokerBinder": {
"in": [ "actionName" ],
"out": "{actionName}ActionInvoker",
"capitalize": true
},
"propReadRespErrorField": {
"in": [ "propName", "errorSchemaName" ],
"out": "_error",
"capitalize": false
},
"propWriteRespErrorField": {
"in": [ "propName", "errorSchemaName" ],
"out": "_error",
"capitalize": false
},
"actionRespErrorField": {
"in": [ "actionName", "errorSchemaName" ],
"out": "_error",
"capitalize": false
},
"backupSchemaName": {
"in": [ "parentSchemaName", "childName" ],
"out": "{parentSchemaName}{childName}",
"capitalize": true
}
}
8 changes: 8 additions & 0 deletions codegen2/eval/aio/conv.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/bin/sh

conv=./codegen2/src/Dtdl2Wot/bin/Debug/net9.0/Dtdl2Wot

$conv ./eng/dtdl/adr-base-service.json ./eng/dtdl
$conv ./eng/dtdl/device-discovery-service.json ./eng/dtdl
$conv ./eng/dtdl/SchemaRegistry-1.json ./eng/dtdl
$conv ./eng/dtdl/statestore.json ./eng/dtdl
32 changes: 32 additions & 0 deletions codegen2/eval/aio/gen.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/bin/sh

genFromDtdl=../../../codegen/src/Azure.Iot.Operations.ProtocolCompiler/bin/Debug/net9.0/Azure.Iot.Operations.ProtocolCompiler
genFromWot=../../src/Azure.Iot.Operations.ProtocolCompiler/bin/Debug/net9.0/Azure.Iot.Operations.ProtocolCompiler

[[ -d ./eng/dtdl/FromDtdl/AssetAndDeviceRegistry ]] && rm -r ./eng/dtdl/FromDtdl/AssetAndDeviceRegistry
$genFromDtdl --modelFile ./eng/dtdl/adr-base-service.json --outDir ./eng/dtdl/FromDtdl/AssetAndDeviceRegistry --lang csharp --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromDtdl --modelFile ./eng/dtdl/device-discovery-service.json --outDir ./eng/dtdl/FromDtdl/AssetAndDeviceRegistry --lang csharp --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromDtdl --modelFile ./eng/dtdl/adr-base-service.json --outDir ./eng/dtdl/FromDtdl/AssetAndDeviceRegistry/adr_base_gen --lang rust --sdkPath ../../../rust
$genFromDtdl --modelFile ./eng/dtdl/device-discovery-service.json --outDir ./eng/dtdl/FromDtdl/AssetAndDeviceRegistry/device_discovery_gen --lang rust --sdkPath ../../../rust

[[ -d ./eng/dtdl/FromWot/AssetAndDeviceRegistry ]] && rm -r ./eng/dtdl/FromWot/AssetAndDeviceRegistry
$genFromWot --thingFiles ./eng/dtdl/AdrBaseService.TM.json --outDir ./eng/dtdl/FromWot/AssetAndDeviceRegistry --lang csharp --namespace AdrBaseService --workingDir obj/akri/AdrBaseService --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromWot --thingFiles ./eng/dtdl/DeviceDiscoveryService.TM.json --outDir ./eng/dtdl/FromWot/AssetAndDeviceRegistry --lang csharp --namespace DeviceDiscoveryService --workingDir obj/akri/DeviceDiscoveryService --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromWot --thingFiles ./eng/dtdl/AdrBaseService.TM.json --outDir ./eng/dtdl/FromWot/AssetAndDeviceRegistry/adr_base_gen --lang rust --namespace AdrBaseService --workingDir target/akri/AdrBaseService --sdkPath ../../../rust
$genFromWot --thingFiles ./eng/dtdl/DeviceDiscoveryService.TM.json --outDir ./eng/dtdl/FromWot/AssetAndDeviceRegistry/device_discovery_gen --lang rust --namespace DeviceDiscoveryService --workingDir target/akri/DeviceDiscoveryService --sdkPath ../../../rust

[[ -d ./eng/dtdl/FromDtdl/SchemaRegistry ]] && rm -r ./eng/dtdl/FromDtdl/SchemaRegistry
$genFromDtdl --modelFile ./eng/dtdl/SchemaRegistry-1.json --outDir ./eng/dtdl/FromDtdl/SchemaRegistry --lang csharp --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromDtdl --modelFile ./eng/dtdl/SchemaRegistry-1.json --outDir ./eng/dtdl/FromDtdl/SchemaRegistry/schemaregistry_gen --lang rust --sdkPath ../../../rust

[[ -d ./eng/dtdl/FromWot/SchemaRegistry ]] && rm -r ./eng/dtdl/FromWot/SchemaRegistry
$genFromWot --thingFiles ./eng/dtdl/SchemaRegistry.TM.json --outDir ./eng/dtdl/FromWot/SchemaRegistry --lang csharp --namespace SchemaRegistry --workingDir obj/akri/SchemaRegistry --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromWot --thingFiles ./eng/dtdl/SchemaRegistry.TM.json --outDir ./eng/dtdl/FromWot/SchemaRegistry/schemaregistry_gen --lang rust --namespace SchemaRegistry --workingDir target/akri/SchemaRegistry --sdkPath ../../../rust

[[ -d ./eng/dtdl/FromDtdl/StateStore ]] && rm -r ./eng/dtdl/FromDtdl/StateStore
$genFromDtdl --modelFile ./eng/dtdl/statestore.json --outDir ./eng/dtdl/FromDtdl/StateStore --lang csharp --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromDtdl --modelFile ./eng/dtdl/statestore.json --outDir ./eng/dtdl/FromDtdl/StateStore/state_store_gen --lang rust --sdkPath ../../../rust

[[ -d ./eng/dtdl/FromWot/StateStore ]] && rm -r ./eng/dtdl/FromWot/StateStore
$genFromWot --thingFiles ./eng/dtdl/StateStore.TM.json --outDir ./eng/dtdl/FromWot/StateStore --lang csharp --namespace StateStore --workingDir obj/akri/StateStore --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
$genFromWot --thingFiles ./eng/dtdl/StateStore.TM.json --outDir ./eng/dtdl/FromWot/StateStore/state_store_gen --lang rust --namespace StateStore --workingDir obj/akri/StateStore --sdkPath ../../../dotnet/src/Azure.Iot.Operations.Protocol
27 changes: 27 additions & 0 deletions codegen2/eval/bld.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
#!/bin/sh

dotnet build dotnet/CommandComplexSchemasSample
dotnet build dotnet/CommandVariantsSample
dotnet build dotnet/Counters
dotnet build dotnet/TelemetryComplexSchemasSample
dotnet build dotnet/TelemetryPrimitiveSchemasSample

cd rust/command_complex_schemas_gen
cargo build
cd ../..

cd rust/command_variants_gen
cargo build
cd ../..

cd rust/counters
cargo build
cd ../..

cd rust/telemetry_complex_schemas_gen
cargo build
cd ../..

cd rust/telemetry_primitive_schemas_gen
cargo build
cd ../..
21 changes: 21 additions & 0 deletions codegen2/eval/conv.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/sh

conv=../src/Dtdl2Wot/bin/Debug/net9.0/Dtdl2Wot.exe

$conv ./dtdl/test/CommandComplexSchemas.json ./conv

$conv ./dtdl/test/CommandRaw.json ./conv

$conv ./dtdl/test/CommandVariants.json ./conv

$conv ./dtdl/test/PropertySeparate.json ./conv

$conv ./dtdl/test/PropertyTogether.json ./conv

$conv ./dtdl/test/TelemetryAndCommand.json ./conv

$conv ./dtdl/test/TelemetryComplexSchemas.json ./conv

$conv ./dtdl/test/TelemetryPrimitiveSchemas.json ./conv ./dtdl/test/resolver.json

$conv ./dtdl/test/TelemetryRawSeparate.json ./conv
Loading
Loading