09.01.2015 Views

Prof. Guido Russo - Scope - Università degli Studi di Napoli Federico II

Prof. Guido Russo - Scope - Università degli Studi di Napoli Federico II

Prof. Guido Russo - Scope - Università degli Studi di Napoli Federico II

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

La descrizione testuale del grafo viene creata da una classe Java ,nei seguenti passi:<br />

• viene estratto l'elemento che contiene la <strong>di</strong>pendenza tra i <strong>di</strong>spositivi nel file<br />

dependencies.xml, che ha i due attributi source e target. Se rappresenta una<br />

<strong>di</strong>pendenza fisica, la ignora e passa al prossimo elemento.<br />

• Si va a leggere il tipo dei due <strong>di</strong>spositivi che compongono la <strong>di</strong>pendenza dal file<br />

<strong>di</strong> configurazione device.xml, a seconda del tipo il <strong>di</strong>spositivo viene<br />

rappresentato nel grafo con un colore <strong>di</strong>verso<br />

• Si controlla nel file <strong>di</strong> configurazione set.xml se uno dei due <strong>di</strong>spositivi o<br />

entrambi fanno parte <strong>di</strong> un insieme <strong>di</strong> <strong>di</strong>spositivi. In questo caso il <strong>di</strong>spositivo<br />

verrà sostituito dal suo insieme<br />

• Infine viene scritta la <strong>di</strong>pendenza nel file DOT e i due <strong>di</strong>spositivi ( o insiemi <strong>di</strong><br />

<strong>di</strong>spositivi) con i loro attributi (colore e URL)<br />

Per ottenere informazioni sui file <strong>di</strong> configurazione viene fatto il parsing dei<br />

documenti xml. Il parsing <strong>di</strong> documenti xml in Java, passa principalmente attraverso<br />

due famiglie <strong>di</strong> API: DOM e SAX[9]. Si è utilizzato l'approccio DOM che consiste nel<br />

caricare in memoria tutto l'albero del documento xml e su <strong>di</strong> esso potrà essere scelto<br />

un algoritmo <strong>di</strong> esplorazione. In questa struttura ogni elemento del documento xml<br />

<strong>di</strong>venta un nodo dell'albero rappresentato da una classe che implementa l'interfaccia<br />

org.w3c.dom.Node. Questa interfaccia fornisce meto<strong>di</strong> per esplorare o mo<strong>di</strong>ficare<br />

l'albero e per conoscere le proprietà <strong>di</strong> ogni nodo.<br />

6.6 Inserimento, mo<strong>di</strong>fica, eliminazione <strong>di</strong> un <strong>di</strong>spositivo<br />

La pagina <strong>di</strong> Configurazione, che permette impostare l'intero sistema, è stata per molti<br />

aspetti mo<strong>di</strong>ficata e migliorata.<br />

Si è introdotto un meccanismo che associa automaticamente il tipo del <strong>di</strong>spositivo<br />

introdotto con i plugin necessari per la sua gestione.<br />

Dopo<strong>di</strong>che sono stati inseriti dei controlli sui campi obbligatori e sull'in<strong>di</strong>rizzo IP che<br />

deve essere del tipo x.x.x.x con 0≤x≤255 .<br />

Infine si è curata la parte che riguarda la gestione delle <strong>di</strong>pendenze, permettendo <strong>di</strong><br />

visualizzare il grafo delle <strong>di</strong>pendenze considerando anche il nuovo <strong>di</strong>spositivo, e<br />

inserendo il controllo per non assegnare al <strong>di</strong>spositivo delle <strong>di</strong>pendenze che causano<br />

cicli all'interno del grafo. Nel seguito del paragrafo descriveremo in maniera più<br />

dettagliata queste funzionalità.<br />

Pietro Neroni 566/2833 Pagina 56 <strong>di</strong> 117

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!