예제 #1
0
        private async Task addDocument(IWithDocumentProperties document, Uri putRequestUri)
        {
            var docContent = new ByteArrayContent(document.Bytes);

            docContent.Headers.Add("content-type", document.MimeType);

            var vedleggContentDisposition = $"attachment; filename=\"{document.Filnavn}\"";

            vedleggContentDisposition += document.Tittel == null ? "" : $"; name=\"{document.Tittel}\"";
            docContent.Headers.Add("content-disposition", vedleggContentDisposition);

            if (ClientConfiguration.LoggForespørselOgRespons)
            {
                _logger.LogDebug($"Sender dokument med filnavn \"{document.Filnavn}\" til integrasjonspunkt.");
            }

            var responseMessage = await HttpClient.PutAsync(putRequestUri, docContent).ConfigureAwait(false);

            var responseContent = await responseMessage.Content.ReadAsStringAsync().ConfigureAwait(false);

            if (!responseMessage.IsSuccessStatusCode)
            {
                var kvittering = new TransportFeiletKvittering
                {
                    Skyldig     = ((int)responseMessage.StatusCode).ToString().StartsWith("4") ? Feiltype.Klient : Feiltype.Server,
                    Beskrivelse = responseMessage.ReasonPhrase,
                    Feilkode    = responseMessage.StatusCode.ToString()
                };
                throw new TransportFeiletException(kvittering);
            }
        }
예제 #2
0
        private async Task CreateMessage(StringContent content, Uri openRequestUri)
        {
            if (ClientConfiguration.LoggForespørselOgRespons)
            {
                _logger.LogDebug($"Oppretter forsendelse mot integrasjonspunkt: {content}");
            }

            var responseMessage = await HttpClient.PostAsync(openRequestUri, content).ConfigureAwait(false);

            var responseContent = await responseMessage.Content.ReadAsStringAsync().ConfigureAwait(false);

            if (!responseMessage.IsSuccessStatusCode)
            {
                var transportFeiletKvittering = new TransportFeiletKvittering
                {
                    Skyldig = ((int)responseMessage.StatusCode).ToString().StartsWith("4")
                        ? Feiltype.Klient
                        : Feiltype.Server,
                    Beskrivelse = responseMessage.ReasonPhrase,
                    Feilkode    = responseMessage.StatusCode.ToString()
                };

                throw new TransportFeiletException(transportFeiletKvittering);
            }
        }
            public void EnkelKonstruktør()
            {
                //Arrange
                var transportFeiletKvittering = new TransportFeiletKvittering();

                //Act

                //Assert
                Assert.Equal(string.Empty, transportFeiletKvittering.MeldingsId);
            }
예제 #4
0
        private async Task CloseMessage(Uri putRequestUri)
        {
            if (ClientConfiguration.LoggForespørselOgRespons)
            {
                _logger.LogDebug($"Fullfører opprettelse mot integrasjonspunkt.");
            }

            HttpResponseMessage responseMessage = await HttpClient.PostAsync(putRequestUri, null).ConfigureAwait(false);

            if (!responseMessage.IsSuccessStatusCode)
            {
                var kvittering = new TransportFeiletKvittering
                {
                    Skyldig = ((int)responseMessage.StatusCode).ToString().StartsWith("4")
                        ? Feiltype.Klient
                        : Feiltype.Server,
                    Beskrivelse = responseMessage.ReasonPhrase,
                    Feilkode    = responseMessage.StatusCode.ToString()
                };
                throw new TransportFeiletException(kvittering);
            }
        }
예제 #5
0
 public TransportFeiletException(TransportFeiletKvittering TransportFeiletKvittering)
 {
     this.TransportFeiletKvittering = TransportFeiletKvittering;
 }