Konfigurowanie wyjść funkcji API

Wyjście funkcji API jest to moduł kodu w postaci pliku .dll, który jest dostarczany przez użytkownika i jest uruchamiany tuż przed wywołaniami interfejsu MQI lub tuż po nich.

O tym zadaniu

To znaczy, że jeśli program IBM® MQ odbierze wywołanie z programu do jednego z punktów wejścia funkcji API, nastąpi wywołanie wyjścia funkcji API przez program IBM MQ. Wyjście funkcji API jest uruchamiane przed lub po uruchomieniu interfejsu MQI (zgodnie z konfiguracją wyjścia określoną przez użytkownika).

Użytkownik może skonfigurować wiele wyjść, które mają być wywoływane, jedno takie wyjście lub żadnego, może również skonfigurować kolejność wywoływania wielu wyjść. W systemach Windows i Linux® (platformy x86 i x86-64) można skonfigurować wyjścia funkcji API przy użyciu programu IBM MQ Explorer. Szczegóły konfiguracji są zapisywane w plikach.ini.

  1. Skonfiguruj wyjście funkcji API w programie IBM MQ Explorer.
  2. Nadpisz wspólne wyjście funkcji API przez lokalne wyjście funkcji API.
Istnieją trzy typy definicji wyjść funkcji API:
Wspólne (ApiExitCommon)
Jeden zbiór definicji na komputer. Po uruchomieniu menedżera kolejek zdefiniowane wyjścia funkcji API (jeśli zostały zdefiniowane) są czytane i stosowane do menedżera kolejek. Do konfigurowania wyjść wspólnych funkcji API służy okno dialogowe właściwości produktu IBM MQ. Wyjścia wspólne są wyświetlane w oknie dialogowym właściwości każdego menedżera kolejek, w tabeli Wyjścia lokalne funkcji API.
Szablonowe (ApiExitTemplate)
Jeden zbiór definicji na komputer. Podczas tworzenia menedżera kolejek zdefiniowane tutaj wyjścia funkcji API (jeśli jakieś zostały zdefiniowane) są kopiowane do nowo tworzonego menedżera kolejek jako wyjścia lokalne. Do konfigurowania szablonów wyjść funkcji API służy okno dialogowe właściwości produktu IBM MQ.
Lokalne (ApiExitLocal)
Jeden zbiór definicji na menedżera kolejek. Podczas uruchamiania menedżera kolejek zdefiniowane wyjścia funkcji API przesłaniają wyjścia wspólne, jeśli wartości ich atrybutów Nazwa są takie same i jeśli określono nadpisywanie. Jeśli wspólne wyjście funkcji API zostanie przesłonięte, żadne z pól definicji wspólnej nie zostanie zapisane, nawet jeśli opcjonalny atrybut Dane ma przypisaną wartość. Konfigurowanie lokalnych wyjść funkcji API odbywa się za pomocą okna dialogowego właściwości menedżera kolejek.
Podczas konfigurowania wyjść funkcji API w produkcie IBM MQ i w oknach dialogowych właściwości menedżera kolejek wartości atrybutu są dodawane do sekcji ApiExitCommon, ApiExitTemplate oraz ApiExitLocal w plikach konfiguracyjnych lub w rejestrze Windows.
Tabela 1. Atrybuty wyjścia funkcji API
Atrybut Znaczenie Klucz sekcji
Nazwa Określa opis wyjścia funkcji API przekazywany do wyjścia funkcji API w polu ExitInfoName w strukturze MQAXP. Musi to być unikalna nazwa zawierająca nie więcej niż 48 znaków, przy czym wszystkie znaki muszą być poprawne dla nazw obiektów IBM MQ, na przykład nazw kolejek. Nazwa
Typ Określa typ wyjścia: wspólne, szablonowe, lokalne lub nadpisane. (Brak odrębnego klucza sekcji)
Kolejność Atrybut będący wartością liczbową bez znaku, za pomocą którego definiowana jest kolejność wywoływania tego wyjścia funkcji API w porównaniu z pozostałymi wyjściami funkcji API. Wywołanie wyjścia funkcji API z niskim numerem kolejnym następuje przed wywołaniem wyjścia funkcji API z wyższym numerem kolejnym. Kolejność wywoływania różnych wyjść funkcji API z takim samym numerem kolejnym jest niezdefiniowana. Dopuszczalne jest istnienie przerw w numerach kolejnych wyjść funkcji API zdefiniowanych dla menedżera kolejek. Kolejność
Moduł Służy do określenia modułu zawierającego kod dla wyjścia funkcji API. Jeśli w polu znajduje się pełna nazwa ścieżki do modułu, jest ona używana w takiej postaci. Jeśli w polu znajduje się tylko nazwa modułu, wyszukiwanie modułu odbywa się przy użyciu takiej samej metody, jak wyszukiwanie wyjść kanału, to znaczy za pomocą wartości określonej w polu Domyślna ścieżka wyjść na stronie Wyjścia w oknie dialogowym Właściwości menedżera kolejek. Moduł
Funkcja Określa nazwę punktu wejścia funkcji do modułu zawierającego kod dla wyjścia funkcji API. Punktem wejścia jest funkcja MQ_INIT_EXIT. Wielkość tego pola jest ograniczona do wartości MQ_EXIT_NAME_LENGTH. Funkcja
Dane Jeśli określono ten atrybut, usuwane są odstępy początkowe i końcowe, a pozostały łańcuch jest obcinany do 32 znaków. Następnie wynik jest przekazywany do wyjścia znajdującego się w polu ExitData w strukturze MQAXP. Jeśli atrybut ten nie zostanie określony, do wyjścia znajdującego się w polu ExitData w strukturze MQAXP przekazywana jest domyślna wartość stanowiąca 32 znaki odstępu. Dane

