Share via


Types de fournisseur

Les fournisseurs définissent leurs fonctionnalités de base en modifiant la façon dont les applets de commande du fournisseur, fournies par PowerShell, effectuent leurs actions. Par exemple, les fournisseurs peuvent utiliser la fonctionnalité par défaut de l’applet de commande Get-Item , ou ils peuvent modifier le fonctionnement de cette applet de commande lors de l’extraction d’éléments du magasin de données. La fonctionnalité du fournisseur décrite dans ce document comprend des fonctionnalités définies en remplaçant les méthodes à partir de classes de base et d’interfaces spécifiques du fournisseur.

Notes

Pour les fonctionnalités du fournisseur prédéfinies par PowerShell, consultez fonctionnalités du fournisseur.

Fournisseurs compatibles avec le lecteur

Les fournisseurs compatibles avec le lecteur spécifient les lecteurs par défaut disponibles pour l’utilisateur et permettent à l’utilisateur d’ajouter ou de supprimer des lecteurs. Dans la plupart des cas, les fournisseurs sont des fournisseurs compatibles avec les lecteurs, car ils nécessitent un lecteur par défaut pour accéder à la Banque de données. Toutefois, lors de l’écriture de votre propre fournisseur, vous pouvez ou non souhaiter autoriser l’utilisateur à créer et à supprimer des lecteurs.

Pour créer un fournisseur compatible avec les lecteurs, votre classe de fournisseur doit dériver de la classe System. Management. Automation. Provider. DriveCmdletProvider ou d’une autre classe qui dérive de cette classe. La classe DriveCmdletProvider définit les méthodes suivantes pour l’implémentation des lecteurs par défaut du fournisseur et la prise en charge des applets de commande New-PSDrive et Remove-PSDrive . Dans la plupart des cas, pour prendre en charge une applet de commande de fournisseur, vous devez remplacer la méthode appelée par le moteur PowerShell pour appeler l’applet de commande, telle que la NewDrive méthode pour l' New-PSDrive applet de commande, et vous pouvez éventuellement remplacer une deuxième méthode, telle que NewDriveDynamicParameters , pour ajouter des paramètres dynamiques à l’applet de commande.

  • La méthode InitializeDefaultDrives définit les lecteurs par défaut qui sont disponibles pour l’utilisateur chaque fois que le fournisseur est utilisé.

  • Les méthodes les et NewDriveDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du New-PSDrive fournisseur. Cette applet de commande permet à l’utilisateur de créer des lecteurs pour accéder au magasin de données.

  • La méthode RemoveDrive définit la manière dont votre fournisseur prend en charge l’applet de commande du Remove-PSDrive fournisseur. Cette applet de commande permet à l’utilisateur de supprimer des lecteurs de la Banque de données.

Fournisseurs compatibles avec les éléments

Les fournisseurs compatibles avec les éléments permettent à l’utilisateur d’acquérir, de définir ou d’effacer les éléments dans le magasin de données. Un « élément » est un élément du magasin de données auquel l’utilisateur peut accéder ou gérer de manière indépendante. Pour créer un fournisseur compatible avec les éléments, votre classe de fournisseur doit dériver de la classe System. Management. Automation. Provider. ItemCmdletProvider ou d’une autre classe qui dérive de cette classe.

La classe ItemCmdletProvider définit les méthodes suivantes pour l’implémentation d’applets de commande de fournisseur spécifiques. Dans la plupart des cas, pour prendre en charge une applet de commande de fournisseur, vous devez remplacer la méthode appelée par le moteur PowerShell pour appeler l’applet de commande, telle que la ClearItem méthode pour l' Clear-Item applet de commande, et vous pouvez éventuellement remplacer une deuxième méthode, telle que ClearItemDynamicParameters , pour ajouter des paramètres dynamiques à l’applet de commande.

  • Les méthodes ClearItem et ClearItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Clear-Item fournisseur. Cette applet de commande permet à l’utilisateur de supprimer la valeur d’un élément dans le magasin de données.

  • Les méthodes GetItem et GetItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Get-Item fournisseur. Cette applet de commande permet à l’utilisateur de récupérer des données à partir du magasin de données.

  • Les méthodes SetItem et SetItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Set-Item fournisseur. Cette applet de commande permet à l’utilisateur de mettre à jour les valeurs des éléments dans le magasin de données.

  • Les méthodes InvokeDefaultAction et InvokeDefaultActionDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Invoke-Item fournisseur. Cette applet de commande permet à l’utilisateur d’exécuter l’action par défaut spécifiée par l’élément.

  • Les méthodes ItemExists et ItemExistsDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Test-Path fournisseur. Cette applet de commande permet à l’utilisateur de déterminer si tous les éléments d’un chemin d’accès existent.

