Konfigurace uživatelských procedur rozhraní API

Uživatelská procedura rozhraní API je modul kódu (soubor .dll, který sami zadáte a který je spuštěn bezprostředně před voláními MQI nebo po nich.

Informace o této úloze

Když produkt IBM® MQ obdrží volání z programu do jednoho z jeho vstupních bodů API, bude produkt IBM MQ volat vaši uživatelskou proceduru rozhraní API. Uživatelská procedura rozhraní API je spuštěna před spuštěním MQI nebo něm. Závisí to na tom, jak je uživatelská procedura nakonfigurována.

Můžete nakonfigurovat, aby nebyla volána žádná, jedna nebo mnoho uživatelských procedur a můžete také nakonfigurovat pořadí, ve kterém má být více nakonfigurovaných uživatelských procedur voláno. V systémech Windows a Linux® (platformy x86 a x86-64) lze nakonfigurovat uživatelské procedury API pomocí produktu IBM MQ Explorer. Podrobnosti konfigurace jsou uloženy v souborech .ini.

  1. Konfigurace uživatelské procedury rozhraní API v IBM MQ Explorer.
  2. Přepsání běžné uživatelské procedury rozhraní API lokální uživatelskou procedurou rozhraní API.
Používají se tři typy definic uživatelských procedur API:
Běžné (ApiExitCommon)
Jedna sada definic na počítač. Po spuštění správce front jsou ve správci front načteny a použity nadefinované uživatelské procedury API (pokud jsou nějaké nadefinované). Běžné uživatelské procedury rozhraní API lze konfigurovat v dialogovém okně vlastností produktu IBM MQ. Běžné uživatelské procedury se zobrazují v tabulce Lokální uživatelské procedury rozhraní API v dialogovém okně vlastností každého lokálního správce front.
Šablona (ApiExitTemplate)
Jedna sada definic na počítač. Při vytvoření správce front jsou uživatelské procedury rozhraní API, které jsou zde nadefinované (pokud jsou nějaké nadefinované), zkopírovány do nově vytvořeného správce front jako lokální uživatelské procedury. Uživatelské procedury rozhraní API šablony lze konfigurovat v dialogovém okně vlastností produktu IBM MQ.
Lokální (ApiExitLocal)
Jedna sada definic na správce front. Po spuštění správce front přepíší všechny nadefinované uživatelské procedury API běžné uživatelské procedury, pokud mají shodné atributy Název a pokud bylo přepsání specifikováno. Pokud je přepsána běžná uživatelská procedura rozhraní API, nebude uloženo žádné z polí běžné definice, a to ani v případě, že byla přiřazena hodnota volitelnému atributu Data. Lokální uživatelské procedury rozhraní API lze konfigurovat v dialogovém okně vlastností správce front.
Po nakonfigurování uživatelských procedur rozhraní API v dialogových oknech vlastností produktu IBM MQ a správce front jsou přidány hodnoty do sekcí ApiExitCommon, ApiExitTemplate a ApiExitLocal v konfiguračních souborech nebo v registru systému Windows.
Tabulka 1. Atributy uživatelské procedury rozhraní API
Atribut Význam Klíč výrazu
Název Určuje popisný název uživatelské procedury rozhraní API, který je předán uživatelské proceduře rozhraní API v poli ExitInfoName struktury MQAXP. Tento název musí být jedinečný a může obsahovat maximálně 48 znaků platných pro názvy objektů produktu IBM MQ (například názvy front). Název
Typ Určuje typ uživatelské procedury: common, template, local nebo override. (Nejedná se o samostatný klíč sekce.)
Pořadí Tento atribut představuje číslo bez znaménka definující pořadí, ve kterém je tato uživatelská procedura rozhraní API volána ve vztahu k jiným uživatelským procedurám rozhraní API. Uživatelská procedura rozhraní API s nízkým pořadovým číslem je volána před uživatelskou procedurou rozhraní API s vyšším pořadovým číslem. Pořadí, v jakém jsou volány různé uživatelské procedury rozhraní API se stejným pořadovým číslem, není definováno. Mezery v číslování uživatelských procedur rozhraní API definovaných pro správce front nejsou na překážku. Pořadí
Modul Určuje modul, který obsahuje kód uživatelské procedury rozhraní API. Pokud pole obsahuje název modulu včetně úplné cesty, je použit beze změny. Pokud toto pole obsahuje pouze název modulu, je modul vyhledán stejnou metodou jako uživatelské procedury kanálu, tj. pomocí hodnoty v poli Výchozí cesta uživatelské procedury na stránce Uživatelské procedury v dialogového okna vlastností správce front. Modul
Funkce Určuje název vstupního bodu funkce do modulu, který obsahuje kód uživatelské procedury rozhraní API. Tímto vstupním bodem je funkce MQ_INIT_EXIT. Délka pole je omezena hodnotou MQ_EXIT_NAME_LENGTH. Funkce
Data Pokud je tento atribut zadán, jsou odebrány mezery na začátku a na konci, zbývající řetězec je zkrácen na 32 znaků a výsledek je předán uživatelské proceduře v poli ExitData struktury MQAXP. Není-li atribut určen, je uživatelské proceduře předáno v poli ExitData struktury MQAXP 32 mezer. Data

Postup

  • [VOLBA 1] Konfigurace uživatelské procedury rozhraní API v IBM MQ Explorer.
    1. Otevřete příslušné dialogové okno vlastností:
    2. Na stránce Uživatelské procedury klepněte na volbu Přidat. Otevře se dialogové okno Přidat uživatelskou proceduru rozhraní API.
    3. Zadejte vyžadované informace do polí v dialogovém okně Přidat uživatelskou proceduru rozhraní API.
    4. Klepnutím na tlačítko OK vytvořte uživatelskou proceduru a zavřete dialogové okno Přidat uživatelskou proceduru rozhraní API.
    V tabulce na stránce Uživatelské procedury se zobrazí vlastnosti nové uživatelské procedury rozhraní API.
  • [VOLBA 2] Přepsání běžné uživatelské procedury rozhraní API lokální uživatelskou procedurou rozhraní API.

    Pokud je ve správci front definována lokální uživatelská procedura rozhraní API se stejným názvem jako běžná uživatelská procedura, je běžná uživatelská procedura přepsána. Tj. není volána běžná uživatelská procedura; místo toho je volána procedura lokální. Aby se zabránilo nechtěnému přepsání, povede vás uživatelské rozhraní při konfiguraci přepisování tak, abyste provedli správné kroky. Nelze například přidat novou uživatelskou proceduru se stejným názvem, jako má již existující uživatelská procedura, a nelze změnit název uživatelské procedury na název již existující uživatelské procedury. Můžete však také chtít přidat do správce front lokální uživatelskou proceduru rozhraní API, aby nebyla použita běžná uživatelská procedura rozhraní API, ale lokální uživatelská procedura rozhraní API. V takovém případě je nutné přepsat běžnou uživatelskou proceduru rozhraní API lokální procedurou rozhraní API.

    1. Otevřete stránku Uživatelské procedury dialogového okna vlastností správce front.
    2. V tabulce Lokální uživatelské procedury rozhraní API klepněte na běžnou uživatelskou proceduru, kterou chcete přepsat.
    3. Klepněte na tlačítko Přepsat.
      Otevře se dialogové okno Upravit uživatelskou proceduru rozhraní API s název běžné uživatelské procedury rozhraní API.
    4. V dialogovém okně Upravit uživatelskou proceduru rozhraní API zadejte podrobnosti o lokální uživatelské proceduře rozhraní API a klepnutím na tlačítko OK uložte změny.
    Lokální uživatelská procedura nyní přepíše běžnou uživatelskou proceduru se stejným názvem.