Skip to content

Commit

Permalink
HttpClient injection (#54)
Browse files Browse the repository at this point in the history
* payloads on receive

* Honor disposable streams

* extended constructor to allow injecting httpClient to avoid socket exhaustion

* revert message extension for PR

* gitignore and whitespace

* Resure HttpClient for DokumentlagerHandler and CatalogHandler

* Included maskinporten aswell

* fix gitingore
  • Loading branch information
ErHaWi authored Aug 9, 2021
1 parent fd6df89 commit 74595db
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 8 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
/.idea
.c9/
*.sublime-workspace
.vs/

*.swp
*.*~
Expand Down Expand Up @@ -33,4 +34,4 @@ bld/
[Oo]ut/
msbuild.log
msbuild.err
msbuild.wrn
msbuild.wrn
18 changes: 13 additions & 5 deletions KS.Fiks.IO.Client/FiksIOClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
using KS.Fiks.IO.Client.Send;
using Ks.Fiks.Maskinporten.Client;
using RabbitMQ.Client.Events;
using System.Net.Http;

[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2, PublicKey=0024000004800000940000000602000000240000525341310004000001000100c547cac37abd99c8db225ef2f6c8a3602f3b3606cc9891605d02baa56104f4cfc0734aa39b93bf7852f7d9266654753cc297e7d2edfe0bac1cdcf9f717241550e0a7b191195b7667bb4f64bcb8e2121380fd1d9d46ad2d92d2d15605093924cceaf74c4861eff62abf69b9291ed0a340e113be11e6a7d3113e92484cf7045cc7")]

Expand All @@ -32,7 +33,7 @@ public class FiksIOClient : IFiksIOClient
private readonly IPublicKeyProvider _publicKeyProvider;

public FiksIOClient(FiksIOConfiguration configuration, IPublicKeyProvider publicKeyProvider = null)
: this(configuration, null, null, null, null, null, publicKeyProvider)
: this(configuration, null, null, null, null, null, null, publicKeyProvider)
{
}

Expand All @@ -43,16 +44,18 @@ internal FiksIOClient(
ISendHandler sendHandler = null,
IDokumentlagerHandler dokumentlagerHandler = null,
IAmqpHandler amqpHandler = null,
HttpClient httpClient = null,
IPublicKeyProvider publicKeyProvider = null)
{
KontoId = configuration.KontoConfiguration.KontoId;

maskinportenClient = maskinportenClient ?? new MaskinportenClient(configuration.MaskinportenConfiguration);
maskinportenClient = maskinportenClient ?? new MaskinportenClient(configuration.MaskinportenConfiguration, httpClient);

_catalogHandler = catalogHandler ?? new CatalogHandler(
configuration.KatalogConfiguration,
configuration.IntegrasjonConfiguration,
maskinportenClient);
maskinportenClient,
httpClient);

_publicKeyProvider = publicKeyProvider ?? new CatalogPublicKeyProvider(_catalogHandler);

Expand All @@ -64,10 +67,15 @@ internal FiksIOClient(
maskinportenClient,
configuration.FiksIOSenderConfiguration,
configuration.IntegrasjonConfiguration,
httpClient,
asicEncrypter,
_publicKeyProvider);

_dokumentlagerHandler = dokumentlagerHandler ?? new DokumentlagerHandler(configuration.DokumentlagerConfiguration, configuration.IntegrasjonConfiguration, maskinportenClient);
_dokumentlagerHandler = dokumentlagerHandler ?? new DokumentlagerHandler(
configuration.DokumentlagerConfiguration,
configuration.IntegrasjonConfiguration,
maskinportenClient,
httpClient: httpClient);

_amqpHandler = amqpHandler ?? new AmqpHandler(
maskinportenClient,
Expand Down Expand Up @@ -138,7 +146,7 @@ protected virtual void Dispose(bool disposing)

private async Task<SendtMelding> Send(MeldingRequest request, IPayload payload)
{
return await Send(request, new List<IPayload> {payload}).ConfigureAwait(false);
return await Send(request, new List<IPayload> { payload }).ConfigureAwait(false);
}
}
}
7 changes: 5 additions & 2 deletions KS.Fiks.IO.Client/Send/SendHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
using KS.Fiks.IO.Send.Client;
using KS.Fiks.IO.Send.Client.Configuration;
using Ks.Fiks.Maskinporten.Client;
using System.Net.Http;

namespace KS.Fiks.IO.Client.Send
{
Expand All @@ -34,12 +35,14 @@ public SendHandler(
IMaskinportenClient maskinportenClient,
FiksIOSenderConfiguration senderConfiguration,
IntegrasjonConfiguration integrasjonConfiguration,
HttpClient httpClient,
IAsicEncrypter asicEncrypter,
IPublicKeyProvider publicKeyProvider)
: this(
catalogHandler,
new FiksIOSender(senderConfiguration, maskinportenClient, integrasjonConfiguration.IntegrasjonId, integrasjonConfiguration.IntegrasjonPassord),
asicEncrypter, publicKeyProvider)
new FiksIOSender(senderConfiguration, maskinportenClient, integrasjonConfiguration.IntegrasjonId, integrasjonConfiguration.IntegrasjonPassord, httpClient),
asicEncrypter,
publicKeyProvider)
{
}

Expand Down

0 comments on commit 74595db

Please sign in to comment.