AbstractPreferences Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Cette classe fournit une implémentation squelette de la Preferences classe, ce qui facilite considérablement la tâche de l’implémenter.
[Android.Runtime.Register("java/util/prefs/AbstractPreferences", DoNotGenerateAcw=true)]
public abstract class AbstractPreferences : Java.Util.Prefs.Preferences
[<Android.Runtime.Register("java/util/prefs/AbstractPreferences", DoNotGenerateAcw=true)>]
type AbstractPreferences = class
inherit Preferences
- Héritage
- Attributs
Remarques
Cette classe fournit une implémentation squelette de la Preferences classe, ce qui facilite considérablement la tâche de l’implémenter.
<strong>This class is for Preferences implementers only. Les utilisateurs normaux de l’installation Preferences n’ont pas besoin de consulter cette documentation. La Preferences documentation doit suffire.</strong>
Les implémenteurs doivent remplacer les neuf méthodes d’interface de fournisseur de services abstraites (SPI) : #getSpi(String), , #putSpi(String,String), #removeSpi(String), #childSpi(String), #removeNodeSpi(), #keysSpi(), #childrenNamesSpi()#syncSpi() et #flushSpi(). Toutes les méthodes concrètes spécifient précisément comment elles sont implémentées sur ces méthodes SPI. L’implémenteur peut, à sa discrétion, remplacer une ou plusieurs des méthodes concrètes si l’implémentation par défaut n’est pas satisfaisante pour une raison quelconque, comme les performances.
Les méthodes SPI appartiennent à trois groupes concernant le comportement des exceptions. La getSpi méthode ne doit jamais lever d’exceptions, mais elle n’a pas vraiment d’importance, car toute exception levée par cette méthode sera interceptée par #get(String,String), ce qui retourne la valeur par défaut spécifiée à l’appelant. Les removeNodeSpi, keysSpi, childrenNamesSpi, syncSpi méthodes et flushSpi les méthodes sont spécifiées pour lever, et l’implémentation est requise pour lever BackingStoreExceptioncette exception vérifiée si elle n’est pas en mesure d’effectuer l’opération. L’exception se propage vers l’extérieur, ce qui provoque l’échec de la méthode API correspondante.
Les méthodes #putSpi(String,String)SPI restantes et #removeSpi(String)#childSpi(String) ont un comportement d’exception plus compliqué. Ils ne sont pas spécifiés pour lever BackingStoreException, car ils peuvent généralement obéir à leurs contrats même si le magasin de stockage n’est pas disponible. Cela est vrai parce qu’ils ne retournent aucune information et leurs effets ne sont pas nécessaires pour devenir permanents tant qu’un appel ultérieur à Preferences#flush() ou Preferences#sync(). En règle générale, ces méthodes SPI ne doivent pas lever d’exceptions. Dans certaines implémentations, il peut y avoir des circonstances dans lesquelles ces appels ne peuvent même pas mettre en file d’attente l’opération demandée pour un traitement ultérieur. Même dans ces circonstances, il est généralement préférable d’ignorer simplement l’appel et le retour, plutôt que de lever une exception. Toutefois, dans ces circonstances, tous les appels ultérieurs et flush()sync devraient retourner false, car le retour true impliquerait que toutes les opérations précédentes avaient été rendues permanentes.
Il existe une circonstance dans laquelle putSpi, removeSpi and childSpiil doit lever une exception : si l’appelant ne dispose pas de privilèges suffisants sur le système d’exploitation sous-jacent pour effectuer l’opération demandée. Cela se produit, par exemple, sur la plupart des systèmes si un utilisateur non privilégié tente de modifier les préférences système. (Les privilèges requis varient de l’implémentation à l’implémentation. Dans certaines implémentations, ils sont le droit de modifier le contenu d’un répertoire dans le système de fichiers ; sur d’autres, ils sont le droit de modifier le contenu d’une clé dans un registre.) Dans l’une de ces circonstances, il serait généralement indésirable de laisser le programme continuer à s’exécuter comme si ces opérations deviennent permanentes à un moment ultérieur. Bien que les implémentations ne soient pas tenues de lever une exception dans ces circonstances, elles sont encouragées à le faire. Un SecurityException serait approprié.
La plupart des méthodes SPI nécessitent l’implémentation pour lire ou écrire des informations sur un nœud de préférences. L’implémenteur doit se méfier du fait qu’une autre machine virtuelle a peut-être supprimé simultanément ce nœud du magasin de stockage. Il incombe à l’implémentation de recréer le nœud s’il a été supprimé.
Remarque d’implémentation : Dans les implémentations par défaut Preferences de Sun, l’identité de l’utilisateur est héritée du système d’exploitation sous-jacent et ne change pas pour la durée de vie de la machine virtuelle. Il est reconnu que les implémentations côté Preferences serveur peuvent avoir le changement d’identité de l’utilisateur de la demande à la demande, transmise implicitement aux Preferences méthodes via l’utilisation d’une instance statique ThreadLocal . Les auteurs de ces implémentations sont fortement encouragés à déterminer l’utilisateur au moment où les préférences sont accessibles (par exemple par l’utilisateur #get(String,String) ou #put(String,String) la méthode) au lieu d’associer définitivement un utilisateur à chaque Preferences instance. Ce dernier comportement est en conflit avec l’utilisation normale Preferences et entraînerait une grande confusion.
Ajouté dans la version 1.4.
Java documentation pour java.util.prefs.AbstractPreferences.
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.
Constructeurs
| Nom | Description |
|---|---|
| AbstractPreferences(AbstractPreferences, String) |
Crée un nœud de préférence avec le parent spécifié et le nom spécifié par rapport à son parent. |
| AbstractPreferences(IntPtr, JniHandleOwnership) |
Constructeur utilisé lors de la création de représentations managées d’objets JNI ; appelée par le runtime. |
Champs
| Nom | Description |
|---|---|
| MaxKeyLength |
Longueur maximale de chaîne autorisée en tant que clé (80 caractères). (Hérité de Preferences) |
| MaxNameLength |
Longueur maximale d’un nom de nœud (80 caractères). (Hérité de Preferences) |
| MaxValueLength |
Longueur maximale de chaîne autorisée en tant que valeur (8192 caractères). (Hérité de Preferences) |
Propriétés
| Nom | Description |
|---|---|
| Class |
Retourne la classe runtime de ce |
| Handle |
Handle de l’instance Android sous-jacente. (Hérité de Object) |
| IsRemoved |
Retourne |
| IsUserNode |
Implémente la |
| JniIdentityHashCode |
Obtient le code de hachage d’identité affecté à cet homologue Java par le runtime d’interopérabilité. (Hérité de Object) |
| JniManagedPeerState |
Cette classe fournit une implémentation squelette de la |
| JniPeerMembers |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| Lock |
Objet dont le moniteur est utilisé pour verrouiller ce nœud. |
| NewNode |
Ce champ doit être |
| PeerReference |
Obtient la référence d’objet JNI pour cet homologue Java. (Hérité de Object) |
| ThresholdClass |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
| ThresholdType |
Cette API prend en charge l’infrastructure Mono pour Android et n’est pas destinée à être utilisée directement à partir de votre code. |
Méthodes
| Nom | Description |
|---|---|
| AbsolutePath() |
Implémente la |
| AddNodeChangeListener(INodeChangeListener) |
Inscrit une |
| AddPreferenceChangeListener(IPreferenceChangeListener) |
Inscrit une |
| CachedChildren() |
Retourne tous les enfants non annulés connus de ce nœud. |
| ChildrenNames() |
Implémente la |
| ChildrenNamesSpi() |
Retourne les noms des enfants de ce nœud de préférence. |
| ChildSpi(String) |
Retourne l’enfant nommé de ce nœud de préférence, en le créant s’il n’existe pas déjà. |
| Clear() |
Implémente la |
| Clone() |
Crée et retourne une copie de cet objet. (Hérité de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Cette classe fournit une implémentation squelette de la |
| Dispose() |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| Dispose(Boolean) |
Libère les ressources détenues par cet homologue Java. (Hérité de Object) |
| DisposeUnlessReferenced() |
Cette classe fournit une implémentation squelette de la |
| Equals(Object) |
Cette classe fournit une implémentation squelette de la |
| Equals(Object) |
Indique si un autre objet est « égal à » celui-ci. (Hérité de Object) |
| ExportNode(Stream) |
Implémente la |
| ExportNodeAsync(Stream) |
Émet de façon asynchrone un document XML représentant toutes les préférences contenues dans ce nœud, mais pas ses descendants. (Hérité de Preferences) |
| ExportSubtree(Stream) |
Implémente la |
| ExportSubtreeAsync(Stream) |
Émet de façon asynchrone un document XML représentant toutes les préférences contenues dans ce nœud et tous ses descendants. (Hérité de Preferences) |
| Flush() |
Implémente la |
| FlushAsync() |
Force de façon asynchrone les modifications apportées à ce nœud de préférence et à ses descendants au magasin persistant. (Hérité de Preferences) |
| FlushSpi() |
Cette méthode est appelée avec ce nœud verrouillé. |
| Get(String, String) |
Implémente la |
| GetBoolean(String, Boolean) |
Implémente la |
| GetByteArray(String, Byte[]) |
Implémente la |
| GetChild(String) |
Retourne l’enfant nommé s’il existe ou |
| GetDouble(String, Double) |
Implémente la |
| GetFloat(String, Single) |
Implémente la |
| GetHashCode() |
Retourne une valeur de code de hachage pour l’objet. (Hérité de Object) |
| GetInt(String, Int32) |
Implémente la |
| GetLong(String, Int64) |
Implémente la |
| GetSpi(String) |
Retournez la valeur associée à la clé spécifiée à ce nœud de préférence, ou |
| JavaFinalize() |
Appelé par le garbage collector sur un objet lorsque le garbage collection détermine qu’il n’y a plus de références à l’objet. (Hérité de Object) |
| Keys() |
Implémente la |
| KeysSpi() |
Retourne toutes les clés qui ont une valeur associée dans ce nœud de préférence. |
| Name() |
Implémente la |
| Node(String) |
Implémente la |
| NodeExists(String) |
Implémente la |
| Notify() |
Réveille un thread unique qui attend le moniteur de cet objet. (Hérité de Object) |
| NotifyAll() |
Réveille tous les threads qui attendent le moniteur de cet objet. (Hérité de Object) |
| Parent() |
Implémente la |
| Put(String, String) |
Implémente la |
| PutBoolean(String, Boolean) |
Implémente la |
| PutByteArray(String, Byte[]) |
Implémente la |
| PutDouble(String, Double) |
Implémente la |
| PutFloat(String, Single) |
Implémente la |
| PutInt(String, Int32) |
Implémente la |
| PutLong(String, Int64) |
Implémente la |
| PutSpi(String, String) |
Placez l’association clé-valeur donnée dans ce nœud de préférence. |
| Remove(String) |
Implémente la |
| RemoveNode() |
Implémente la |
| RemoveNodeChangeListener(INodeChangeListener) |
Supprime l’instance donnée |
| RemoveNodeSpi() |
Supprime ce nœud de préférence, l’invalidant et les préférences qu’il contient. |
| RemovePreferenceChangeListener(IPreferenceChangeListener) |
Supprime l’instance donnée |
| RemoveSpi(String) |
Supprimez l’association (le cas échéant) pour la clé spécifiée à ce nœud de préférence. |
| SetHandle(IntPtr, JniHandleOwnership) |
Définit la propriété Handle. (Hérité de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Cette classe fournit une implémentation squelette de la |
| Sync() |
Implémente la |
| SyncAsync() |
Synchronise de façon asynchrone ce nœud de préférence et ses descendants avec le magasin persistant. (Hérité de Preferences) |
| SyncSpi() |
Cette méthode est appelée avec ce nœud verrouillé. |
| ToArray<T>() |
Crée un tableau managé à partir de ce wrapper de tableau Java. (Hérité de Object) |
| ToString() |
Retourne une représentation sous forme de chaîne de ce nœud de préférences. |
| UnregisterFromRuntime() |
Annule l’inscription de cet homologue Java à partir du runtime d’interopérabilité. (Hérité de Object) |
| Wait() |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti par em ou><em>interrompu</em>.<> (Hérité de Object) |
| Wait(Int64, Int32) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
| Wait(Int64) |
Provoque l’attente du thread actuel jusqu’à ce qu’il soit réveillé, généralement en étant <averti> par< em>ou <em>interrompu/em<,> ou jusqu’à ce qu’une certaine quantité de temps réel s’est écoulée. (Hérité de Object) |
Implémentations d’interfaces explicites
| Nom | Description |
|---|---|
| IJavaPeerable.Disposed() |
Cette classe fournit une implémentation squelette de la |
| IJavaPeerable.Finalized() |
Cette classe fournit une implémentation squelette de la |
| IJavaPeerable.JniObjectReferenceControlBlock |
Cette classe fournit une implémentation squelette de la |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Cette classe fournit une implémentation squelette de la |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Cette classe fournit une implémentation squelette de la |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Cette classe fournit une implémentation squelette de la |
Méthodes d’extension
| Nom | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtient le nom JNI du type de l’instance |
| JavaAs<TResult>(IJavaPeerable) |
Essayez de forcer |
| JavaCast<TResult>(IJavaObject) |
Effectue une conversion de type vérifiée par le runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Cette classe fournit une implémentation squelette de la |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Essayez de forcer |