Outre les méthodes utilisées pour implémenter les applets de commande du fournisseur, la classe ItemCmdletProvider définit également les méthodes suivantes :

  • La méthode ExpandPath permet à l’utilisateur d’utiliser des caractères génériques lors de la spécification du chemin d’accès du fournisseur.

  • Le IsValidPath est utilisé pour déterminer si un chemin d’accès est syntaxiquement et sémantiquement valide pour le fournisseur.

Fournisseurs compatibles avec les conteneurs

Les fournisseurs compatibles avec les conteneurs permettent à l’utilisateur de gérer les éléments qui sont des conteneurs. Un conteneur est un groupe d’éléments enfants qui descendent d’un même élément parent. Pour créer un fournisseur compatible avec les conteneurs, votre classe de fournisseur doit dériver de la classe System. Management. Automation. Provider. ContainerCmdletProvider ou d’une autre classe qui dérive de cette classe.

Important

Les fournisseurs compatibles avec les conteneurs ne peuvent pas accéder aux magasins de données qui contiennent des conteneurs imbriqués. Si un élément enfant d’un conteneur est un autre conteneur, vous devez implémenter un fournisseur qui prend en charge la navigation.

La classe ContainerCmdletProvider définit les méthodes suivantes pour l’implémentation d’applets de commande de fournisseur spécifiques. Dans la plupart des cas, pour prendre en charge une applet de commande de fournisseur, vous devez remplacer la méthode appelée par le moteur PowerShell pour appeler l’applet de commande, telle que la CopyItem méthode pour l' Copy-Item applet de commande, et vous pouvez éventuellement remplacer une deuxième méthode, telle que CopyItemDynamicParameters , pour ajouter des paramètres dynamiques à l’applet de commande.

  • Les méthodes CopyItem et CopyItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Copy-Item fournisseur. Cette applet de commande permet à l’utilisateur de copier un élément d’un emplacement vers un autre.

  • Les méthodes GetChildItems et GetChildItemsDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Get-ChildItem fournisseur. Cette applet de commande permet à l’utilisateur de récupérer les éléments enfants de l’élément parent.

  • Les méthodes GetChildNames et GetChildNamesDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande Get-ChildItem Provider si son Name paramètre est spécifié.

  • Les méthodes newItem et NewItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du New-Item fournisseur. Cette applet de commande permet à l’utilisateur de créer des éléments dans le magasin de données.

  • Les méthodes RemoveItem et RemoveItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Remove-Item fournisseur. Cette applet de commande permet à l’utilisateur de supprimer des éléments du magasin de données.

  • Les méthodes RenameItem et RenameItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Rename-Item fournisseur. Cette applet de commande permet à l’utilisateur de renommer des éléments dans le magasin de données.

Outre les méthodes utilisées pour implémenter les applets de commande du fournisseur, la classe ContainerCmdletProvider définit également les méthodes suivantes :

  • La méthode HasChildItems peut être utilisée par la classe de fournisseur pour déterminer si un élément a des éléments enfants.

  • La méthode ConvertPath peut être utilisée par la classe de fournisseur pour créer un chemin d’accès spécifique au fournisseur à partir d’un chemin d’accès spécifié.

Les fournisseurs activés pour la navigation permettent à l’utilisateur de déplacer des éléments dans le magasin de données. Pour créer un fournisseur compatible avec la navigation, votre classe de fournisseur doit dériver de la classe System. Management. Automation. Provider. NavigationCmdletProvider .

La classe NavigationCmdletProvider définit les méthodes suivantes pour l’implémentation d’applets de commande de fournisseur spécifiques. Dans la plupart des cas, pour prendre en charge une applet de commande de fournisseur, vous devez remplacer la méthode appelée par le moteur PowerShell pour appeler l’applet de commande, telle que la MoveItem méthode pour l' Move-Item applet de commande, et vous pouvez éventuellement remplacer une deuxième méthode, telle que MoveItemDynamicParameters , pour ajouter des paramètres dynamiques à l’applet de commande.

  • Les méthodes MoveItem et MoveItemDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Move-Item fournisseur. Cette applet de commande permet à l’utilisateur de déplacer un élément d’un emplacement dans le magasin vers un autre emplacement.

  • La méthode MakePath définit la manière dont votre fournisseur prend en charge l’applet de commande du Join-Path fournisseur. Cette applet de commande permet à l’utilisateur de combiner un segment de chemin d’accès parent et enfant pour créer un chemin d’accès interne au fournisseur.

