Percorso logico dei componenti

Il percorso logico viene usato per organizzare i componenti gestiti da un writer in gruppi ben definiti.

Il percorso logico è analogo alla struttura del percorso file tradizionale, usando la barra rovesciata "\" per separare gli elementi nel percorso. A differenza dei percorsi di file, la radice di un percorso logico è NULL, anziché "\".

Il percorso logico viene espresso come stringa con terminazione NULL e non sono presenti altre restrizioni sui caratteri che il percorso può contenere.

L'uso più importante del percorso logico consiste nella definizione di set di componenti, in cui l'inclusione esplicita del componente in un'operazione di backup o ripristino di un componente selezionabile richiede l'inclusione di un numero di altri componenti (sottocomponente). Il percorso logico del componente di definizione di un set di componenti è un elemento padre dei percorsi logici dei relativi sottocomponenti e:

  • I sottocomponenti devono condividere come percorso radice il percorso logico del componente selezionabile che definisce il set di componenti.
  • Un percorso radice di NULL è valido.
  • Il nome del componente selezionabile definito deve essere il primo elemento del percorso logico dopo il percorso radice per ogni sottocomponente non selezionabile del set di componenti.
  • I set di componenti possono essere annidati.
  • La combinazione di percorso logico e nome componente deve essere univoca in tutte le istanze di una classe writer.

L'esempio ipotetico di un writer MyWriter con una struttura di percorso logico definita di seguito illustra il percorso logico.

Nome componente Percorso logico Selezionabile per il backup
"Eseguibili" "" N
"ConfigFiles" "Eseguibili" N
"LicenseInfo" "" S
"Security" "" S
"UserInfo" "Security" N
"Certificati" "Security" N
"writerData" "" S
"Set1" "writerData" N
"Jan" "writerData\Set1" N
"Dec" "writerData\Set1" N
"Set2" "writerData" N
"Jan" "writerData\Set2" N
"Dec" "writerData\Set2" N
"Query" "writerData\QueryLogs" N
"Utilizzo" "writerData" S
"Jan" "writerData\Usage" N
"Dec" "writerData\Usage" N

 

Si noti che i componenti "Eseguibili" e "ConfigFile" hanno una relazione padre-figlio, ma entrambi non sono deselezionabili. Pertanto, non formano un set di componenti. Ogni volta che il writer MyWriter viene eseguito il backup o il ripristino, questi due componenti devono essere inclusi in modo esplicito nell'operazione.

Il componente "LicenseInfo" è selezionabile senza predecessori né discendenti. Può essere incluso in modo esplicito o meno in un'operazione di backup o ripristino a discrezione del richiedente.

Il componente "Security" definisce un semplice set di componenti, contenente nessun set di componenti sotto di esso.

Il componente "writerData" definisce un set di componenti che contiene una raccolta complessa di componenti con diverse gerarchie di percorsi logici ben definite sotto di esso.

Un sottocomponente, "Utilizzo", è selezionabile e definisce un set di componenti.

Diversi componenti hanno lo stesso nome e sono distinti in base ai percorsi logici. Le istanze dei componenti non selezionabili "Dec" e "Jan" esistono nei componenti non selezionabili "Set1" e "Set2" e nel sottocomponente selezionabile "Utilizzo".

Se il componente "writerData" è incluso in modo esplicito in un backup o un ripristino, tutti i relativi sottocomponenti, anche quelli nel set di componenti annidati definiti da "Utilizzo" verranno inclusi implicitamente in modo implicito nell'operazione.

Se il set di componenti definito da "writerData" non è incluso in modo esplicito in un backup o un ripristino, i componenti "Set1", "Set2" e "QueryLogs" (e le relative istanze di sottocomponenti "Dec" e "Jan") non verranno inclusi in modo implicito nell'operazione di backup o ripristino.

Tuttavia, anche se "writerData" non è incluso nell'operazione, il componente "Utilizzo" è ancora selezionabile e può comunque essere incluso in modo esplicito in un'operazione di backup o ripristino. Se è, i relativi sottocomponenti "Jan" e "Dec" verranno inclusi in modo implicito.

Altri punti degni di nota:

  • I componenti selezionabili "LicenseInfo" e "writerData" e il componente non selezionabile "Eseguibili" sono tutti allo stesso livello nella gerarchia del percorso logico di MyWriter: tutti hanno lo stesso percorso logico di NULL o "", il percorso logico radice.
  • Il componente selezionabile "Utilizzo" non deve mai essere incluso in modo esplicito in un backup, se il relativo padre selezionabile ("writerData") è incluso in modo esplicito in un'operazione di backup o ripristino.
  • I componenti che definiscono i set di componenti possono esistere semplicemente per motivi organizzativi. Ad esempio, il componente "writerData" o "Utilizzo" o entrambi possono essere vuoti; ovvero, non sono stati aggiunti set di file usando il metodo IVssCreateWriterMetadata::AddFilesToFileGroup, IVssCreateWriterMetadata::AddDatabaseFiles o IVssCreateWriterMetadata::AddDatabaseLogFiles . I componenti definiscono ancora un set di componenti.