Typy zprostředkovatelů

Poskytovatelé definují své základní funkce změnou způsobu, jakým rutina poskytovatele poskytuje své akce. Například poskytovatelé můžou používat výchozí funkce Get-Item rutiny nebo můžou změnit způsob, jakým tato rutina funguje při načítání položek z úložiště dat. Funkce poskytovatele popsané v tomto dokumentu zahrnují funkce definované přepsáním metod ze základních tříd a rozhraní specifických zprostředkovatelů.

Poznámka

Informace o funkcích zprostředkovatele, které jsou předem definované pomocí prostředí PowerShell, najdete v tématu schopnosti poskytovatele.

Poskytovatelé s povolenými jednotkami

Poskytovatelé s povolenými jednotkami určují výchozí jednotky dostupné pro uživatele a umožňují uživateli přidávat nebo odebírat jednotky. Ve většině případů poskytovatelé jsou poskytovatelé s povolenými jednotkami, protože vyžadují pro přístup k úložišti dat některé výchozí jednotky. Při psaní vlastního zprostředkovatele ale můžete nebo nechcete, aby uživatel mohl vytvořit a odebrat jednotky.

Chcete-li vytvořit poskytovatele s povolenou jednotkou, třída poskytovatele musí být odvozena od třídy System. Management. Automation. Provider. DriveCmdletProvider nebo jiné třídy, která je odvozena z této třídy. Třída DriveCmdletProvider definuje následující metody pro implementaci výchozích jednotek zprostředkovatele a podporu New-PSDrive Remove-PSDrive rutin a. Ve většině případů pro podporu rutiny poskytovatele musíte přepsat metodu, kterou modul PowerShellu volá k vyvolání rutiny, jako je například NewDrive metoda pro New-PSDrive rutinu, a volitelně můžete přepsat druhou metodu, například NewDriveDynamicParameters , pro přidání dynamických parametrů do rutiny.

  • Metoda InitializeDefaultDrives definuje výchozí jednotky, které jsou k dispozici uživateli při každém použití poskytovatele.

  • Metody NewDrive a NewDriveDynamicParameters definují, jak poskytovatel podporuje New-PSDrive rutinu poskytovatele. Tato rutina umožňuje uživateli vytvořit jednotky pro přístup do úložiště dat.

  • Metoda RemoveDrive definuje, jak poskytovatel podporuje Remove-PSDrive rutinu poskytovatele. Tato rutina umožňuje uživateli odebrat jednotky z úložiště dat.

Poskytovatelé s povolenými položkami

Poskytovatelé s povolenými položkami umožňují uživateli získat, nastavit nebo vymazat položky v úložišti dat. "Položka" je prvkem úložiště dat, ke kterému může uživatel přistupovat nebo spravovat nezávisle. Chcete-li vytvořit poskytovatele s povolenými položkami, třída poskytovatele musí být odvozena od třídy System. Management. Automation. Provider. ItemCmdletProvider nebo jiné třídy, která je odvozena z této třídy.

Třída ItemCmdletProvider definuje následující metody pro implementaci specifických rutin zprostředkovatele. Ve většině případů pro podporu rutiny poskytovatele musíte přepsat metodu, kterou modul PowerShellu volá k vyvolání rutiny, jako je například ClearItem metoda pro Clear-Item rutinu, a volitelně můžete přepsat druhou metodu, například ClearItemDynamicParameters , pro přidání dynamických parametrů do rutiny.

  • Metody ClearItem a ClearItemDynamicParameters definují, jak poskytovatel podporuje Clear-Item rutinu poskytovatele. Tato rutina umožňuje uživateli odebrat hodnotu položky v úložišti dat.

  • Metody GetItem a GetItemDynamicParameters definují, jak poskytovatel podporuje Get-Item rutinu poskytovatele. Tato rutina umožňuje uživateli načíst data z úložiště dat.

  • Metody SetItem a SetItemDynamicParameters definují, jak poskytovatel podporuje Set-Item rutinu poskytovatele. Tato rutina umožňuje uživateli aktualizovat hodnoty položek v úložišti dat.

  • Metody InvokeDefaultAction a InvokeDefaultActionDynamicParameters definují, jak poskytovatel podporuje Invoke-Item rutinu poskytovatele. Tato rutina umožňuje uživateli provést výchozí akci určenou položkou.

  • Metody ItemExists a ItemExistsDynamicParameters definují, jak poskytovatel podporuje Test-Path rutinu poskytovatele. Tato rutina umožňuje uživateli určit, zda všechny prvky cesty existují.

Kromě metod používaných k implementaci rutin zprostředkovatelů definuje třída ItemCmdletProvider také následující metody:

  • Metoda ExpandPath umožňuje uživateli při zadávání cesty poskytovatele použít zástupné znaky.

  • IsValidPath se používá k určení, jestli je cesta syntakticky a sémanticky platná pro poskytovatele.

Poskytovatelé s podporou kontejneru

Poskytovatelé s povoleným kontejnerem umožňují uživateli spravovat položky, které jsou kontejnery. Kontejner je skupina podřízených položek v rámci společné nadřazené položky. Chcete-li vytvořit poskytovatele s povoleným kontejnerem, třída zprostředkovatele musí být odvozena od třídy System. Management. Automation. Provider. ContainerCmdletProvider nebo jiné třídy, která je odvozena z této třídy.

Důležité

Poskytovatelé s povoleným kontejnerem nemůžou přistupovat k úložištím dat, která obsahují vnořené kontejnery. Pokud je podřízenou položkou kontejneru jiný kontejner, je nutné implementovat poskytovatele s povoleným navigací.