Outre les méthodes utilisées pour implémenter les applets de commande du fournisseur, la classe NavigationCmdletProvider définit également les méthodes suivantes :

  • La méthode GetChildName extrait le nom du nœud enfant d’un chemin d’accès.

  • La méthode GetParentPath extrait la partie parente d’un chemin d’accès.

  • La méthode IsItemContainer détermine si l’élément est un élément conteneur. Dans ce contexte, un conteneur est un groupe d’éléments enfants sous un élément parent commun.

  • La méthode NormalizeRelativePath retourne un chemin d’accès à un élément relatif à un chemin d’accès de base spécifié.

Fournisseurs de contenu

Les fournisseurs de contenu permettent à l’utilisateur d’effacer, d’obtenir ou de définir le contenu des éléments d’un magasin de données. Par exemple, le fournisseur FileSystem vous permet d’effacer, d’obtenir et de définir le contenu des fichiers dans le système de fichiers. Pour créer un fournisseur de contenu activé, votre classe de fournisseur doit implémenter les méthodes de l’interface System. Management. Automation. Provider. IContentCmdletProvider .

L’interface IContentCmdletProvider définit les méthodes suivantes pour l’implémentation d’applets de commande de fournisseur spécifiques. Dans la plupart des cas, pour prendre en charge une applet de commande de fournisseur, vous devez remplacer la méthode appelée par le moteur PowerShell pour appeler l’applet de commande, telle que la ClearContent méthode pour l' Clear-Content applet de commande, et vous pouvez éventuellement remplacer une deuxième méthode, telle que ClearContentDynamicParameters , pour ajouter des paramètres dynamiques à l’applet de commande.

Fournisseurs activés pour les propriétés

Les fournisseurs activés pour les propriétés permettent à l’utilisateur de gérer les propriétés des éléments dans le magasin de données. Pour créer un fournisseur prenant en charge les propriétés, votre classe de fournisseur doit implémenter les méthodes des interfaces System. Management. Automation. Provider. IPropertyCmdletProvider et System. Management. Automation. Provider. IDynamicPropertyCmdletProvider . Dans la plupart des cas, pour prendre en charge une applet de commande de fournisseur, vous devez remplacer la méthode appelée par le moteur PowerShell pour appeler l’applet de commande, telle que la ClearProperty méthode pour l’applet de commande Clear-Property et, éventuellement, vous pouvez remplacer une deuxième méthode, telle que ClearPropertyDynamicParameters , pour ajouter des paramètres dynamiques à l’applet de commande.

L’interface IPropertyCmdletProvider définit les méthodes suivantes pour l’implémentation d’applets de commande de fournisseur spécifiques :

  • Les méthodes ClearProperty et ClearPropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Clear-ItemProperty fournisseur. Cette applet de commande permet à l’utilisateur de supprimer la valeur d’une propriété.

  • Les méthodes GetProperty et GetPropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Get-ItemProperty fournisseur. Cette applet de commande permet à l’utilisateur de récupérer la propriété d’un élément.

  • Les méthodes SetProperty et SetPropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Set-ItemProperty fournisseur. Cette applet de commande permet à l’utilisateur de mettre à jour les propriétés d’un élément.

L’interface IDynamicPropertyCmdletProvider définit les méthodes suivantes pour l’implémentation d’applets de commande de fournisseur spécifiques :

  • Les méthodes CopyProperty et CopyPropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Copy-ItemProperty fournisseur. Cette applet de commande permet à l’utilisateur de copier une propriété et sa valeur d’un emplacement vers un autre.

  • Les méthodes MoveProperty et MovePropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du Move-ItemProperty fournisseur. Cette applet de commande permet à l’utilisateur de déplacer une propriété et sa valeur d’un emplacement à un autre.

  • Les méthodes NewProperty et NewPropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande du New-ItemProperty fournisseur. Cette applet de commande permet à l’utilisateur de créer une nouvelle propriété et de définir sa valeur.

  • Les méthodes RemoveProperty et RemovePropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande Remove-ItemProperty . Cette applet de commande permet à l’utilisateur de supprimer une propriété et sa valeur.

  • Les méthodes RenameProperty et RenamePropertyDynamicParameters définissent la façon dont votre fournisseur prend en charge l’applet de commande Rename-ItemProperty . Cette applet de commande permet à l’utilisateur de modifier le nom d’une propriété.

Voir aussi

about_Providers

Écriture d’un fournisseur Windows PowerShell