TPTP fornisce un framework di servizi automatizzabili di supporto per l'uso dei servizi
TPTP presenti in Eclipse da diversi ambienti. Premesso che tali servizi sono componenti fondamentali
che si pubblicano mediante estensioni (con una specifica associata
di proprietà supportate e un contratto di comportamento), è possibile creare un nuovo fornitore di servizi
che implementa lo stesso servizio. Questo approccio consente un'associazione dinamica tra il fornitore e
l'utente del servizio.
Le astrazioni dei servizi di TPTP non sono in tutto uguali alle astrazioni dei servizi Web standard
(sono molto più semplici e informali) anche se entrambe utilizzano TPTP in una architettura
orientata agli oggetti. I concetti e le astrazioni introdotti con il
framework di servizi automatici sono sinonimi di astrazioni di alto livello in qualsiasi architettura
orientata agli oggetti.
Le funzioni che compongono TPTP svilupperanno e pubblicheranno servizi in modo incrementale, che consentono
di utilizzare la piattaforma TPTP mediante script e programmi arbitrari esterni a
Eclipse. La funzione di verifica TPTP attualmente fornisce un servizio di esecuzione di verifiche, per l'esecuzione
programmatica delle verifiche TPTP.
Il framework di servizi automatizzabili ha un'architettura a livelli che consente
di associare componenti del framework. Il bus che trasporta le richieste degli utenti del servizio
al fornitore del servizio (l'esecuzione dei servizi) fornisce estendibilità a ciascun margine mediante un modello
adattatore sull'estremità client (che può essere codice in esecuzione in un'istanza
Eclipse o in esecuzione all'esterno di Eclipse, ad esempio uno script di riga comandi) e mediante un fornitore di servizi
con un modello sull'estremità server (l'estremità server è l'istanza Eclipse su cui si trovano i plugin
che forniscono le implementazioni del servizio).
È possibile sviluppare ulteriori adattatori client di automazione che adattano i nuovi paradigmi
dell'utente dei servizi nelle interfacce client di automazione standard fornite
in TPTP. Ad esempio, un adattatore di automazione per client di servizi Web può essere sviluppato da un altro
fornitore e abilitare TPTP in modo che i servizi automatizzabili vengano eseguiti da un ambiente di servizi Web standard;
oppure è possibile scrivere un adattatore di automazione per client
Jython che supporti l'uso di servizi dall'ambiente Jython.
Quando i nuovi servizi automatizzabili conformi vengono pubblicati, aumentano il pool di servizi pubblicamente disponibili
da un'istanza TPTP Eclipse e di conseguenza i fornitori di servizi che possono fornire funzionalità
agli utenti interessati nel framework di servizi automatizzabili. Gli utenti finali potranno creare un plugin che
fornisce un nuovo servizio semplicemente implementando i punti di estensione appropriati e sviluppando almeno
una classe Java. Di conseguenza questo servizio viene resto disponibile dagli script ant, script shell, programmi Java
e da qualsiasi altro adattatore client installato nell'ambiente dell'utente, grazie all'architettura stratificata e alla
natura del bus.
Il componente client di automazione fornisce un insieme
standard di interfacce di servizi che verranno utilizzate dagli adattatori client e forniranno
la strategia di avvio di Eclipse appropriata all'ambiente. Attualmente sono disponibili due
strategie di avvio e di esecuzione, una per i servizi in-process e l'altra per i servizi
out-of-process (la strategia out-of-process è la tipica strategia utilizzata dai client esterni
a una particolare istanza di Eclipse). La strategia
in-process viene utilizzata in situazioni in cui è preferibile eseguire il servizio nella stessa istanza
Eclipse in cui si trova il chiamante.
Il componente lightweight interagisce con il componente heavyweight
(heavyweight perché ha maggiore dipendenza da Eclipse e quindi più dipendenze da librerie
da cui viene astratto il componente client di automazione esterno). Il componente lightweight si associa solo ad una determinata
istanza Eclipse attraverso un identificativo di stringa impostabile nell'istanza del componente client di
automazione. Il server di automazione che si trova nell'istanza Eclipse
(noto anche come l'heavyweight nel componente o broker)
riceve la comunicazione in entrata dal componente client di automazione lightweight
e dirige la chiamata al fornitore di servizi appropriato (noto anche come servizio automatizzabile).
Il server di automazione definisce alcuni punti di estensione semplici che consentono riferimenti indiretti
tra il servizio richiesto e la classe Java utilizzata dalla richiesta.
Attività correlate
Avvio delle verifiche da
script e applicazioni
Esecuzione del servizio di verifica
Riferimenti correlati
Proprietà del servizio di esecuzione verifica supportate
(C) Copyright IBM Corporation 2000, 2006. Tutti i diritti riservati.