DSCResources/MSFT_xSPDistributedCacheService/MSFT_xSPDistributedCacheService.schema.mof

/*
**Description**
 
This resource is responsible for provisioning the distributed cache to the service it runs on.
This is required in your farm on at least one server (as the behavior of [xSPCreateFarm](xSPCreateFarm) and [xSPJoinFarm](xSPJoinFarm) is to not enroll every server as a cache server).
The service will be provisioned or de-provisioned based on the Ensure property, and when provisioned the CacheSizeInMB property and ServiceAccount property will be used to configure it.
The property createFirewallRules is used to determine if exceptions should be added to the windows firewall to allow communication between servers on the appropriate ports.
 
**Example**
 
    xSPDistributedCacheService EnableDistributedCache
    {
        Name = "AppFabricCachingService"
        Ensure = "Present"
        CacheSizeInMB = 8192
        ServiceAccount = "DEMO\ServiceAccount"
        InstallAccount = $InstallAccount
        CreateFirewallRules = $true
    }
*/
[ClassVersion("1.0.0.0"), FriendlyName("xSPDistributedCacheService")]
class MSFT_xSPDistributedCacheService : OMI_BaseResource
{
    [Key] String Name;
    [Required, ValueMap{"Present","Absent"}, Values{"Present","Absent"}] string Ensure;
    [Required] UInt32 CacheSizeInMB;
    [Required] String ServiceAccount;
    [Write, EmbeddedInstance("MSFT_Credential")] String InstallAccount;
    [Required] Boolean CreateFirewallRules;
};