From dfb5b08f26573799a7254b64e022759ed4acf102 Mon Sep 17 00:00:00 2001 From: ivarlovlie Date: Wed, 21 Dec 2022 19:14:48 +0100 Subject: feat: latest, not working --- code/lib/AsyncEndpoint.cs | 40 ++++++++++++++++++++++++++++++++++++++++ code/lib/I2R.Endpoints.csproj | 30 ++++++++++++++++++++++++++++++ code/lib/SyncEndpoint.cs | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 code/lib/AsyncEndpoint.cs create mode 100644 code/lib/I2R.Endpoints.csproj create mode 100644 code/lib/SyncEndpoint.cs (limited to 'code/lib') diff --git a/code/lib/AsyncEndpoint.cs b/code/lib/AsyncEndpoint.cs new file mode 100644 index 0000000..505032c --- /dev/null +++ b/code/lib/AsyncEndpoint.cs @@ -0,0 +1,40 @@ +namespace I2R.Endpoints; + +public static partial class AsyncEndpoint +{ + public static class Req + { + public abstract class Res + { + public abstract Task HandleAsync( + TRequest request, + CancellationToken cancellationToken = default + ); + } + + public abstract class NoRes + { + public abstract Task HandleAsync( + TRequest request, + CancellationToken cancellationToken = default + ); + } + } + + public static class NoReq + { + public abstract class Res + { + public abstract Task HandleAsync( + CancellationToken cancellationToken = default + ); + } + + public abstract class NoRes + { + public abstract Task HandleAsync( + CancellationToken cancellationToken = default + ); + } + } +} \ No newline at end of file diff --git a/code/lib/I2R.Endpoints.csproj b/code/lib/I2R.Endpoints.csproj new file mode 100644 index 0000000..90ecd90 --- /dev/null +++ b/code/lib/I2R.Endpoints.csproj @@ -0,0 +1,30 @@ + + + + net7.0 + enable + https://git.ivar.systems/dotnet-endpoints/tree/COPYING + https://git.ivar.systems/dotnet-endpoints + git + 1.1.0 + I2R.Endpoints + Ivar Løvlie + A library that enables single file endpoints (or whatever). + Ivar Løvlie + + Initial realease. + + true + + + + + + + + + + + diff --git a/code/lib/SyncEndpoint.cs b/code/lib/SyncEndpoint.cs new file mode 100644 index 0000000..f30923a --- /dev/null +++ b/code/lib/SyncEndpoint.cs @@ -0,0 +1,34 @@ +namespace I2R.Endpoints; + +public static partial class SyncEndpoint +{ + public static class Req + { + public abstract class Res + { + public abstract TResponse Handle( + TRequest request + ); + } + + public abstract class NoRes + { + public abstract void Handle( + TRequest request + ); + } + } + + public static class NoReq + { + public abstract class Res + { + public abstract TResponse Handle(); + } + + public abstract class NoRes + { + public abstract void Handle(); + } + } +} \ No newline at end of file -- cgit v1.3