Liquid-Application-Framework-1.0-deprecated
Liquid-Application-Framework-1.0-deprecated copied to clipboard
Liquid is a framework to speed up the development of microservices
There are duplicated snippets of code for checking the current environment of the application (by analyzing the _ASPNETCORE_ENVIRONMENT_ environment variable) https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Domain/API/LightApiMock.cs#L22-L24 https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Auth/AuthMiddleware.cs#L97-L101 https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Auth/JwtSecurityCustom.cs#L19-L26 https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Auth/JwtSecurityCustom.cs#L77-L81 https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Configuration/LiquidConfiguration.cs#L25-L27 https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Mock/MockData.cs#L19-L21 https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Mock/MockData.cs#L34-L37 This may lead...
The `LightCache` class is an abstract class implementing the `ILightCache` interface. Every instance method is an abstract version of the contract of `ILightCache`. https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Cache/LightCache.cs#L8-L112 Both [ToByteArray](https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Cache/LightCache.cs#L75) and [FromByteArray](https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Runtime/Cache/LightCache.cs#L90) could perfectly...
Polly is a resilience library for .NET. It was somewhat coupled to Liquid (the name of the interface is `ILightPolly`, for instance). Right now, for some unknown reason, `WorkBench.Polly` is...
The configuration of a Media Storage is specific to a storage provider - Azure - it expects a ConnectionString and a Container, terms that are specific to Azure Blob Storage...
The `Name` property of the `MethodStubAPIConfiguration` class contains the name of an element from the `WorkBenchServiceHttp` enumeration, which is converted from within the `WorkBenchServiceHttp` property. https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Domain/API/StubAPIConfiguration.cs#L50-L80 We could create a...
The last item of the `WorkBenchServiceHttp` enumeration is called _PATH_. Although we can create custom HTTP methods, I believe it was supposed to be [PATCH](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/PATCH). https://github.com/Avanade/Liquid-Application-Framework/blob/1d6c37c44fb5bbb6f84ba2f1d1a8a1b3d646c2ad/src/Liquid.Base/WorkBenchServiceType.cs#L4
The ternary in this line makes the code impossible to read. https://github.com/Avanade/Liquid-Application-Framework/blob/1f805007f58b73ae09067bc56f863ae0fa702224/src/Liquid.Runtime/Polly/Polly.cs#L20
This feature was requested by a customer using Liquid. They actually already made a implementation for it (#118), which they are currently leveraging in a local fork. The suggestion is...
Right now, we are unable to add two controllers to the same solution. We need to allow it.
Given that the framework leads us to use highly coupled dependencies and makes use of a non-mockable _service locator_, it is very hard to create good unit tests.