L'entità subordinata definisce un componente subordinato nell'assemblato. Ogni entità subordinata può avere un numero qualsiasi di attributi, ciascuno dei quali corrisponde a una proprietà (incluse proprietà di volume) del componente su cui si sovrascrive il valore specificato. Inoltre, esistono, per ciascuna entità subordinata, i seguenti attributi predefiniti con un significato speciale e tutti hanno un nome che inizia con a "." per distinguerli da proprietà regolari:
|
.class |
Specifica il nome di classe del componente subordinato, il quale può essere o il nome di una classe istanziabile o il nome di un singleton. Questo attributo è obbligatorio e non può essere omesso. |
|
.start_order |
Definisce l'ordine di avvio di questa entità subordinata, rispetto alle altre entità subordinate nello stesso assemblato. Vengono avviate prima le entità subordinate con i numeri più bassi e quelle con un numero più alto non vengono avviate finché tutte le entità con numeri più bassi non sono state avviate correttamente. Entità subordinate con lo stesso numero start_order possono essere avviate in qualsiasi ordine e i relativi avvii potrebbero coincidere. L'ordine di avvio è locale per l'assemblato ed è possibile riutilizzare gli stessi numeri di ordine di avvio in assemblati differenti (l'ordine di avvio relativo alle entità subordinate in assemblati differenti dipende dai numeri di ordine di avvio assegnati a tali assemblati). Le entità subordinate con attributo .start_order vengono avviate prima di tutte le entità subordinate senza attributo. |
|
.failover |
Definisce un identificatore del gruppo di failover. I componenti con lo stesso ID del gruppo di failover nell'applicazione costituiscono un gruppo di componenti che fungono da backup l'uno per l'altro, perciò non devono mai essere pianificati nella stessa periferica fisica (perché, in caso di errore dell'hardware, alcuni di loro rimangano attivi). L'ID del gruppo di failover è globale per l'applicazione, ovvero i componenti con lo stesso ID del gruppo in assemblati differenti vengono considerati come elementi dello stesso gruppo. L'impostazione di questo attributo per la stringa vuota è consentita e viene considerata come se l'attributo non fosse impostato (cioè come se non fosse presente alcuna preferenza di pianificazione per il componente). |
|
.ignore |
Un attributo booleano. Se viene impostato su 1 (true), specifica che l'operazione dell'entità subordinata non è critica per l'assemblato e, qualora l'avvio dell'entità subordinata non riuscisse, l'applicazione dovrebbe essere normalmente avviata. Non è possibile reindirizzare questo attributo al limite dell'assemblato. |
|
.field_opt |
Tale attributo imposta il valore field-option per l'istanza dell'entità subordinata. A differenza degli altri attributi predefiniti di un componente (.migrateable, .boot_tout e così via) che possono essere sovrascritti specificando l'attributo dello stesso nome in un'entità subordinata di un assemblato, l'attributo .field_opt proprio del componente non viene sovrascritto, ma viene mantenuto come valore field-option della classe. Consultare la definizione di .field_opt nella sintassi del descrittore del componente e nella precedente spiegazione degli attributi dell'assemblato. |
|
.vlan |
È un numero intero nell'intervallo da 0 a 4095. È applicabile solamente a un componente subordinato e non può essere impostato per un'entità subordinata che costituisce un assemblato. L'attributo definisce il tag vlan per l'interfaccia esterna del componente, se esistente. Se il componente non ha un'interfaccia esterna, l'impostazione viene ignorata senza avviso. |
Tutti i nomi di attributo diversi da quelli predefiniti vengono considerati nomi delle proprietà del componente subordinato che devono essere impostati al valore specificato, inclusi gli attributi predefiniti del componente subordinato ( .boot_tout, .migrateable, .server, .standby ) e le proprietà specifiche del componente in esso definite dalle entità proprietà o volume (consultare la sintassi del descrittore del componente).
Un tipo speciale di valore viene definito indicando la connessione della proprietà al limite dell'assemblato: $.name, dove name è il nome di una delle entità proprietà o volume nell'assemblato. Se una proprietà deve essere impostata su un valore letterale che inizia con i caratteri $. è necessario racchiudere il valore tra virgolette per garantire che non venga interpretato come una connessione di proprietà. È possibile connettere più di una proprietà subordinata alla stessa proprietà del limite e tutte le proprietà di questo tipo derivano il valore predefinito dalla definizione di proprietà del limite, qualora non venga fornito in un assemblato esterno all'ambito. È possibile utilizzare anche il valore $.name per gli attributi predefiniti dell'entità subordinata, rendendoli proprietà regolari nel limite dell'assemblato.
L'entità subordinata in un assemblato accetta anche le entità secondarie delle risorse mem, CPU e bw (memoria, CPU e larghezza di banda), con gli stessi attributi definiti nella sezione Sintassi del descrittore del componente. Se applicate a un'entità subordinata che costituisce un componente semplice, sovrascrivono le impostazioni delle risorse di quel componente. La sovrascrittura deve rimanere entro i limiti dell'intervallo definito nel componente (ovvero, il nuovo intervallo non deve essere più grande del precedente e deve rientrarvi interamente). Se applicate a un'entità subordinata che costituisce un assemblato, le risorse specificate vengono distribuite in modo proporzionale secondo il peso relativo dei requisiti delle risorse in ciascuna delle entità subordinate di quell'assemblato. Se un'impostazione delle risorse per un assemblato subordinato fa sì che un componente riceva un'impostazione delle risorse al di fuori dell'intervallo di Min-Max per esso definito, il linker di ADL segnala un errore.
| Copyright © 2012 CA. Tutti i diritti riservati. |
|