Initial commit

This commit is contained in:
2025-08-06 15:37:24 +02:00
commit bbc704fe6b
10 changed files with 143 additions and 0 deletions

25
Source/.dockerignore Normal file
View File

@@ -0,0 +1,25 @@
**/.dockerignore
**/.env
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/.idea
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/azds.yaml
**/bin
**/charts
**/docker-compose*
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
LICENSE
README.md

View File

@@ -0,0 +1,23 @@
FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS base
USER $APP_UID
WORKDIR /app
EXPOSE 8080
EXPOSE 8081
FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
ARG BUILD_CONFIGURATION=Release
WORKDIR /src
COPY ["ProofOfConcept/ProofOfConcept.csproj", "ProofOfConcept/"]
RUN dotnet restore "ProofOfConcept/ProofOfConcept.csproj"
COPY . .
WORKDIR "/src/ProofOfConcept"
RUN dotnet build "./ProofOfConcept.csproj" -c $BUILD_CONFIGURATION -o /app/build
FROM build AS publish
ARG BUILD_CONFIGURATION=Release
RUN dotnet publish "./ProofOfConcept.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=false
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "ProofOfConcept.dll"]

View File

@@ -0,0 +1,5 @@
-----BEGIN EC PRIVATE KEY-----
MHcCAQEEILhLK/yU2FhrSsxvKbclNq8bRkV1fLb3qIHGfNOWwEyZoAoGCCqGSM49
AwEHoUQDQgAE/2+0ZNUwcsa7C2kkQa6J4egse3+NTnFd7DKlLOcEZGrCBn/mfxsZ
UpQoVCeoh4j6w5ue471Ott70qpsRuOtjbQ==
-----END EC PRIVATE KEY-----

View File

@@ -0,0 +1,4 @@
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE/2+0ZNUwcsa7C2kkQa6J4egse3+N
TnFd7DKlLOcEZGrCBn/mfxsZUpQoVCeoh4j6w5ue471Ott70qpsRuOtjbQ==
-----END PUBLIC KEY-----

View File

@@ -0,0 +1,24 @@
namespace ProofOfConcept.Services;
public class MQTTClient
{
private ILogger<MQTTClient> logger;
private MQTTClientConfiguration configuration;
public MQTTClient(ILogger<MQTTClient> logger, IOptionsMonitor<MQTTClientConfiguration> options)
{
this.logger = logger;
this.configuration = options.CurrentValue;
options.OnChange(newValue =>
{
this.configuration = newValue;
logger.LogInformation("Configuration of {ClassName} changed", nameof(MQTTClient));
});
}
}
public class MQTTClientConfiguration
{
}

View File

@@ -0,0 +1,24 @@
namespace ProofOfConcept.Services;
public class MQTTServer
{
private ILogger<MQTTServer> logger;
private MQTTServerConfiguration configuration;
public MQTTServer(ILogger<MQTTServer> logger, IOptionsMonitor<MQTTServerConfiguration> options)
{
this.logger = logger;
this.configuration = options.CurrentValue;
options.OnChange(newValue =>
{
this.configuration = newValue;
logger.LogInformation("Configuration of {ClassName} changed", nameof(MQTTServer));
});
}
}
public class MQTTServerConfiguration
{
}

View File

@@ -0,0 +1,24 @@
namespace ProofOfConcept.Services;
public class MessageProcessor
{
private ILogger<MessageProcessor> logger;
private MessageProcessorConfiguration configuration;
public MessageProcessor(ILogger<MessageProcessor> logger, IOptionsMonitor<MessageProcessorConfiguration> options)
{
this.logger = logger;
this.configuration = options.CurrentValue;
options.OnChange(newValue =>
{
this.configuration = newValue;
logger.LogInformation("Configuration of {ClassName} changed", nameof(MessageProcessor));
});
}
}
public class MessageProcessorConfiguration
{
}