Procedura

  • [OPCJA 1] Skonfiguruj wyjście funkcji API w programie IBM MQ Explorer.
    1. Otwórz odpowiednie okno dialogowe właściwości:
    2. Na stronie Wyjścia kliknij opcję Dodaj. Zostanie otwarte okno dialogowe Dodawanie wyjścia funkcji API.
    3. Wpisz wymagane informacje w polach okna dialogowego Dodawanie wyjścia funkcji API.
    4. Kliknij przycisk OK, aby utworzyć wyjście, a następnie zamknij okno dialogowe Dodawanie wyjścia funkcji API.
    Właściwości nowego wyjścia funkcji API są wyświetlane w tabeli na stronie Wyjścia.
  • [OPCJA 2] Nadpisz wspólne wyjście funkcji API przez lokalne wyjście funkcji API.

    Jeśli w menedżerze kolejek zdefiniowano lokalne wyjście funkcji API o takiej samej nazwie, jak wyjście wspólne, wyjście wspólne jest nadpisywane. Dlatego też wyjście wspólne nie jest wywoływane, zamiast tego wywoływane jest wyjście lokalne. Aby zapobiec przypadkowemu nadpisaniu interfejs użytkownika wymusza podjęcie zamierzonych kroków w celu skonfigurowania nadpisywania, na przykład nie można dodawać nowego wyjścia o tej samej nazwie, co istniejące wyjście, nie można zmienić nazwy wyjścia na taka samą nazwę, jak istniejąca nazwa. Jednak użytkownik może planować dodanie do menedżera kolejek lokalnego wyjścia funkcji API, tak aby było używane zamiast wspólnego wyjścia funkcji API. W tym przypadku należy nadpisać wspólne wyjście funkcji API przez lokalne wyjście funkcji API.

    1. Otwórz stronę Wyjścia w oknie dialogowym właściwości menedżera kolejek.
    2. W tabeli Lokalne wyjścia funkcji API kliknij wspólne wyjście, które ma zostać nadpisane.
    3. Kliknij opcję Nadpisz.
      Zostanie otwarte okno dialogowe Edytowanie wyjścia funkcji API z wyświetloną nazwą wspólnego wyjścia funkcji API.
    4. W oknie dialogowym Edytowanie wyjścia funkcji API wpisz szczegóły lokalnego wyjścia funkcji API, a następnie kliknij przycisk OK w celu zapisania zmian.
    Zostanie wykonane nadpisywanie wspólnego wyjścia przez wyjście lokalne o tej samej nazwie.