Třída ContainerCmdletProvider definuje následující metody pro implementaci specifických rutin zprostředkovatele. Ve většině případů pro podporu rutiny poskytovatele musíte přepsat metodu, kterou modul PowerShellu volá k vyvolání rutiny, jako je například CopyItem metoda pro Copy-Item rutinu, a volitelně můžete přepsat druhou metodu, například CopyItemDynamicParameters , pro přidání dynamických parametrů do rutiny.

Kromě metod používaných k implementaci rutin zprostředkovatelů definuje třída ContainerCmdletProvider také následující metody:

  • Metoda HasChildItems může být použita třídou poskytovatele k určení, zda položka obsahuje podřízené položky.

  • Metoda ConvertPath může být použita třídou poskytovatele k vytvoření nové cesty specifické pro poskytovatele ze zadané cesty.

Poskytovatelé s povolenými navigacemi umožňují uživateli přesouvat položky v úložišti dat. Chcete-li vytvořit poskytovatele s povolenými navigacemi, třída poskytovatele musí být odvozena od třídy System. Management. Automation. Provider. NavigationCmdletProvider .

Třída NavigationCmdletProvider definuje následující metody pro implementaci specifických rutin zprostředkovatele. Ve většině případů pro podporu rutiny poskytovatele musíte přepsat metodu, kterou modul PowerShellu volá k vyvolání rutiny, jako je například MoveItem metoda pro Move-Item rutinu, a volitelně můžete přepsat druhou metodu, například MoveItemDynamicParameters , pro přidání dynamických parametrů do rutiny.

  • Metody MoveItem a MoveItemDynamicParameters definují, jak poskytovatel podporuje Move-Item rutinu poskytovatele. Tato rutina umožňuje uživateli přesunout položku z jednoho umístění v úložišti do jiného umístění.

  • Metoda MakePath definuje, jak poskytovatel podporuje Join-Path rutinu poskytovatele. Tato rutina umožňuje uživateli kombinovat nadřazený a podřízený segment cesty a vytvořit tak interní cestu k poskytovateli.

Kromě metod používaných k implementaci rutin zprostředkovatelů definuje třída NavigationCmdletProvider také následující metody:

  • Metoda GetChild extrahuje název podřízeného uzlu cesty.

  • Metoda GetParentPath extrahuje nadřazenou část cesty.

  • Metoda IsItemContainer určuje, zda je položka položkou kontejneru. V tomto kontextu kontejner je skupina podřízených položek v rámci společné nadřazené položky.

  • Metoda NormalizeRelativePath vrací cestu k položce, která je relativní vzhledem k zadané základní cestě.

Poskytovatelé s povoleným obsahem

Poskytovatelé s povoleným obsahem umožňují uživateli vymazat, získat nebo nastavit obsah položek v úložišti dat. Například poskytovatel systému souborů umožňuje vymazat, získat a nastavit obsah souborů v systému souborů. Chcete-li vytvořit poskytovatele s povoleným obsahem, třída poskytovatele musí implementovat metody rozhraní System. Management. Automation. Provider. IContentCmdletProvider .

Rozhraní IContentCmdletProvider definuje následující metody pro implementaci specifických rutin zprostředkovatele. Ve většině případů pro podporu rutiny poskytovatele musíte přepsat metodu, kterou modul PowerShellu volá k vyvolání rutiny, jako je například ClearContent metoda pro Clear-Content rutinu, a volitelně můžete přepsat druhou metodu, například ClearContentDynamicParameters , pro přidání dynamických parametrů do rutiny.

Poskytovatelé s povolenými vlastnostmi

Poskytovatelé s povolenými vlastnostmi umožňují uživateli spravovat vlastnosti položek v úložišti dat. Chcete-li vytvořit poskytovatele s povolenou vlastností, třída poskytovatele musí implementovat metody rozhraní System. Management. Automation. Provider. IPropertyCmdletProvider a System. Management. Automation. Provider. IDynamicPropertyCmdletProvider . Ve většině případů, aby bylo možné podporovat rutinu poskytovatele, musíte přepsat metodu, kterou modul PowerShellu volá k vyvolání rutiny, jako je například ClearProperty Metoda rutiny Clear-Property, a volitelně můžete přepsat druhou metodu, například ClearPropertyDynamicParameters , pro přidání dynamických parametrů do rutiny.

Rozhraní IPropertyCmdletProvider definuje následující metody pro implementaci specifických rutin zprostředkovatele:

Rozhraní IDynamicPropertyCmdletProvider definuje následující metody pro implementaci konkrétních rutin zprostředkovatele:

  • Metody CopyProperty a CopyPropertyDynamicParameters definují, jak zprostředkovatel podporuje Copy-ItemProperty rutinu zprostředkovatele. Tato rutina umožňuje uživateli zkopírovat vlastnost a její hodnotu z jednoho umístění do druhého.

  • Metody MoveProperty a MovePropertyDynamicParameters definují, jak zprostředkovatel podporuje Move-ItemProperty rutinu zprostředkovatele. Tato rutina umožňuje uživateli přesunout vlastnost a její hodnotu z jednoho umístění do jiného.

  • Metody NewProperty a NewPropertyDynamicParameters definují, jak váš zprostředkovatel podporuje New-ItemProperty rutinu zprostředkovatele. Tato rutina umožňuje uživateli vytvořit novou vlastnost a nastavit jeho hodnotu.

  • Metody RemoveProperty a RemovePropertyDynamicParameters definují, jak zprostředkovatel podporuje Remove-ItemProperty rutinu . Tato rutina umožňuje uživateli odstranit vlastnost a její hodnotu.

  • Metody RenameProperty a RenamePropertyDynamicParameters definují, jak zprostředkovatel podporuje Rename-ItemProperty rutinu . Tato rutina umožňuje uživateli změnit název vlastnosti.

Viz také

about_Providers

Vytvoření zprostředkovatele Windows PowerShellu