]> insang Git - newton-cn_pos.git/blob
04aaf2b2844b8b426274830c2c0ebaaf07b62312
[newton-cn_pos.git] /
1 Import-Module "$PSScriptRoot\..\CompositeResourceHelper.psm1"
2
3 Configuration ServiceSet
4 {
5     [CmdletBinding(SupportsShouldProcess=$true)]
6     param(
7     [Parameter(Mandatory=$true)]
8     [ValidateNotNullOrEmpty()]
9     [System.String[]]
10     $Name,
11
12     [ValidateSet('Automatic','Manual','Disabled')]
13     [System.String]
14     $StartupType,
15
16     [ValidateSet('LocalSystem','LocalService','NetworkService')]
17     [System.String]
18     $BuiltInAccount,
19
20     [ValidateSet('Running','Stopped')]
21     [System.String]
22     $State,
23
24     [ValidateSet('Present','Absent')]
25     [System.String]
26     $Ensure,
27
28     [ValidateNotNull()]
29     [System.Management.Automation.PSCredential]
30     $Credential
31     )  
32     
33     $psboundParams = $PSBoundParameters
34     $optionalParameters = @("StartupType","BuiltInAccount","State","Ensure","Credential")
35     $keyParamName = "Name"
36     $resourceName = "Service"
37
38     #build common parameters for all Service resource nodes
39     [string] $commonParameters = BuildResourceCommonParameters -KeyParamName $keyParamName -OptionalParams $optionalParameters -PSBoundParams $psboundParams
40     
41     #build Service resource string
42     [string] $resourceString = BuildResourceString -KeyParam $Name -KeyParamName $keyParamName -CommonParams $commonParameters -ResourceName $resourceName
43
44     $configScript = [scriptblock]::Create($resourceString)
45     . $configScript
46 }