Example #1
0
    public OdpowiedzPullOczekujaceTyp oczekujaceDokumenty(ZapytaniePullOczekujaceTyp ZapytaniePullOczekujace)
    {
        oczekujaceDokumentyRequest inValue = new oczekujaceDokumentyRequest();

        inValue.ZapytaniePullOczekujace = ZapytaniePullOczekujace;
        oczekujaceDokumentyResponse retVal = ((pull)(this)).oczekujaceDokumenty(inValue);

        return(retVal.OdpowiedzPullOczekujace);
    }
Example #2
0
    public System.Threading.Tasks.Task <oczekujaceDokumentyResponse> oczekujaceDokumentyAsync(ZapytaniePullOczekujaceTyp ZapytaniePullOczekujace)
    {
        oczekujaceDokumentyRequest inValue = new oczekujaceDokumentyRequest();

        inValue.ZapytaniePullOczekujace = ZapytaniePullOczekujace;
        return(((pull)(this)).oczekujaceDokumentyAsync(inValue));
    }
Example #3
0
 public oczekujaceDokumentyRequest(ZapytaniePullOczekujaceTyp ZapytaniePullOczekujace)
 {
     this.ZapytaniePullOczekujace = ZapytaniePullOczekujace;
 }
Example #4
0
        private void button1_Click(object sender, EventArgs e)
        {
            string txtDestinationFolder = @"c:\pobrane_z_ePUAP";
            //string txtAdresSkrytki = "/zsisigidspzoo/skrytkaKD";
            string txtAdresSkrytki = "skrytkaKD";
            string txtNazwaSkrytki = "test KD";
            string txtPodmiot      = "zsisigidspzoo";


            //nowy komentarz

            //parametry do zapytania
            ZapytaniePullOczekujaceTyp zapBody = new ZapytaniePullOczekujaceTyp();

            zapBody.adresSkrytki = txtAdresSkrytki;
            zapBody.nazwaSkrytki = txtNazwaSkrytki;
            zapBody.podmiot      = txtPodmiot;

            textBox1.AppendText("Adres skrytki: " + zapBody.adresSkrytki + Environment.NewLine);
            textBox1.AppendText("Nazwa skrytki: " + zapBody.nazwaSkrytki + Environment.NewLine);
            textBox1.AppendText("Podmiot: " + zapBody.podmiot + Environment.NewLine);

            CustomBinding   pullBinding  = CreatePullBinding();
            EndpointAddress pullEndpoint = CreatePullEndpoint();

            //klient pull
            pullClient _client = new pullClient(pullBinding, pullEndpoint);

            X509Certificate2 certyfikatKlienta = GetClientCert();
            X509Certificate2 certyfikatSerwisu = GetServiceCert();

            _client.ClientCredentials.ClientCertificate.Certificate         = certyfikatKlienta;
            _client.ClientCredentials.ServiceCertificate.DefaultCertificate = certyfikatSerwisu;

            //certyfikat dostarczony przez ePUAP do podpisywanie nie daje się zwalidować pod względem nadrzędnych instytucji
            //tzn. chyba sami go sobie wystawiają
            _client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = X509CertificateValidationMode.None;

            try
            {
                //sprawdź oczekujące dokumenty
                OdpowiedzPullOczekujaceTyp odp = _client.oczekujaceDokumenty(zapBody);

                textBox1.AppendText("Oczekujące dokumenty: " + odp.oczekujace.ToString());
            }
            catch (MessageSecurityException ex)
            {
                try
                {
                    System.ServiceModel.FaultException exInner = (FaultException)ex.InnerException;
                    textBox1.AppendText("Wyjątek 1: " + ex.Message);
                    if (ex.InnerException == null)
                    {
                        throw new Exception("Brak szczegółowych informacji o błędzie.");
                    }
                    FaultException fe = ex.InnerException as FaultException;
                    textBox1.AppendText("Wyjątek 2: " + fe.Message);
                    if (fe == null)
                    {
                        throw new Exception("Szczegółowe informacje zapisane zostały w nieprzewidzianym formacie.");
                    }
                    MessageFault mf = fe.CreateMessageFault();
                    if (mf == null)
                    {
                        throw new Exception("Wystąpił problem podczas odtwarzania szczegółowych informacji.");
                    }
                    XmlReader   xr = mf.GetReaderAtDetailContents();
                    XmlDocument xd = new XmlDocument();
                    xd.Load(xr);
                    XmlNode       elemKomunikat = xd.SelectSingleNode("//*[local-name() = 'komunikat']");
                    XmlNode       elemKod       = xd.SelectSingleNode("//*[local-name() = 'kod']");
                    StringBuilder msg           = new StringBuilder();
                    msg.Append("Wystąpił problem z doręczeniem dokumentów. Poniżej znajdują się szczegółowe informacje (komunikaty) przekazane przez ePUAP.");
                    msg.AppendFormat("Informacja z ePUAP: \"{0}, kod błędu: {1}\"", elemKomunikat.InnerText, elemKod.InnerText);
                    textBox1.AppendText(msg.ToString());
                }
                catch (Exception iex)
                {
                    //textBox1.AppendText(ex.Message);
                    //textBox1.AppendText(iex.Message);
                }
            }
            catch (Exception ex)
            {
                textBox1.AppendText(string.Format("Wystąpił błąd podczas pobierania liczby oczekujacych dokumentow:   " + ex.Message));
                textBox1.AppendText(string.Format("Wystąpił błąd podczas pobierania liczby oczekujacych source:   " + ex));
            }
        }