XFuture XConnector API dla mBank
Metoda logowania do serwera mBanku.

Namespace: GTools
Assembly: mBankConnectorLibrary (in mBankConnectorLibrary.dll) Version: 2.0.0.0

Syntax

C#
public void login()
Visual Basic
Public Sub login
Visual C++
public:
void login()

Remarks

Metoda pozwala zalogować się do serwisu bankowego za pomocą danych przekazanych do konstruktora. W przypadku niepowodzenia komunikat błędu umieszczany jest we właściwości 'errorMessage' Metoda jest asynchroniczna i może wyzwalać szereg zdarzeń. statusChanged - zdarzenie wyzwalane jest w trakcie wykonywania metody w celu informowania o kolejnych etapach wykonywanej operacji operationFinished - zdarzenie wyzwalane jest po zakończeniu wykonywania metody i pozwala ocenić rezultat operacji

Examples

Utwórz obiekt klasy LoginExampleClass i wywołaj metodę login. Rezultaty obserwuj w oknie diagnostycznym.
CopyC#
 //Przykładowa klasa, pokazujaca sposób logowania.
class LoginExampleClass
{
    //prywatny obiekt konektora
    private GTools.mBankConnector mymBankConnector;
    //konstruktor
    public LoginExampleClass(string login, string haslo)
    {
        this.mymBankConnector = new mBankConnector(login, haslo);
        this.mymBankConnector.operationFinished += new mBankConnector.mBankOperation_StatusChangedEventListener(mymBankConnector_operationFinished);
        this.mymBankConnector.statusChanged += new mBankConnector.mBankConnector_StatusChangedEventListener(mymBankConnector_statusChanged);
    }


    //sluchacz zdarzenia operationFinished konektora, wyzwalany
    //po zakończeniu operacji
    private void mymBankConnector_operationFinished(mBankConnector.mBankLastOperationResultEnum status)
    {

        //Jeśli operacja zakończyła się sukcesem
        if (status == mBankConnector.mBankLastOperationResultEnum.SUCCESS)
        {
            System.Diagnostics.Debug.WriteLine("Logowanie zakończone sukcesem");
            this.traceAccounts();
            this.traceContexts();

        }
        //Jeśli operacja zakończyła się niepowodzeniem
        else
        {
            //Wyświetlamy informację w oknie diagnostycznym
            System.Diagnostics.Debug.WriteLine(
                 string.Format("Operacja {0} zakończyła się niepowodzeniem. Komunikat błędu: {1}",
                 mymBankConnector, mymBankConnector.serviceContext.ToString(),
                 mymBankConnector.errorMessage)
            );
        }

    }

    //sluchacz zdarzenia statusChanged konektora, wyzwalany
    //przy każdej zmianie statusu
    private void mymBankConnector_statusChanged(mBankConnector.mBankConnectorStatusEnum status)
    {
        System.Diagnostics.Debug.WriteLine(string.Format("Zmiana statusu konektora: {0}", mymBankConnector.status.ToString()));
    }

    //metoda usługi logowania
    public void login()
    {
        //wywołanie asynchronicznej metody logowania
        mymBankConnector.login();
        //po zakonczeniu logowania, metoda mymBankConnector_operationFinished, 
        //zarejestrowana jako słuchacz zdarzenia 'operationFinished' konektora,wyświetli 
        //listę dostępnych rachunków i kontekstów
    }

    private void traceAccounts()
    {
        //Wyświetlamy dane rachunków w oknie diagnostycznym
        System.Diagnostics.Debug.WriteLine("Dostępne rachunki:");
        foreach (CollectedAccountData account in mymBankConnector.accounts)
        {
            System.Diagnostics.Debug.WriteLine(string.Format("rachunek:{0}, nazwa:{1}", account.accountName, account.accountNumber));
        }

    }

    private void traceContexts()
    {
        //Wyświetlamy dane kontekstów w oknie diagnostycznym
        System.Diagnostics.Debug.WriteLine("Dostępne konteksty:");
        foreach (mBankConnector.mBankContext context in mymBankConnector.availableConexts)
        {
            System.Diagnostics.Debug.WriteLine(string.Format("login kontekstu:{0}, nazwa kontekstu:{1}", context.ContextLogin, context.contextName));
        }
    }
}

See Also