diff --git a/.gitignore b/.gitignore index ed2b5c4..69d4def 100644 --- a/.gitignore +++ b/.gitignore @@ -39,4 +39,12 @@ coverage/ .env .next push.sh -package-lock.json \ No newline at end of file +package-lock.json +docker/docker-compose/test/opcua/car-config/config.properties +docker/docker-compose/test/opcua/car-config/car_config.json +docker/docker-compose/test/OPC_UA_Test.http +docker/docker-compose/test/OPC_UA_Test.http +.devcontainer/devcontainer.json +.devcontainer/Dockerfile +.vscode/launch.json +.vscode/tasks.json diff --git a/docker/docker-compose/pgh/Fiware/Controllers/FiwareController.cs b/docker/docker-compose/pgh/Fiware/Controllers/FiwareController.cs new file mode 100644 index 0000000..274875e --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/Controllers/FiwareController.cs @@ -0,0 +1,60 @@ +using System; +using System.Collections.Generic; +using Microsoft.AspNetCore.Mvc; + +namespace Fiware.Controllers +{ + [ApiController] + [Route("api/[controller]")] + public class FiwareController: ControllerBase + { + + + // string id = "Superman"; + // string name = "Clark Kent"; + // mydata = new Data(); + // mydata Set(); + // mydata.name = nameof; + + private static List FiwareEntities = new List{ + // new Entity { + // new List { + // new Data {id="Superman"} + // } + // } + }; + + + + [HttpGet] + public ActionResult> Get() + { + return Ok(FiwareEntities); + } + + // [HttpGet] + // [Route("{Id}")] + // public ActionResult Get(Values data) + // { + // var fiwareEntity = Entity.Find(x => x.data == data); + // return fiwareEntity == null ? NotFound() : Ok(fiwareEntity); + // } + + [HttpPost] + public ActionResult Post(Entity fiwareEntity) + { + // var existingSuperheroItem = Entity.Find(x => x.Id == superheroItem.Id); + // if (existingSuperheroItem != null) + // { + // return Conflict("Cannot create the Id because it already exists."); + // } + // else + // { + FiwareEntities.Add(fiwareEntity); + // var resourceUrl = Request.Path.ToString() + '/' + fiwareEntity.data; + // return Created(resourceUrl, fiwareEntity); + // } + return Created("hugo",fiwareEntity); + } + } +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/Fiware.csproj b/docker/docker-compose/pgh/Fiware/Fiware.csproj new file mode 100644 index 0000000..60bf9ea --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/Fiware.csproj @@ -0,0 +1,13 @@ + + + + net6.0 + enable + enable + + + + + + + diff --git a/docker/docker-compose/pgh/Fiware/FiwareEntity.cs b/docker/docker-compose/pgh/Fiware/FiwareEntity.cs new file mode 100644 index 0000000..39979f6 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/FiwareEntity.cs @@ -0,0 +1,30 @@ +// Root myDeserializedClass = JsonConvert.DeserializeObject(myJsonResponse); +namespace Fiware +{// Root myDeserializedClass = JsonConvert.DeserializeObject(myJsonResponse); + public class Data + { + public string id { get; set; } + // public string name { get; set; } + public Temperature temperature { get; set; } + public string type { get; set; } + } + + public class Metadata + { + } + + public class Entity + { + public List data { get; set; } + public string subscriptionId { get; set; } + } + + public class Temperature + { + public Metadata metadata { get; set; } + public string type { get; set; } + public double value { get; set; } + } + + +} diff --git a/docker/docker-compose/pgh/Fiware/Program.cs b/docker/docker-compose/pgh/Fiware/Program.cs new file mode 100644 index 0000000..48863a6 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/Program.cs @@ -0,0 +1,25 @@ +var builder = WebApplication.CreateBuilder(args); + +// Add services to the container. + +builder.Services.AddControllers(); +// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle +builder.Services.AddEndpointsApiExplorer(); +builder.Services.AddSwaggerGen(); + +var app = builder.Build(); + +// Configure the HTTP request pipeline. +if (app.Environment.IsDevelopment()) +{ + app.UseSwagger(); + app.UseSwaggerUI(); +} + +app.UseHttpsRedirection(); + +app.UseAuthorization(); + +app.MapControllers(); + +app.Run(); diff --git a/docker/docker-compose/pgh/Fiware/Properties/launchSettings.json b/docker/docker-compose/pgh/Fiware/Properties/launchSettings.json new file mode 100644 index 0000000..a68cb50 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/Properties/launchSettings.json @@ -0,0 +1,31 @@ +{ + "$schema": "https://json.schemastore.org/launchsettings.json", + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:56555", + "sslPort": 44384 + } + }, + "profiles": { + "Fiware": { + "commandName": "Project", + "dotnetRunMessages": true, + "launchBrowser": true, + "launchUrl": "swagger", + "applicationUrl": "https://localhost:7052;http://localhost:5103", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "launchUrl": "swagger", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} diff --git a/docker/docker-compose/pgh/Fiware/appsettings.Development.json b/docker/docker-compose/pgh/Fiware/appsettings.Development.json new file mode 100644 index 0000000..0c208ae --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/appsettings.Development.json @@ -0,0 +1,8 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/docker/docker-compose/pgh/Fiware/appsettings.json b/docker/docker-compose/pgh/Fiware/appsettings.json new file mode 100644 index 0000000..10f68b8 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/appsettings.json @@ -0,0 +1,9 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*" +} diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware new file mode 100644 index 0000000..8c24cb6 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.deps.json b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.deps.json new file mode 100644 index 0000000..2e9b717 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.deps.json @@ -0,0 +1,115 @@ +{ + "runtimeTarget": { + "name": ".NETCoreApp,Version=v6.0", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETCoreApp,Version=v6.0": { + "Fiware/1.0.0": { + "dependencies": { + "Swashbuckle.AspNetCore": "6.2.3" + }, + "runtime": { + "Fiware.dll": {} + } + }, + "Microsoft.Extensions.ApiDescription.Server/3.0.0": {}, + "Microsoft.OpenApi/1.2.3": { + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": { + "assemblyVersion": "1.2.3.0", + "fileVersion": "1.2.3.0" + } + } + }, + "Swashbuckle.AspNetCore/6.2.3": { + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "3.0.0", + "Swashbuckle.AspNetCore.Swagger": "6.2.3", + "Swashbuckle.AspNetCore.SwaggerGen": "6.2.3", + "Swashbuckle.AspNetCore.SwaggerUI": "6.2.3" + } + }, + "Swashbuckle.AspNetCore.Swagger/6.2.3": { + "dependencies": { + "Microsoft.OpenApi": "1.2.3" + }, + "runtime": { + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": { + "assemblyVersion": "6.2.3.0", + "fileVersion": "6.2.3.0" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.2.3": { + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "6.2.3" + }, + "runtime": { + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": { + "assemblyVersion": "6.2.3.0", + "fileVersion": "6.2.3.0" + } + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.2.3": { + "runtime": { + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": { + "assemblyVersion": "6.2.3.0", + "fileVersion": "6.2.3.0" + } + } + } + } + }, + "libraries": { + "Fiware/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "Microsoft.Extensions.ApiDescription.Server/3.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-LH4OE/76F6sOCslif7+Xh3fS/wUUrE5ryeXAMcoCnuwOQGT5Smw0p57IgDh/pHgHaGz/e+AmEQb7pRgb++wt0w==", + "path": "microsoft.extensions.apidescription.server/3.0.0", + "hashPath": "microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512" + }, + "Microsoft.OpenApi/1.2.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==", + "path": "microsoft.openapi/1.2.3", + "hashPath": "microsoft.openapi.1.2.3.nupkg.sha512" + }, + "Swashbuckle.AspNetCore/6.2.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-cnzQDn0Le+hInsw2SYwlOhOCPXpYi/szcvnyqZJ12v+QyrLBwAmWXBg6RIyHB18s/mLeywC+Rg2O9ndz0IUNYQ==", + "path": "swashbuckle.aspnetcore/6.2.3", + "hashPath": "swashbuckle.aspnetcore.6.2.3.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.Swagger/6.2.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-qOF7j1sL0bWm8g/qqHVPCvkO3JlVvUIB8WfC98kSh6BT5y5DAnBNctfac7XR5EZf+eD7/WasvANncTqwZYfmWQ==", + "path": "swashbuckle.aspnetcore.swagger/6.2.3", + "hashPath": "swashbuckle.aspnetcore.swagger.6.2.3.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.2.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-+Xq7WdMCCfcXlnbLJVFNgY8ITdP2TRYIlpbt6IKzDw5FwFxdi9lBfNDtcT+/wkKwX70iBBFmXldnnd02/VO72A==", + "path": "swashbuckle.aspnetcore.swaggergen/6.2.3", + "hashPath": "swashbuckle.aspnetcore.swaggergen.6.2.3.nupkg.sha512" + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.2.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-bCRI87uKJVb4G+KURWm8LQrL64St04dEFZcF6gIM67Zc0Sr/N47EO83ybLMYOvfNdO1DCv8xwPcrz9J/VEhQ5g==", + "path": "swashbuckle.aspnetcore.swaggerui/6.2.3", + "hashPath": "swashbuckle.aspnetcore.swaggerui.6.2.3.nupkg.sha512" + } + } +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.dll b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.dll new file mode 100644 index 0000000..daaf693 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.dll differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.pdb b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.pdb new file mode 100644 index 0000000..b1d5dd2 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.pdb differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.runtimeconfig.json b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.runtimeconfig.json new file mode 100644 index 0000000..dfb1b77 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.runtimeconfig.json @@ -0,0 +1,19 @@ +{ + "runtimeOptions": { + "tfm": "net6.0", + "frameworks": [ + { + "name": "Microsoft.NETCore.App", + "version": "6.0.0" + }, + { + "name": "Microsoft.AspNetCore.App", + "version": "6.0.0" + } + ], + "configProperties": { + "System.GC.Server": true, + "System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false + } + } +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Microsoft.OpenApi.dll b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Microsoft.OpenApi.dll new file mode 100644 index 0000000..14f3ded Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Microsoft.OpenApi.dll differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll new file mode 100644 index 0000000..a30e6cc Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll new file mode 100644 index 0000000..ae35663 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll new file mode 100644 index 0000000..a26f458 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll differ diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.Development.json b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.Development.json new file mode 100644 index 0000000..0c208ae --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.Development.json @@ -0,0 +1,8 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.json b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.json new file mode 100644 index 0000000..10f68b8 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.json @@ -0,0 +1,9 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*" +} diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs new file mode 100644 index 0000000..36203c7 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = "")] diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfo.cs b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfo.cs new file mode 100644 index 0000000..da63189 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfo.cs @@ -0,0 +1,22 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("Fiware")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("Fiware")] +[assembly: System.Reflection.AssemblyTitleAttribute("Fiware")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Generated by the MSBuild WriteCodeFragment class. + diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfoInputs.cache b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfoInputs.cache new file mode 100644 index 0000000..a3de127 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +ab8992f86f1aa09e4519b8f96ecbea461ffeee97 diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GeneratedMSBuildEditorConfig.editorconfig b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GeneratedMSBuildEditorConfig.editorconfig new file mode 100644 index 0000000..00bd368 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GeneratedMSBuildEditorConfig.editorconfig @@ -0,0 +1,16 @@ +is_global = true +build_property.TargetFramework = net6.0 +build_property.TargetPlatformMinVersion = +build_property.UsingMicrosoftNETSdkWeb = true +build_property.ProjectTypeGuids = +build_property.InvariantGlobalization = +build_property.PlatformNeutralAssembly = +build_property._SupportedPlatformList = Linux,macOS,Windows +build_property.RootNamespace = Fiware +build_property.RootNamespace = Fiware +build_property.ProjectDir = /app/ +build_property.RazorLangVersion = 6.0 +build_property.SupportLocalizedComponentNames = +build_property.GenerateRazorMetadataSourceChecksumAttributes = +build_property.MSBuildProjectDirectory = /app +build_property._RazorSourceGeneratorDebug = diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GlobalUsings.g.cs b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GlobalUsings.g.cs new file mode 100644 index 0000000..025530a --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GlobalUsings.g.cs @@ -0,0 +1,17 @@ +// +global using global::Microsoft.AspNetCore.Builder; +global using global::Microsoft.AspNetCore.Hosting; +global using global::Microsoft.AspNetCore.Http; +global using global::Microsoft.AspNetCore.Routing; +global using global::Microsoft.Extensions.Configuration; +global using global::Microsoft.Extensions.DependencyInjection; +global using global::Microsoft.Extensions.Hosting; +global using global::Microsoft.Extensions.Logging; +global using global::System; +global using global::System.Collections.Generic; +global using global::System.IO; +global using global::System.Linq; +global using global::System.Net.Http; +global using global::System.Net.Http.Json; +global using global::System.Threading; +global using global::System.Threading.Tasks; diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cache b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cache new file mode 100644 index 0000000..e69de29 diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cs b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cs new file mode 100644 index 0000000..5c337f8 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cs @@ -0,0 +1,16 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.ApplicationPartAttribute("Swashbuckle.AspNetCore.SwaggerGen")] + +// Generated by the MSBuild WriteCodeFragment class. + diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.assets.cache b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.assets.cache new file mode 100644 index 0000000..1bbc8ac Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.assets.cache differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.AssemblyReference.cache b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.AssemblyReference.cache new file mode 100644 index 0000000..cc5a48c Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.AssemblyReference.cache differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CopyComplete b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CoreCompileInputs.cache b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..06f73e8 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +7ddbf5c9ad2c5ea76513a572ec9c2e86ad7d9315 diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.FileListAbsolute.txt b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..17cc419 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.FileListAbsolute.txt @@ -0,0 +1,54 @@ +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.AssemblyReference.cache +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.GeneratedMSBuildEditorConfig.editorconfig +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfoInputs.cache +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.AssemblyInfo.cs +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CoreCompileInputs.cache +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cs +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cache +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.Development.json +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/appsettings.json +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.deps.json +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.runtimeconfig.json +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Fiware.pdb +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Microsoft.OpenApi.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/staticwebassets.build.json +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/staticwebassets.development.json +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/scopedcss/bundle/Fiware.styles.css +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.csproj.CopyComplete +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/refint/Fiware.dll +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.pdb +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.genruntimeconfig.cache +/workspaces/programmhandler/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/ref/Fiware.dll +/app/bin/Debug/net6.0/appsettings.Development.json +/app/bin/Debug/net6.0/appsettings.json +/app/bin/Debug/net6.0/Fiware +/app/bin/Debug/net6.0/Fiware.deps.json +/app/bin/Debug/net6.0/Fiware.runtimeconfig.json +/app/bin/Debug/net6.0/Fiware.dll +/app/bin/Debug/net6.0/Fiware.pdb +/app/bin/Debug/net6.0/Microsoft.OpenApi.dll +/app/bin/Debug/net6.0/Swashbuckle.AspNetCore.Swagger.dll +/app/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll +/app/bin/Debug/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll +/app/obj/Debug/net6.0/Fiware.csproj.AssemblyReference.cache +/app/obj/Debug/net6.0/Fiware.GeneratedMSBuildEditorConfig.editorconfig +/app/obj/Debug/net6.0/Fiware.AssemblyInfoInputs.cache +/app/obj/Debug/net6.0/Fiware.AssemblyInfo.cs +/app/obj/Debug/net6.0/Fiware.csproj.CoreCompileInputs.cache +/app/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cs +/app/obj/Debug/net6.0/Fiware.MvcApplicationPartsAssemblyInfo.cache +/app/obj/Debug/net6.0/staticwebassets.build.json +/app/obj/Debug/net6.0/staticwebassets.development.json +/app/obj/Debug/net6.0/scopedcss/bundle/Fiware.styles.css +/app/obj/Debug/net6.0/Fiware.csproj.CopyComplete +/app/obj/Debug/net6.0/Fiware.dll +/app/obj/Debug/net6.0/refint/Fiware.dll +/app/obj/Debug/net6.0/Fiware.pdb +/app/obj/Debug/net6.0/Fiware.genruntimeconfig.cache +/app/obj/Debug/net6.0/ref/Fiware.dll diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.dll b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.dll new file mode 100644 index 0000000..daaf693 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.dll differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.genruntimeconfig.cache b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.genruntimeconfig.cache new file mode 100644 index 0000000..ab05d23 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.genruntimeconfig.cache @@ -0,0 +1 @@ +91f62b5415f182d84f370b16ac45c34fa0c68539 diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.pdb b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.pdb new file mode 100644 index 0000000..b1d5dd2 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/Fiware.pdb differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/apphost b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/apphost new file mode 100644 index 0000000..8c24cb6 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/apphost differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/ref/Fiware.dll b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/ref/Fiware.dll new file mode 100644 index 0000000..fec3b26 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/ref/Fiware.dll differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/refint/Fiware.dll b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/refint/Fiware.dll new file mode 100644 index 0000000..fec3b26 Binary files /dev/null and b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/refint/Fiware.dll differ diff --git a/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/staticwebassets.build.json b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/staticwebassets.build.json new file mode 100644 index 0000000..9d4f6d1 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Debug/net6.0/staticwebassets.build.json @@ -0,0 +1,11 @@ +{ + "Version": 1, + "Hash": "tCptSs1T5uxIzL/cIOw+ep9kzNHqWn53QOZff7PzZuI=", + "Source": "Fiware", + "BasePath": "_content/Fiware", + "Mode": "Default", + "ManifestType": "Build", + "ReferencedProjectsConfiguration": [], + "DiscoveryPatterns": [], + "Assets": [] +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.dgspec.json b/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.dgspec.json new file mode 100644 index 0000000..48ac094 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.dgspec.json @@ -0,0 +1,69 @@ +{ + "format": 1, + "restore": { + "/app/Fiware.csproj": {} + }, + "projects": { + "/app/Fiware.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "/app/Fiware.csproj", + "projectName": "Fiware", + "projectPath": "/app/Fiware.csproj", + "packagesPath": "/root/.nuget/packages/", + "outputPath": "/app/obj/", + "projectStyle": "PackageReference", + "configFilePaths": [ + "/root/.nuget/NuGet/NuGet.Config" + ], + "originalTargetFrameworks": [ + "net6.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net6.0": { + "targetAlias": "net6.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "net6.0": { + "targetAlias": "net6.0", + "dependencies": { + "Swashbuckle.AspNetCore": { + "target": "Package", + "version": "[6.2.3, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.AspNetCore.App": { + "privateAssets": "none" + }, + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/6.0.300/RuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.g.props b/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.g.props new file mode 100644 index 0000000..3eb8f6e --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.g.props @@ -0,0 +1,22 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + /root/.nuget/packages/ + /root/.nuget/packages/ + PackageReference + 6.2.0 + + + + + + + + + + /root/.nuget/packages/microsoft.extensions.apidescription.server/3.0.0 + + \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.g.targets b/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.g.targets new file mode 100644 index 0000000..d143396 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/Fiware.csproj.nuget.g.targets @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/obj/project.assets.json b/docker/docker-compose/pgh/Fiware/obj/project.assets.json new file mode 100644 index 0000000..20dd9c6 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/project.assets.json @@ -0,0 +1,260 @@ +{ + "version": 3, + "targets": { + "net6.0": { + "Microsoft.Extensions.ApiDescription.Server/3.0.0": { + "type": "package", + "build": { + "build/Microsoft.Extensions.ApiDescription.Server.props": {}, + "build/Microsoft.Extensions.ApiDescription.Server.targets": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props": {}, + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets": {} + } + }, + "Microsoft.OpenApi/1.2.3": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.OpenApi.dll": {} + } + }, + "Swashbuckle.AspNetCore/6.2.3": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.ApiDescription.Server": "3.0.0", + "Swashbuckle.AspNetCore.Swagger": "6.2.3", + "Swashbuckle.AspNetCore.SwaggerGen": "6.2.3", + "Swashbuckle.AspNetCore.SwaggerUI": "6.2.3" + }, + "build": { + "build/Swashbuckle.AspNetCore.props": {} + } + }, + "Swashbuckle.AspNetCore.Swagger/6.2.3": { + "type": "package", + "dependencies": { + "Microsoft.OpenApi": "1.2.3" + }, + "compile": { + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {} + }, + "runtime": { + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll": {} + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.2.3": { + "type": "package", + "dependencies": { + "Swashbuckle.AspNetCore.Swagger": "6.2.3" + }, + "compile": { + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {} + }, + "runtime": { + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll": {} + } + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.2.3": { + "type": "package", + "compile": { + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {} + }, + "runtime": { + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll": {} + }, + "frameworkReferences": [ + "Microsoft.AspNetCore.App" + ] + } + } + }, + "libraries": { + "Microsoft.Extensions.ApiDescription.Server/3.0.0": { + "sha512": "LH4OE/76F6sOCslif7+Xh3fS/wUUrE5ryeXAMcoCnuwOQGT5Smw0p57IgDh/pHgHaGz/e+AmEQb7pRgb++wt0w==", + "type": "package", + "path": "microsoft.extensions.apidescription.server/3.0.0", + "hasTools": true, + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "build/Microsoft.Extensions.ApiDescription.Server.props", + "build/Microsoft.Extensions.ApiDescription.Server.targets", + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.props", + "buildMultiTargeting/Microsoft.Extensions.ApiDescription.Server.targets", + "microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512", + "microsoft.extensions.apidescription.server.nuspec", + "tools/Newtonsoft.Json.dll", + "tools/dotnet-getdocument.deps.json", + "tools/dotnet-getdocument.dll", + "tools/dotnet-getdocument.runtimeconfig.json", + "tools/net461-x86/GetDocument.Insider.exe", + "tools/net461-x86/GetDocument.Insider.exe.config", + "tools/net461/GetDocument.Insider.exe", + "tools/net461/GetDocument.Insider.exe.config", + "tools/netcoreapp2.1/GetDocument.Insider.deps.json", + "tools/netcoreapp2.1/GetDocument.Insider.dll", + "tools/netcoreapp2.1/GetDocument.Insider.runtimeconfig.json" + ] + }, + "Microsoft.OpenApi/1.2.3": { + "sha512": "Nug3rO+7Kl5/SBAadzSMAVgqDlfGjJZ0GenQrLywJ84XGKO0uRqkunz5Wyl0SDwcR71bAATXvSdbdzPrYRYKGw==", + "type": "package", + "path": "microsoft.openapi/1.2.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net46/Microsoft.OpenApi.dll", + "lib/net46/Microsoft.OpenApi.pdb", + "lib/netstandard2.0/Microsoft.OpenApi.dll", + "lib/netstandard2.0/Microsoft.OpenApi.pdb", + "microsoft.openapi.1.2.3.nupkg.sha512", + "microsoft.openapi.nuspec" + ] + }, + "Swashbuckle.AspNetCore/6.2.3": { + "sha512": "cnzQDn0Le+hInsw2SYwlOhOCPXpYi/szcvnyqZJ12v+QyrLBwAmWXBg6RIyHB18s/mLeywC+Rg2O9ndz0IUNYQ==", + "type": "package", + "path": "swashbuckle.aspnetcore/6.2.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "build/Swashbuckle.AspNetCore.props", + "swashbuckle.aspnetcore.6.2.3.nupkg.sha512", + "swashbuckle.aspnetcore.nuspec" + ] + }, + "Swashbuckle.AspNetCore.Swagger/6.2.3": { + "sha512": "qOF7j1sL0bWm8g/qqHVPCvkO3JlVvUIB8WfC98kSh6BT5y5DAnBNctfac7XR5EZf+eD7/WasvANncTqwZYfmWQ==", + "type": "package", + "path": "swashbuckle.aspnetcore.swagger/6.2.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net5.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net5.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/net6.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.Swagger.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.Swagger.pdb", + "swashbuckle.aspnetcore.swagger.6.2.3.nupkg.sha512", + "swashbuckle.aspnetcore.swagger.nuspec" + ] + }, + "Swashbuckle.AspNetCore.SwaggerGen/6.2.3": { + "sha512": "+Xq7WdMCCfcXlnbLJVFNgY8ITdP2TRYIlpbt6IKzDw5FwFxdi9lBfNDtcT+/wkKwX70iBBFmXldnnd02/VO72A==", + "type": "package", + "path": "swashbuckle.aspnetcore.swaggergen/6.2.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerGen.pdb", + "swashbuckle.aspnetcore.swaggergen.6.2.3.nupkg.sha512", + "swashbuckle.aspnetcore.swaggergen.nuspec" + ] + }, + "Swashbuckle.AspNetCore.SwaggerUI/6.2.3": { + "sha512": "bCRI87uKJVb4G+KURWm8LQrL64St04dEFZcF6gIM67Zc0Sr/N47EO83ybLMYOvfNdO1DCv8xwPcrz9J/VEhQ5g==", + "type": "package", + "path": "swashbuckle.aspnetcore.swaggerui/6.2.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net5.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/net6.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/netcoreapp3.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.dll", + "lib/netstandard2.0/Swashbuckle.AspNetCore.SwaggerUI.pdb", + "swashbuckle.aspnetcore.swaggerui.6.2.3.nupkg.sha512", + "swashbuckle.aspnetcore.swaggerui.nuspec" + ] + } + }, + "projectFileDependencyGroups": { + "net6.0": [ + "Swashbuckle.AspNetCore >= 6.2.3" + ] + }, + "packageFolders": { + "/root/.nuget/packages/": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "/app/Fiware.csproj", + "projectName": "Fiware", + "projectPath": "/app/Fiware.csproj", + "packagesPath": "/root/.nuget/packages/", + "outputPath": "/app/obj/", + "projectStyle": "PackageReference", + "configFilePaths": [ + "/root/.nuget/NuGet/NuGet.Config" + ], + "originalTargetFrameworks": [ + "net6.0" + ], + "sources": { + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "net6.0": { + "targetAlias": "net6.0", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "net6.0": { + "targetAlias": "net6.0", + "dependencies": { + "Swashbuckle.AspNetCore": { + "target": "Package", + "version": "[6.2.3, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "Microsoft.AspNetCore.App": { + "privateAssets": "none" + }, + "Microsoft.NETCore.App": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "/usr/share/dotnet/sdk/6.0.300/RuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/obj/project.nuget.cache b/docker/docker-compose/pgh/Fiware/obj/project.nuget.cache new file mode 100644 index 0000000..60dd1ea --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/project.nuget.cache @@ -0,0 +1,15 @@ +{ + "version": 2, + "dgSpecHash": "41XHxwSOzWDaXFmlVyMITDI3Vd87P+9zv0lshiSitWrZdBkJtpJW5bEsnErAkqsxMH22DRgBzU6JZo8KFQlBOg==", + "success": true, + "projectFilePath": "/app/Fiware.csproj", + "expectedPackageFiles": [ + "/root/.nuget/packages/microsoft.extensions.apidescription.server/3.0.0/microsoft.extensions.apidescription.server.3.0.0.nupkg.sha512", + "/root/.nuget/packages/microsoft.openapi/1.2.3/microsoft.openapi.1.2.3.nupkg.sha512", + "/root/.nuget/packages/swashbuckle.aspnetcore/6.2.3/swashbuckle.aspnetcore.6.2.3.nupkg.sha512", + "/root/.nuget/packages/swashbuckle.aspnetcore.swagger/6.2.3/swashbuckle.aspnetcore.swagger.6.2.3.nupkg.sha512", + "/root/.nuget/packages/swashbuckle.aspnetcore.swaggergen/6.2.3/swashbuckle.aspnetcore.swaggergen.6.2.3.nupkg.sha512", + "/root/.nuget/packages/swashbuckle.aspnetcore.swaggerui/6.2.3/swashbuckle.aspnetcore.swaggerui.6.2.3.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/Fiware/obj/staticwebassets.pack.sentinel b/docker/docker-compose/pgh/Fiware/obj/staticwebassets.pack.sentinel new file mode 100644 index 0000000..b382060 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/obj/staticwebassets.pack.sentinel @@ -0,0 +1,43 @@ +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 +2.0 diff --git a/docker/docker-compose/pgh/Fiware/test.http b/docker/docker-compose/pgh/Fiware/test.http new file mode 100644 index 0000000..46ab374 --- /dev/null +++ b/docker/docker-compose/pgh/Fiware/test.http @@ -0,0 +1,86 @@ +### +GET http://localhost:5001/api/fiware + +### Create one +POST http://localhost:5001/api/fiware +Content-Type: application/json + +{ + "data": [ + { + "id": "Room1", + "temperature": { + "metadata": {}, + "type": "Float", + "value": 28.5 + }, + "type": "Room" + } + ], + "subscriptionId": "57458eb60962ef754e7c0998" +} + +### +GET http://localhost:1026/v2/entities + +### +POST http://localhost:1026/v2/entities +Content-Type: application/json + +{ + "id": "Room1", + "type": "Room", + "temperature": { + "value": 23, + "type": "Float" + }, + "pressure": { + "value": 720, + "type": "Integer" + } +} + +### +POST http://localhost:1026/v2/subscriptions +Content-Type: application/json + +{ + "description": "A subscription to get info about Room1", + "subject": { + "entities": [ + { + "id": "Room1", + "type": "Room" + } + ], + "condition": { + "attrs": [ + "pressure" + ] + } + }, + "notification": { + "http": { + "url": "http://pghbackend:5001/api/fiware" + }, + "attrs": [ + "temperature" + ] + }, + "expires": "2040-01-01T14:00:00.00Z" +} + +### +PATCH http://localhost:1026/v2/entities/Room1/attrs +Content-Type: application/json + +{ + "temperature": { + "value": 22, + "type": "Float" + }, + "pressure": { + "value": 763, + "type": "Float" + } +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/README.md b/docker/docker-compose/pgh/README.md index 31003d5..7c6f197 100644 --- a/docker/docker-compose/pgh/README.md +++ b/docker/docker-compose/pgh/README.md @@ -1,12 +1,12 @@ # docker-compose with c# -Example with c# HelloWorld. +Example with c# Fiware API. ## docker-compose extension ``` yml - pgh-backend: + pghbackend: image: mcr.microsoft.com/dotnet/sdk:6.0 volumes: - - ./testApp:/app + - ./Fiware:/app tty: true ``` ### Image [https://hub.docker.com/_/microsoft-dotnet-sdk](https://hub.docker.com/_/microsoft-dotnet-sdk) @@ -15,15 +15,10 @@ This image is from Microsoft to develop a .NET app. How to containerize apps see ### volumes ``` yml volumes: - - ./testApp:/app + - ./Fiware:/app ``` -This includes the Folder *testApp* from your current working directory. Adapt this line to your needs. - -### tty: true -This flag is used to prevent the container from shutdown. +This includes the Folder *Fiware* from your current working directory. Adapt this line to your needs. ## Testing 1. docker-compose up -2. Attach shell to pgh-backend - 1. Change directory to app - 2. run 'dotnet run' \ No newline at end of file +2. Run commands from test.http \ No newline at end of file diff --git a/docker/docker-compose/pgh/docker-compose_programmhandler.yml b/docker/docker-compose/pgh/docker-compose_programmhandler.yml index eeacb14..ec84c14 100644 --- a/docker/docker-compose/pgh/docker-compose_programmhandler.yml +++ b/docker/docker-compose/pgh/docker-compose_programmhandler.yml @@ -10,14 +10,17 @@ services: image: fiware/orion links: - mongo + - pgh-backend ports: - "1026:1026" - command: -dbhost mongo - pgh-backend: + command: -dbhost mongo -logLevel DEBUG + pghbackend: image: mcr.microsoft.com/dotnet/sdk:6.0 + ports: + - "5001:5001" volumes: - - ./testApp:/app - tty: true + - ./Fiware:/app + command: [bash, -c, "cd /app && dotnet dev-certs https --trust && dotnet watch run -v --urls=http://0.0.0.0:5001/"] volumes: diff --git a/docker/docker-compose/pgh/test.http b/docker/docker-compose/pgh/test.http new file mode 100644 index 0000000..24f6092 --- /dev/null +++ b/docker/docker-compose/pgh/test.http @@ -0,0 +1,11 @@ +### +GET http://localhost:5013/api/superhero/4 + +### Create one +POST http://localhost:5013/api/superhero +Content-Type: application/json + +{ + "id": 4, + "name": "FlashGordon" +} \ No newline at end of file diff --git a/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.dll b/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.dll index fe44507..87683f4 100644 Binary files a/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.dll and b/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.dll differ diff --git a/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.pdb b/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.pdb index a82319a..6aef408 100644 Binary files a/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.pdb and b/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.pdb differ diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.GeneratedMSBuildEditorConfig.editorconfig b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.GeneratedMSBuildEditorConfig.editorconfig index 10f2228..f2b15f0 100644 --- a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.GeneratedMSBuildEditorConfig.editorconfig +++ b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.GeneratedMSBuildEditorConfig.editorconfig @@ -7,4 +7,4 @@ build_property.InvariantGlobalization = build_property.PlatformNeutralAssembly = build_property._SupportedPlatformList = Linux,macOS,Windows build_property.RootNamespace = DotNet.Docker -build_property.ProjectDir = /app/ +build_property.ProjectDir = /workspaces/programmhandler/docker/docker-compose/pgh/testApp/ diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.assets.cache b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.assets.cache index 6c6a1ac..794110e 100644 Binary files a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.assets.cache and b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.assets.cache differ diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.AssemblyReference.cache b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.AssemblyReference.cache index 95c4d52..7485f0a 100644 Binary files a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.AssemblyReference.cache and b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.AssemblyReference.cache differ diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.FileListAbsolute.txt b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.FileListAbsolute.txt index 35b8f60..5cce155 100644 --- a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.FileListAbsolute.txt +++ b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.FileListAbsolute.txt @@ -28,3 +28,18 @@ /app/obj/Debug/net6.0/DotNet.Docker.pdb /app/obj/Debug/net6.0/DotNet.Docker.genruntimeconfig.cache /app/obj/Debug/net6.0/ref/DotNet.Docker.dll +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.AssemblyReference.cache +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.GeneratedMSBuildEditorConfig.editorconfig +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.AssemblyInfoInputs.cache +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.AssemblyInfo.cs +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.csproj.CoreCompileInputs.cache +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.dll +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/refint/DotNet.Docker.dll +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.pdb +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.deps.json +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.runtimeconfig.json +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.dll +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/bin/Debug/net6.0/DotNet.Docker.pdb +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.genruntimeconfig.cache +/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/ref/DotNet.Docker.dll diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.dll b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.dll index fe44507..87683f4 100644 Binary files a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.dll and b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.dll differ diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.genruntimeconfig.cache b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.genruntimeconfig.cache index 911f3b1..6d89f4d 100644 --- a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.genruntimeconfig.cache +++ b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.genruntimeconfig.cache @@ -1 +1 @@ -e814ba811a6b954037baf896e3304779bae20d17 +a436b5546b0b45ef94e9d78c98415de0bfa19d98 diff --git a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.pdb b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.pdb index a82319a..6aef408 100644 Binary files a/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.pdb and b/docker/docker-compose/pgh/testApp/obj/Debug/net6.0/DotNet.Docker.pdb differ diff --git a/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.dgspec.json b/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.dgspec.json index 530dde6..be5f00e 100644 --- a/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.dgspec.json +++ b/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.dgspec.json @@ -1,20 +1,20 @@ { "format": 1, "restore": { - "/app/DotNet.Docker.csproj": {} + "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj": {} }, "projects": { - "/app/DotNet.Docker.csproj": { + "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj": { "version": "1.0.0", "restore": { - "projectUniqueName": "/app/DotNet.Docker.csproj", + "projectUniqueName": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj", "projectName": "DotNet.Docker", - "projectPath": "/app/DotNet.Docker.csproj", - "packagesPath": "/root/.nuget/packages/", - "outputPath": "/app/obj/", + "projectPath": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj", + "packagesPath": "/home/vscode/.nuget/packages/", + "outputPath": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/", "projectStyle": "PackageReference", "configFilePaths": [ - "/root/.nuget/NuGet/NuGet.Config" + "/home/vscode/.nuget/NuGet/NuGet.Config" ], "originalTargetFrameworks": [ "net6.0" diff --git a/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.g.props b/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.g.props index b16d8f9..1891253 100644 --- a/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.g.props +++ b/docker/docker-compose/pgh/testApp/obj/DotNet.Docker.csproj.nuget.g.props @@ -4,12 +4,12 @@ True NuGet $(MSBuildThisFileDirectory)project.assets.json - /root/.nuget/packages/ - /root/.nuget/packages/ + /home/vscode/.nuget/packages/ + /home/vscode/.nuget/packages/ PackageReference 6.2.0 - + \ No newline at end of file diff --git a/docker/docker-compose/pgh/testApp/obj/project.assets.json b/docker/docker-compose/pgh/testApp/obj/project.assets.json index a0ca0c4..f884883 100644 --- a/docker/docker-compose/pgh/testApp/obj/project.assets.json +++ b/docker/docker-compose/pgh/testApp/obj/project.assets.json @@ -8,19 +8,19 @@ "net6.0": [] }, "packageFolders": { - "/root/.nuget/packages/": {} + "/home/vscode/.nuget/packages/": {} }, "project": { "version": "1.0.0", "restore": { - "projectUniqueName": "/app/DotNet.Docker.csproj", + "projectUniqueName": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj", "projectName": "DotNet.Docker", - "projectPath": "/app/DotNet.Docker.csproj", - "packagesPath": "/root/.nuget/packages/", - "outputPath": "/app/obj/", + "projectPath": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj", + "packagesPath": "/home/vscode/.nuget/packages/", + "outputPath": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/obj/", "projectStyle": "PackageReference", "configFilePaths": [ - "/root/.nuget/NuGet/NuGet.Config" + "/home/vscode/.nuget/NuGet/NuGet.Config" ], "originalTargetFrameworks": [ "net6.0" diff --git a/docker/docker-compose/pgh/testApp/obj/project.nuget.cache b/docker/docker-compose/pgh/testApp/obj/project.nuget.cache index f103b18..0f869ff 100644 --- a/docker/docker-compose/pgh/testApp/obj/project.nuget.cache +++ b/docker/docker-compose/pgh/testApp/obj/project.nuget.cache @@ -1,8 +1,8 @@ { "version": 2, - "dgSpecHash": "cV2gjGnDGbXu7B/r6zfa6eRQ1sxL12RsrNaONMYW+KNyfG4SieQ10/4PNIHZUrxGyuNCg0SKSFFH5gbdTX7MPQ==", + "dgSpecHash": "l49bNKfZr+4knx1S9sNaBGTnAUHSloFQ9vbcy3BjQVYGJcARzrsVkWebWABBwe3RZYp960qFtENH+rVo1iDWKA==", "success": true, - "projectFilePath": "/app/DotNet.Docker.csproj", + "projectFilePath": "/workspaces/programmhandler/docker/docker-compose/pgh/testApp/DotNet.Docker.csproj", "expectedPackageFiles": [], "logs": [] } \ No newline at end of file diff --git a/docker/docker-compose/test/OPC_UA_Test.http b/docker/docker-compose/test/OPC_UA_Test.http index 48e6c1d..38810ab 100644 --- a/docker/docker-compose/test/OPC_UA_Test.http +++ b/docker/docker-compose/test/OPC_UA_Test.http @@ -11,6 +11,11 @@ fiware-servicepath: /demo Content-Type: application/json -d @add_device_NGSIv2.json +### +GET http://localhost:4001/iot/devices +fiware-service: opcua_car +fiware-servicepath: /demo + ### POST http://localhost:4001/iot/devices fiware-service: opcua_car @@ -79,22 +84,21 @@ fiware-servicepath: /demo ### Query entity -GET http://localhost:1026/v2/entities/Robot1 +GET http://localhost:1026/v2/entities/ fiware-service: opcua_car fiware-servicepath: /demo ### Update Entity -PATCH http://localhost:1026/v2/entities/Robot1/attrs +PUT http://localhost:1026/v2/entities/age01_Car/attrs/Accelerate?type=Device fiware-service: opcua_car fiware-servicepath: /demo content-type: application/json { - "Wert": { - "value": 1, + "value": [1], "type": "command" - } + } diff --git a/docker/docker-compose/test/opcua/README.md b/docker/docker-compose/test/opcua/README.md new file mode 100644 index 0000000..539a6df --- /dev/null +++ b/docker/docker-compose/test/opcua/README.md @@ -0,0 +1,20 @@ +# FIWARE OPCUA commands + +With the FIWARE OPCUA Agent data on the Server can only be written via methods (See [https://stackoverflow.com/questions/67381102/how-to-change-values-from-writable-basic-datatypes-on-an-opc-ua-server-with-fiwa](https://stackoverflow.com/questions/67381102/how-to-change-values-from-writable-basic-datatypes-on-an-opc-ua-server-with-fiwa)). + +## OPC UA methods +- [Documentation OPC UA](https://reference.opcfoundation.org/v104/Core/docs/Part3/5.7/) + +### Example python +- Source [https://github.com/FreeOpcUa/python-opcua/blob/master/examples/server-methods.py](https://github.com/FreeOpcUa/python-opcua/blob/master/examples/server-methods.py) + +## OPC UA Client +- Uncomment the api and agent-id parameters in the config.properties file. +- Use the *autoconfig* function to get a first draw. +- Adapt config.json, especially the *inputArgument* field in the *contextSubscriptions* section. + +## Run the example +- Start the docker-compose_opcua.yml +- Check OCB and OPCUA Client Entities, Subscriptions and Registrations via [docker\docker-compose\test\opcua\api-calls\OPC_UA_Test.http](docker\docker-compose\test\opcua\api-calls\OPC_UA_Test.http) +- Update Entity MyObject/attrs/2:multiply?type=MyObject + diff --git a/docker/docker-compose/test/opcua/api-calls/OPC_UA_Test.http b/docker/docker-compose/test/opcua/api-calls/OPC_UA_Test.http new file mode 100644 index 0000000..2c07d5d --- /dev/null +++ b/docker/docker-compose/test/opcua/api-calls/OPC_UA_Test.http @@ -0,0 +1,122 @@ +# curl http://localhost:4001/iot/devices \ +# -H "fiware-service: opcua opcua_car" \ +# -H "fiware-servicepath: /test/demo" \ +# -H "Content-Type: application/json" \ +# -d @add_device_NGSIv2.json + +## OPC UA Client +### +GET http://localhost:4001/iot/devices +fiware-service: opcua +fiware-servicepath: /test + +## OPC UA Client +### +GET http://localhost:4001/iot/devices +fiware-service: opcua +fiware-servicepath: /test + +### +POST http://localhost:4001/iot/devices +fiware-service: opcua +fiware-servicepath: /test +Content-Type: application/json + +{ + "devices": [{ + "device_id": "MyObject", + "service": "opcua", + "subservice" : "/test", + "entity_name": "MyObject", + "entity_type": "MyObject", + "endpoint": "opc.tcp://host.docker.internal:4840/freeopcua/server/", + "attributes": [ + { + "object_id": "2:MyVariable", + "name": "2:MyVariable", + "type": "Number" + } + ], + "lazy": [], + "commands": [ + { + "object_id": "2:mymethod", + "name": "2:mymethod", + "type": "command" + }, + { + "object_id": "2:multiply", + "name": "2:multiply", + "type": "command" + } + ], + "static_attributes": [] + }] +} + +## OCB +### Query entity +GET http://localhost:1026/v2/entities/ +fiware-service: opcua +fiware-servicepath: /test + +### Query entity by id +GET http://localhost:1026/v2/entities/MyObject/ +fiware-service: opcua +fiware-servicepath: /test + +### Query entity by attrs +GET http://localhost:1026/v2/entities/MyObject/attrs/ +fiware-service: opcua +fiware-servicepath: /test + +### Update Entity CAR +PUT http://localhost:1026/v2/entities/MyObject/attrs/2:multiply?type=MyObject +fiware-service: opcua +fiware-servicepath: /test +content-type: application/json + +{ + "value": [1,4], + "type": "command" +} + + +### Query entity +GET http://localhost:1026/v2/subscriptions +fiware-service: opcua +fiware-servicepath: /test + +### Query registration +GET http://localhost:1026/v2/registrations +fiware-service: opcua +fiware-servicepath: /test + + +### Add subscription to entity (https://quantumleap.readthedocs.io/en/latest/user/using/#orion-subscription) +# POST http://localhost:1026/v2/subscriptions +# content-type: application/json +# fiware-service: opcua opcua_car +# fiware-servicepath: /test/demo + +# { +# "description": "Test subscription", +# "subject": { +# "entities": [ +# { +# "idPattern": ".*", +# "type": "Robot" +# } +# ], +# "condition": { +# "attrs": ["Wert"] +# } +# }, +# "notification": { +# "http": { +# "url": "http://quantumleap:8668/v2/notify" +# }, +# "attrs": [], +# "metadata": ["dateCreated", "dateModified"] +# } +# } \ No newline at end of file diff --git a/docker/docker-compose/test/opcua/car-config/docker-compose_opcua_car.yml b/docker/docker-compose/test/opcua/car-config/docker-compose_opcua_car.yml new file mode 100644 index 0000000..015f2f4 --- /dev/null +++ b/docker/docker-compose/test/opcua/car-config/docker-compose_opcua_car.yml @@ -0,0 +1,88 @@ +version: "3" + +services: + iotcarsrv: + hostname: iotcarsrv + image: iotagent4fiware/opcuacarsrv:latest + volumes: + - ./car_config.json:/opt/opc-ua-car-server/Car/Car1/config/car_config.json + networks: + - hostnet + ports: + - "5001:5001" + + iotage: + hostname: iotage + image: iotagent4fiware/iotagent-opcua:latest + networks: + - hostnet + - iotnet + ports: + - "4001:4001" + - "4081:8080" + depends_on: + - iotmongo + - orion + #volumes: + # - ./config.properties:/usr/src/app/conf/config.properties + # - ./certificates:/opt/iotagent-opcua/certificates + environment: + - IOTA_REGISTRY_TYPE=mongodb #Whether to hold IoT device info in memory or in a database + - IOTA_LOG_LEVEL=DEBUG # The log level of the IoT Agent + - IOTA_MONGO_HOST=iot_mongo # The host name of MongoDB + - IOTA_MONGO_DB=iotagent_opcua # The name of the database used in mongoDB + #comment if you mind using NGSI-ld + #- IOTA_CB_NGSI_VERSION=ld + # - IOTA_JSON_LD_CONTEXT=https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context-v1.3.jsonld #comment if you mind using NGSIv2 + # - IOTA_FALLBACK_TENANT=opcua_car + # - IOTA_RELAX_TEMPLATE_VALIDATION=true + + iotmongo: + hostname: iot_mongo + image: mongo:4.2 + networks: + - iotnet + volumes: + - iot_mongo_data:/data/db + - iot_mongo_conf:/data/configdb + + ################ OCB ################ + + orion: + hostname: orion + #replace fiware/orion:latest with fiware/orion-ld:0.7.0 if you mind using NGSI-ld + image: fiware/orion:latest + #image: fiware/orion-ld:0.7.0 + networks: + - hostnet + - ocbnet + ports: + - "1026:1026" + depends_on: + - orion_mongo + # add -forwarding if using NGSI-ld + #command: -statCounters -dbhost orion_mongo -logLevel INFO -forwarding + command: -statCounters -dbhost orion_mongo -logLevel INFO + + orion_mongo: + hostname: orion_mongo + image: mongo:4.2 + networks: + - ocbnet + ports: + - "27017:27017" + volumes: + - orion_mongo_data:/data/db + - orion_mongo_conf:/data/configdb + command: --nojournal + +volumes: + iot_mongo_data: + iot_mongo_conf: + orion_mongo_data: + orion_mongo_conf: + +networks: + hostnet: + iotnet: + ocbnet: diff --git a/docker/docker-compose/test/opcua/client-config/config.json b/docker/docker-compose/test/opcua/client-config/config.json new file mode 100644 index 0000000..aa4311d --- /dev/null +++ b/docker/docker-compose/test/opcua/client-config/config.json @@ -0,0 +1,95 @@ +{ + "logLevel" : "INFO", + "contextBroker" : { + "host" : "orion", + "port" : 1026 + }, + "server" : { + "port" : 4001, + "baseRoot" : "/" + }, + "deviceRegistry" : { + "type" : "memory" + }, + "mongodb" : { + "host" : "iotmongo", + "port" : "27017", + "db" : "iotagent", + "retries" : 5, + "retryTime" : 5 + }, + "types" : { + "myEmptyFolder" : { + "service" : "opcua", + "subservice" : "/test", + "active" : [ ], + "lazy" : [ ], + "commands" : [ ] + }, + "MyObject" : { + "service" : "opcua", + "subservice" : "/test", + "active" : [ { + "name" : "2:MyVariable", + "type" : "Number" + } ], + "lazy" : [ ], + "commands" : [ { + "name" : "2:mymethod", + "type" : "command" + }, { + "name" : "2:multiply", + "type" : "command" + } ] + } + }, + "browseServerOptions" : null, + "service" : "opcua", + "subservice" : "/test", + "providerUrl" : "http://iotage:4001", + "pollingExpiration" : "200000", + "pollingDaemonFrequency" : "20000", + "deviceRegistrationDuration" : "P1M", + "defaultType" : null, + "contexts" : [ { + "id" : "myEmptyFolder", + "type" : "myEmptyFolder", + "service" : "opcua", + "subservice" : "/test", + "polling" : false, + "mappings" : [ ] + }, { + "id" : "MyObject", + "type" : "MyObject", + "service" : "opcua", + "subservice" : "/test", + "polling" : false, + "mappings" : [ { + "ocb_id" : "2:MyVariable", + "opcua_id" : "ns=2;i=3", + "object_id" : null, + "inputArguments" : [ ] + }] + } ], + "contextSubscriptions" : [ { + "id" : "MyObject", + "type" : "MyObject", + "mappings" : [ { + "ocb_id" : "2:mymethod", + "opcua_id" : "ns=2;i=7", + "object_id" : "ns=2;i=2", + "inputArguments" : [ ] + }, { + "ocb_id" : "2:multiply", + "opcua_id" : "ns=2;i=10", + "object_id" : "ns=2;i=2", + "inputArguments" : [{ + "type": "x", + "dataType": 8 + }, { + "type": "y", + "dataType": 8 + } ] + } ] + } ] +} \ No newline at end of file diff --git a/docker/docker-compose/test/opcua/client-config/config.properties b/docker/docker-compose/test/opcua/client-config/config.properties new file mode 100644 index 0000000..c4e995a --- /dev/null +++ b/docker/docker-compose/test/opcua/client-config/config.properties @@ -0,0 +1,94 @@ +# ## SOUTHBOUND CONFIGURATION (OPC UA) +# namespace-ignore=2,7 +# #Server local on Windows host +# endpoint=endpoint=opc.tcp://iotcarsrv:5001/UA/CarServer + +## SOUTHBOUND CONFIGURATION (OPC UA) +namespace-ignore=0,7 +#Server local on Windows host +endpoint=opc.tcp://host.docker.internal:4840/freeopcua/server/ + +## NORTHBOUND CONFIGURATION (ORION CONTEXT BROKER) +context-broker-host=orion +context-broker-port=1026 +fiware-service= +fiware-service-path= + +## AGENT CONFIGURATION +server-base-root=/ +server-port=4001 +provider-url=http://iotage:4001 + +device-registration-duration=P1M +device-registry-type=memory + +log-level=DEBUG + +namespaceIndex=3 +namespaceNumericIdentifier=1000 + +# MONGO-DB CONFIGURATION (required if device-registry-type=mongodb) +mongodb-host=iotmongo +mongodb-port=27017 +mongodb-db=iotagent +mongodb-retries=5 +mongodb-retry-time=5 + +## DATATYPE MAPPING OPCUA --> NGSI +OPC-datatype-Number=Number +OPC-datatype-Decimal128=Number +OPC-datatype-Double=Number +OPC-datatype-Float=Number +OPC-datatype-Integer=Integer +OPC-datatype-UInteger=Integer +OPC-datatype-String=Text +OPC-datatype-ByteString=Text +#END DATATYPE MAPPING OPCUA --> NGSI + +## SESSION PARAMETERS +requestedPublishingInterval=10 +requestedLifetimeCount=1000 +requestedMaxKeepAliveCount=10 +maxNotificationsPerPublish=100 +publishingEnabled=true +priority=10 + +#SubscriptionsStrategy +uniqueSubscription=false + +## MONITORING PARAMETERS +samplingInterval=1 +queueSize=10000 +discardOldest=false + +## SERVER CERT E AUTH +securityMode=None +securityPolicy=None +userName= +password= + +#securityMode=SIGNANDENCRYPT +#securityPolicy=1Basic256 +#password=password1 +#userName=user1 + +#api-ip=192.168.13.153 + +## ADMINISTRATION SERVICES +api-port=8080 + +## POLL COMMANDS SETTINGS +polling=false +polling-commands-timer=1000 +pollingDaemonFrequency=20000 +pollingExpiration=200000 + +## AGENT ID +#agent-id=age01_ +#entity-id=age01_Car # used only during tests + +## CONFIGURATION +#configuration=#api + +## CHECK TIMER POLLING DEVICES +checkTimer=2000 diff --git a/docker/docker-compose/test/opcua/docker-compose_opcua.yml b/docker/docker-compose/test/opcua/docker-compose_opcua.yml new file mode 100644 index 0000000..10db49c --- /dev/null +++ b/docker/docker-compose/test/opcua/docker-compose_opcua.yml @@ -0,0 +1,90 @@ +version: "3" + +services: + # iotcarsrv: + # hostname: iotcarsrv + # image: iotagent4fiware/opcuacarsrv:latest + # volumes: + # - ./car-config/car_config.json:/opt/opc-ua-car-server/Car/Car1/config/car_config.json + # networks: + # - hostnet + # ports: + # - "5001:5001" + + iotage: + hostname: iotage + image: iotagent4fiware/iotagent-opcua:latest + networks: + - hostnet + - iotnet + ports: + - "4001:4001" + - "4081:8080" + depends_on: + - iotmongo + - orion + volumes: + - ./client-config/:/usr/src/app/conf/ + # - ./certificates:/opt/iotagent-opcua/certificates + environment: + # - IOTA_REGISTRY_TYPE=mongodb #Whether to hold IoT device info in memory or in a database + - IOTA_REGISTRY_TYPE=memory + - IOTA_LOG_LEVEL=DEBUG # The log level of the IoT Agent + - IOTA_MONGO_HOST=iot_mongo # The host name of MongoDB + - IOTA_MONGO_DB=iotagent_opcua # The name of the database used in mongoDB + #command: /usr/bin/tail -f /var/log/lastlog + #comment if you mind using NGSI-ld + - IOTA_CB_NGSI_VERSION=v2 + # - IOTA_JSON_LD_CONTEXT=https://uri.etsi.org/ngsi-ld/v1/ngsi-ld-core-context-v1.3.jsonld #comment if you mind using NGSIv2 + # - IOTA_FALLBACK_TENANT=opcua_car + # - IOTA_RELAX_TEMPLATE_VALIDATION=true + + iotmongo: + hostname: iot_mongo + image: mongo:4.2 + networks: + - iotnet + volumes: + - iot_mongo_data:/data/db + - iot_mongo_conf:/data/configdb + + ################ OCB ################ + + orion: + hostname: orion + #replace fiware/orion:latest with fiware/orion-ld:0.7.0 if you mind using NGSI-ld + image: fiware/orion:latest + #image: fiware/orion-ld:0.7.0 + networks: + - hostnet + - ocbnet + ports: + - "1026:1026" + depends_on: + - orion_mongo + # add -forwarding if using NGSI-ld + #command: -statCounters -dbhost orion_mongo -logLevel INFO -forwarding + command: -statCounters -dbhost orion_mongo -logLevel INFO + + orion_mongo: + hostname: orion_mongo + image: mongo:4.2 + networks: + - ocbnet + ports: + - "27017:27017" + volumes: + - orion_mongo_data:/data/db + - orion_mongo_conf:/data/configdb + command: --nojournal + +volumes: + iot_mongo_data: + iot_mongo_conf: + orion_mongo_data: + orion_mongo_conf: + +networks: + hostnet: + iotnet: + ocbnet: diff --git a/docker/docker-compose/test/opcua/server/server-methods.py b/docker/docker-compose/test/opcua/server/server-methods.py new file mode 100644 index 0000000..3ed86a3 --- /dev/null +++ b/docker/docker-compose/test/opcua/server/server-methods.py @@ -0,0 +1,103 @@ +import sys +sys.path.insert(0, "..") +import logging + +try: + from IPython import embed +except ImportError: + import code + + def embed(): + vars = globals() + vars.update(locals()) + shell = code.InteractiveConsole(vars) + shell.interact() + + +from opcua import ua, uamethod, Server + + +# method to be exposed through server +@uamethod +def func(parent, variant): + ret = False + if variant.Value % 2 == 0: + ret = True + return [ua.Variant(ret, ua.VariantType.Boolean)] + + +# method to be exposed through server +# uses a decorator to automatically convert to and from variants + +@uamethod +def multiply(parent, x, y): + print("multiply method call with parameters: ", x, y) + return x * y + + +if __name__ == "__main__": + # optional: setup logging + logging.basicConfig(level=logging.WARN) + #logger = logging.getLogger("opcua.address_space") + # logger.setLevel(logging.DEBUG) + #logger = logging.getLogger("opcua.internal_server") + # logger.setLevel(logging.DEBUG) + #logger = logging.getLogger("opcua.binary_server_asyncio") + # logger.setLevel(logging.DEBUG) + #logger = logging.getLogger("opcua.uaprocessor") + # logger.setLevel(logging.DEBUG) + #logger = logging.getLogger("opcua.subscription_service") + # logger.setLevel(logging.DEBUG) + + # now setup our server + server = Server() + #server.set_endpoint("opc.tcp://localhost:4840/freeopcua/server/") + server.set_endpoint("opc.tcp://0.0.0.0:4840/freeopcua/server/") + server.set_server_name("FreeOpcUa Example Server") + + # setup our own namespace + uri = "http://examples.freeopcua.github.io" + idx = server.register_namespace(uri) + + # get Objects node, this is where we should put our custom stuff + objects = server.get_objects_node() + + # populating our address space + myfolder = objects.add_folder(idx, "myEmptyFolder") + myobj = objects.add_object(idx, "MyObject") + myvar = myobj.add_variable(idx, "MyVariable", 6.7) + myvar.set_writable() # Set MyVariable to be writable by clients + myarrayvar = myobj.add_variable(idx, "myarrayvar", [6.7, 7.9]) + myarrayvar = myobj.add_variable(idx, "myStronglytTypedVariable", ua.Variant([], ua.VariantType.UInt32)) + myprop = myobj.add_property(idx, "myproperty", "I am a property") + mymethod = myobj.add_method(idx, "mymethod", func, [ua.VariantType.Int64], [ua.VariantType.Boolean]) + + inargx = ua.Argument() + inargx.Name = "x" + inargx.DataType = ua.NodeId(ua.ObjectIds.Int64) + inargx.ValueRank = -1 + inargx.ArrayDimensions = [] + inargx.Description = ua.LocalizedText("First number x") + inargy = ua.Argument() + inargy.Name = "y" + inargy.DataType = ua.NodeId(ua.ObjectIds.Int64) + inargy.ValueRank = -1 + inargy.ArrayDimensions = [] + inargy.Description = ua.LocalizedText("Second number y") + outarg = ua.Argument() + outarg.Name = "Result" + outarg.DataType = ua.NodeId(ua.ObjectIds.Int64) + outarg.ValueRank = -1 + outarg.ArrayDimensions = [] + outarg.Description = ua.LocalizedText("Multiplication result") + + multiply_node = myobj.add_method(idx, "multiply", multiply, [inargx, inargy], [outarg]) + + # starting! + server.start() + print("Available loggers are: ", logging.Logger.manager.loggerDict.keys()) + try: + + embed() + finally: + server.stop()