Langue

AbstractPreferences.Node(String) Méthode

Définition

Implémente la node méthode conformément à la spécification dans 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

Paramètres

path
String

nom du chemin d’accès du nœud de préférence à retourner.

Retours

nœud de préférence spécifié.

Attributs

Remarques

Implémente la node méthode conformément à la spécification dans Preferences#node(String).

Cette implémentation obtient le verrou de ce nœud de préférence et vérifie que le nœud n’a pas été supprimé. Si path c’est ""le cas, ce nœud est retourné ; si path c’est "/"le cas, la racine de ce nœud est retournée. Si le premier caractère n’est path pas '/', l’implémentation se décompose path en jetons et traverse de manière récursive le chemin d’accès de ce nœud vers le nœud nommé, « consommant » un nom et une barre oblique à partir de path chaque étape du parcours. À chaque étape, le nœud actuel est verrouillé et le cache enfant du nœud est vérifié pour le nœud nommé. S’il est introuvable, le nom est vérifié pour s’assurer que sa longueur ne dépasse MAX_NAME_LENGTHpas . Ensuite, la #childSpi(String) méthode est appelée et le résultat stocké dans le cache enfant de ce nœud. Si le champ de l’objet nouvellement créé Preferences est #newNode et qu’il existe des écouteurs de modification de true nœud, un événement de notification est mis en file d’attente pour le traitement par le thread de distribution d’événements.

Lorsqu’il n’y a plus de jetons, la dernière valeur trouvée dans le cache enfant ou retournée par childSpi est retournée par cette méthode. Si, pendant la traversée, deux "/" jetons se produisent consécutivement ou si le jeton final est "/" (plutôt qu’un nom), un jeton approprié IllegalArgumentException est levée.

Si le premier caractère de path ce nœud est '/' (indiquant un nom de chemin d’accès absolu) le verrou de ce nœud de préférence est supprimé avant de se path décomposer en jetons, et cette méthode traverse de manière récursive le chemin à partir de la racine (au lieu de commencer à partir de ce nœud). Le parcours est sinon identique à celui décrit pour les noms de chemin d’accès relatifs. La suppression du verrou sur ce nœud avant de commencer la traversée au niveau du nœud racine est essentielle pour éviter la possibilité d’interblocage, conformément à la #lock locking invariant.

Java documentation pour java.util.prefs.AbstractPreferences.node(java.lang.String).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à