Utilizzo dei plug-in API per il caricamento dei dati in policy e moduli

Questo articolo contiene i seguenti argomenti:
casm173
Questo articolo contiene i seguenti argomenti:
Gli amministratori e responsabili della progettazione del servizio collaborano alla scrittura di plug-in API per il caricamento dinamico dei dati in policy e moduli, come indicato di seguito:
  • Policy: i dati specificano gli assegnatari (responsabili dell'approvazione) di una Richiesta. È possibile utilizzare il plug-in invece di specificare manualmente gli assegnatari con il generatore di azioni. Quando un utente invia una Richiesta, il plug-in API consente di specificare in modo dinamico gli assegnatari.
  • Modulo: i dati specificano il valore dei seguenti campi: tabelle dinamiche, elenchi doppi o caselle di selezione con relative opzioni. Ad esempio, se un utente compila un modulo per prenotare un computer virtuale, l'oggetto di dati del report popola l'elenco dei computer disponibili. Inoltre, è possibile scrivere altri oggetti di dati del report per compilare i relativi campi, ad esempio, le opzioni per RAM e spazio su disco.
I plug-in API interrogano l'MDB o un'altra fonte dati. Il plug-in API restituisce il numero di oggetti che soddisfano i criteri specificati. È possibile scrivere i propri plug-in API o copiare e modificare i plug-in predefiniti per soddisfare i propri requisiti. In entrambi i casi, soddisfare i prerequisiti e compilare i plug-in
prima
di poterli utilizzare.
I plug-in API sono distribuiti come file jar nella directory dei plug-in dell'archivio file I plug-in API vengono eseguiti nella stessa istanza di computer virtuale Java di CA Service Catalog.
Eseguire le attività applicabili:
Utilizzo dei plug-in API per le policy
Per scrivere e utilizzare un plug-in API per le policy, attenersi alla procedura indicata:
  1. Definire lo scopo o l'obiettivo del plug-in.
    Un plug-in API è utile quando si eseguono query su un sistema esterno per i dati utilizzati per specificare gli assegnatari. Un plug-in API è utile anche quando le identità variano a seconda dei dati forniti nella richiesta. In base a questi dati, il plug-in crea in modo dinamico l'elenco degli assegnatari e specifica i livelli degli assegnatari.
  2. Soddisfare i prerequisiti:
  3. Essere in grado di svolgere le attività seguenti in modo competente:
    • Eseguire la programmazione in Java.
    • Creare policy, condizioni incluse, e decidere i tipi di assegnatari necessari.
  4. Consultare la documentazione relativa al plug-in API, come segue:
    1. Selezionare Amministrazione, Strumenti, Plug-in.
    2. Fare clic su Documentazione API.
    3. Esaminare il pacchetto com.ca.usm.plugins.apis.policies.
    La documentazione dell'API è una documentazione Java generata automaticamente con i metodi di classe Java per i plug-in. Utilizzare le interfacce, le classi, i metodi, e così via per implementare il plug-in.
  5. Scaricare e verificare il plug-in API di esempio per le policy, come segue:
    1. Selezionare Amministrazione, Strumenti, Plug-in.
    2. Fare clic su Esempio di plug-in di policy, controllare i dettagli e scaricare il codice sorgente.
    3. Aprire e consultare il file SamplePolicyPlugin.java nella cartella \src\java\com\ca\usm\plugins\samples\policy. Utilizzare l'esempio di plug-in per la policy come modello.
  6. Creare una classe Java che implementa l'interfaccia denominata com.ca.usm.plugins.apis.policies.AssignmentPolicyPlugin. L'esempio di plug-in della policy illustra la procedura per implementare questa interfaccia.
  7. (Facoltativo) Se si utilizzano moduli di configurazione di contenuto, recuperare i valori dai campi in questi moduli. Utilizzare i moduli in base alle proprie esigenze.
  8. Creare un file di proprietà per il plug-in. È possibile utilizzare il file plugin.properties nell'esempio di plug-in della policy come modello per i file di proprietà.
  9. Creare una cartella per archiviare il file di proprietà e qualsiasi file .jar che fornisce le classi e le raccolte di supporto.
    Archiviare i file di proprietà al livello
    superiore
    della cartella.
    Non
    archiviare i file di proprietà in una cartella secondaria.
  10. Attivare il plug-in:
    1. Arrestare il servizio Windows di CA Service Catalog.
    2. Copiare la cartella (incluse tutte le cartelle secondarie, se presenti) nella cartella USM_HOME\filestore\plugins.
  11. Avviare il servizio Windows di CA Service Catalog.
  12. Verificare che il plug-in sia stato utilizzato correttamente:
    1. Selezionare Amministrazione, Strumenti, Plug-in.
    2. Verificare che il plug-in sia elencato e che i dettagli sia visualizzati correttamente.
  13. Verificare il plug-in:
    1. Utilizzarlo per specificare gli assegnatari di una policy.
    2. Inviare una richiesta per l'attivazione della policy e verificare che la policy assegni i responsabili dell'approvazione in modo dinamico come previsto.
Utilizzo dei plug-in API per i moduli
Per scrivere e utilizzare un plug-in API in un modulo, attenersi alla procedura indicata:
  1. Definire lo scopo del plug-in. Ad esempio, compilare un campo di selezione con sale riunioni che l'utente può prenotare per un periodo di tempo specificato. Altri esempi includono le opzioni per la sala riunioni, quali proiettori, unità di videoconferenza e microfoni.
  2. Soddisfare i prerequisiti. Essere in grado di svolgere le attività seguenti in modo competente:
    • Eseguire la programmazione in Java.
    • Creare i moduli mediante l'Ambiente di progettazione moduli.
    • Creazione dei campi seguenti nei moduli dell'Ambiente di progettazione moduli:
      • Campi a selezione singola, a selezione multipla e di elenco doppio
      • Campi di tabella dinamica
  3. Consultare la documentazione relativa al plug-in API, come segue:
    1. Accedere a CA Service Catalog e selezionare Amministrazione, Strumenti.
    2. Selezionare Collegamenti.
    3. Fare clic su Documentazione del plug-in.
    La documentazione dell'API è una documentazione Java generata automaticamente con i metodi di classe Java per i plug-in. Utilizzare le interfacce, le classi, i metodi, e così via per implementare il plug-in.
  4. Creare una classe Java per il tipo di campo Ambiente di progettazione moduli a cui si applica il plug-in, come segue:
    • Per campi a selezione singola, a selezione multipla e di elenco doppio: creare una classe Java che implementa l'interfaccia denominata com.ca.usm.plugins.apis.forms.FDSelectDataProvider. Un esempio di implementazione di questa interfaccia è dato in Esempio di plug-in di selezione, con l'ID ca.catalog.samples.select-plugin.
    • Per campi di tabella dinamica: creare una classe Java che implementa l'interfaccia denominata com.ca.usm.plugins.apis.forms.FDTableDataProvider. Un esempio di implementazione di questa interfaccia è dato in Esempio di plug-in di tabella, con l'ID ca.catalog.samples.table-plugin.
    Per accedere alla documentazione Java per le interfacce, fare clic su Amministrazione, Strumenti, Plug-in, quindi fare clic su Documentazione API.
    Per scaricare un esempio di codice sorgente, fare clic sui plug-in di esempio nella stessa pagina, quindi su Scarica codice sorgente.
  5. Creare un file di proprietà per il plug-in, come segue:
    • Utilizzare gli esempi di plug-in come modelli per i file di proprietà. In tal caso, modificare la proprietà dell'ID relativo al plug-in nel file plugin.properties.
    • Per usare il file di build incluso per compilare un plug-in, utilizzare Java Development Kit 1.6 (o versioni successive) e Apache Ant 1.8 (o versioni successive).
    • Utilizzare un caricatore di classe privato per i plug-in. A tale scopo, aggiungere la riga seguente al file plugin.properties:
      classloader.type=private
      In seguito all'aggiornamento di CA Service Catalog,
      non
      è necessario aggiornare i plug-in personalizzati di CA Service Catalog release 12.7. I plug-in continuano a funzionare come in precedenza.
  6. (Facoltativo) Se si utilizzano moduli di configurazione di contenuto, recuperare i valori dai campi in questi moduli. Utilizzare i moduli in base alle proprie esigenze.
  7. Eseguire le azioni applicabili:
    • Configurare i parametri di impaginazione per i campi di selezione.
    • Configurare gli attributi solo per caselle di selezione.
    • Configurare i parametri di ordinamento e impaginazione per le tabelle dinamiche.
  8. Creare una cartella per archiviare il file di proprietà e qualsiasi file .jar che fornisce le classi e le raccolte di supporto.
    Archiviare i file di proprietà al livello
    superiore
    della cartella.
    Non
    archiviare i file di proprietà in una cartella secondaria.
  9. Attivare il plug-in:
    1. Copiare la cartella (incluse tutte le cartelle secondarie, se presenti) nella cartella dei plug-in dell'archivio file.
    2. Selezionare Amministrazione, Strumenti, Plug-in, quindi fare clic sul metodo Ricarica plug-in.
  10. Verificare che il plug-in sia stato utilizzato correttamente:
    1. Accedere a CA Service Catalog e selezionare Amministrazione, Strumenti.
    2. Selezionare Plug-in.
    3. Verificare che il plug-in sia elencato e che i dettagli sia visualizzati correttamente.
È possibile provare l'API da utilizzare in un campo del modulo.
Configurazione dei parametri di impaginazione per campi di selezione
Il plug-in può restituire una grande quantità di dati in un campo di selezione del modulo. In tal caso, spesso si specificano le dimensioni di pagina dei risultati nel campo di selezione. Ad esempio, si possono visualizzare dieci risultati per pagina nel campo di selezione. A tale scopo, configurare i parametri di impaginazione nella classe Java e nell'oggetto relativi.
Attenersi alla seguente procedura:
  1. Modificare la classe Java che implementa l'interfaccia denominata com.ca.usm.plugins.apis.forms.FDSelectDataProvider. Implementare il metodo seguente in FDSelectDataProvider:
    List<FDOption> getOptions(int start, int numToReturn);
    • avvia
      Specifica la prima riga da restituire. Questo parametro è un numero intero.
    • numToReturn
      Specifica il numero di righe da restituire. Questo parametro è un numero intero.
    Questo metodo restituisce un elenco di oggetti FDOption:
      • La coppia chiave/valore (ID e valore) in un oggetto di dati del report per le opzioni del campo di selezione.
      • Dati complementari alla coppia chiave/valore. È possibile eventualmente visualizzare questi dati aggiuntivi in altri campi (eccetto il campo di selezione) sul modulo.
    Il valore dell'attributo _id di ciascun campo deve corrispondere a una delle chiavi nei dati aggiuntivi.
  2. In FDSelectDataProvider, implementare anche il metodo seguente:
    int totalCount();
    Questo metodo restituisce il numero totale di righe presenti.
Per ulteriori informazioni ed esempi, consultare la documentazione del plug-in API.
Configurazione degli attributi solo per caselle di selezione
Alcuni attributi HTML si applicano solo alle caselle di selezione. Per ulteriori informazioni, consultare la sezione Attributi esclusivi delle caselle di selezione.
Configurazione dei parametri di ordinamento e impaginazione per tabelle dinamiche
Il plug-in può restituire una grande quantità di dati in un modulo di tabella dinamica. In questo scenario, specificare la dimensione della pagina dei risultati. Ad esempio, è possibile visualizzare dieci risultati per pagina sul modulo. Allo stesso modo, spesso si desidera consentire agli utenti di ordinare i risultati su ciascuna pagina in modo crescente o decrescente. Per entrambe queste attività, configurare i parametri di ordinamento e impaginazione nella classe Java e nell'oggetto relativi.
Attenersi alla seguente procedura:
  1. Fare clic su Catalogo, Moduli e aprire il modulo di interesse.
  2. Aprire la tabella e verificare che l'attributo denominato Ordinabile sia impostato su True.
    Se questo attributo è abilitato (True), allora gli utenti possono fare clic sulle frecce nelle intestazioni di colonna della tabella per ordinare i risultati.
  3. Modificare la classe Java che implementa l'interfaccia denominata com.ca.usm.plugins.apis.forms.FDTableDataProvider. Implementare il metodo seguente in FDTableDataProvider:
    List<FDTableRow> getTableRows(int start, int numToReturn, String sortField, boolean sortAscending);
    Gli utenti determinano questi valori interagendo con il modulo, ad esempio, facendo clic per visualizzare la pagina successiva.
    • avvia
      Specifica la prima riga da restituire. Questo parametro è un numero intero.
    • numToReturn
      Specifica il numero di righe da restituire. Questo parametro è un numero intero.
    • sortField
      Specifica le righe da ordinare. Quando il valore è null, non avviene alcun ordinamento. Questo parametro è di tipo stringa.
    • sortAscending
      Specifica se ordinare i risultati in modo crescente o decrescente. Questo parametro è di tipo booleano.
    Questo metodo restituisce oggetti FDTableRow, che vengono descritti più avanti.
  4. In FDTableDataProvider, implementare anche il metodo seguente:
    int totalCount();
    Questo metodo restituisce il numero totale di righe presenti.
  5. Utilizzare l'oggetto FDTableRow e i relativi metodi per restituire i dati di riga della tabella. È possibile utilizzare i seguenti metodi:
    • public void setColumnValue(String columnId, String data)
      Specifica quanto segue per impostare il valore di una colonna:
      • String columnid: specifica l'attributo _id di un componente di tabella.
      • String data: specifica un valore che è possibile analizzare e inserire nel campo sulla tabella.
    • public String getColumnValue(String columnId)
      Specifica la funzione GET corrispondente alla precedente funzione SET (public void setColumnValue).
    • public Set getColumns()
      Restituisce la serie di ID colonna archiviata in questo oggetto.
Per ulteriori informazioni ed esempi, consultare la documentazione del plug-in API.