AbstractPreferences.Node(String) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Implementa il node metodo in base alla specifica in Preferences#node(String).
[Android.Runtime.Register("node", "(Ljava/lang/String;)Ljava/util/prefs/Preferences;", "GetNode_Ljava_lang_String_Handler")]
public override Java.Util.Prefs.Preferences? Node(string? path);
[<Android.Runtime.Register("node", "(Ljava/lang/String;)Ljava/util/prefs/Preferences;", "GetNode_Ljava_lang_String_Handler")>]
override this.Node : string -> Java.Util.Prefs.Preferences
Parametri
- path
- String
nome del percorso del nodo preferenza da restituire.
Valori restituiti
nodo preferenza specificato.
- Attributi
Commenti
Implementa il node metodo in base alla specifica in Preferences#node(String).
Questa implementazione ottiene il blocco del nodo preferenza e verifica che il nodo non sia stato rimosso. Se path è "", viene restituito questo nodo; se path è "/", viene restituita la radice del nodo. Se il primo carattere in path non '/'è , l'implementazione suddivide path i token e attraversa in modo ricorsivo il percorso da questo nodo al nodo denominato, "utilizzando" un nome e una barra da path ogni passaggio dell'attraversamento. In ogni passaggio, il nodo corrente è bloccato e la cache figlio del nodo viene verificata per il nodo denominato. Se non viene trovato, il nome viene controllato per assicurarsi che la lunghezza non superi MAX_NAME_LENGTH. Viene quindi richiamato il #childSpi(String) metodo e il risultato archiviato nella cache figlio di questo nodo. Se il campo dell'oggetto appena creato Preferences è #newNode e sono presenti listener di modifiche del true nodo, viene accodato un evento di notifica per l'elaborazione da parte del thread di invio dell'evento.
Quando non sono presenti più token, l'ultimo valore trovato nella cache figlio o restituito da childSpi viene restituito da questo metodo. Se durante l'attraversamento, due "/" token si verificano consecutivamente o il token finale è "/" (anziché un nome), viene generata un'eccezione appropriata IllegalArgumentException .
Se il primo carattere di è path (che indica un nome di percorso assoluto) il blocco del nodo preferenza viene eliminato prima di '/' suddividere path i token e questo metodo attraversa in modo ricorsivo il percorso a partire dalla radice (anziché a partire da questo nodo). L'attraversamento è altrimenti identico a quello descritto per i nomi di percorso relativi. Eliminare il blocco in questo nodo prima di modificare l'attraversamento nel nodo radice è essenziale per evitare la possibilità di deadlock, in base a #lock locking invariant.
per java.util.prefs.AbstractPreferences.node(java.lang.String).
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.