Esempio n. 1
0
 private void NewItemCreateComputerConnection(string Name)
 {
     this.helper = new WSManHelper(this);
     WSManProviderNewItemComputerParameters dynamicParameters = base.DynamicParameters as WSManProviderNewItemComputerParameters;
     string parameterSetName = "ComputerName";
     if (dynamicParameters != null)
     {
         if (dynamicParameters.ConnectionURI != null)
         {
             parameterSetName = "URI";
         }
         this.helper.CreateWsManConnection(parameterSetName, dynamicParameters.ConnectionURI, dynamicParameters.Port, Name, dynamicParameters.ApplicationName, (bool) dynamicParameters.UseSSL, dynamicParameters.Authentication, dynamicParameters.SessionOption, base.Credential, dynamicParameters.CertificateThumbprint);
         if (dynamicParameters.ConnectionURI != null)
         {
             Name = dynamicParameters.ConnectionURI.OriginalString.Split(new string[] { string.Concat(new object[] { ":", dynamicParameters.Port, "/", dynamicParameters.ApplicationName }) }, StringSplitOptions.None)[0].Split(new string[] { "//" }, StringSplitOptions.None)[1].Trim();
         }
         base.WriteItemObject(this.GetItemPSObjectWithTypeName(Name, "Container", null, null, "ComputerLevel", WsManElementObjectTypes.WSManConfigContainerElement, null), "WSMan" + '\\' + Name, true);
     }
     else
     {
         dynamicParameters = new WSManProviderNewItemComputerParameters();
         this.helper.CreateWsManConnection(parameterSetName, dynamicParameters.ConnectionURI, dynamicParameters.Port, Name, dynamicParameters.ApplicationName, (bool) dynamicParameters.UseSSL, dynamicParameters.Authentication, dynamicParameters.SessionOption, base.Credential, dynamicParameters.CertificateThumbprint);
         base.WriteItemObject(this.GetItemPSObjectWithTypeName(Name, "Container", null, null, "ComputerLevel", WsManElementObjectTypes.WSManConfigContainerElement, null), "WSMan" + '\\' + Name, true);
     }
 }
Esempio n. 2
0
        /// <summary>
        /// this method creates the connection to new machine in wsman provider.
        /// This is called from New-Item.
        /// </summary>
        /// <param name="Name"></param>
        private void NewItemCreateComputerConnection(string Name)
        {
            helper = new WSManHelper(this);
            WSManProviderNewItemComputerParameters dynParams = DynamicParameters as WSManProviderNewItemComputerParameters;
            string parametersetName = "ComputerName";
            if (dynParams != null)
            {
                if (dynParams.ConnectionURI != null)
                {
                    parametersetName = "URI";

                }
                helper.CreateWsManConnection(parametersetName, dynParams.ConnectionURI, dynParams.Port, Name, dynParams.ApplicationName, dynParams.UseSSL, dynParams.Authentication, dynParams.SessionOption, this.Credential, dynParams.CertificateThumbprint);
                if (dynParams.ConnectionURI != null)
                {
                    string[] constrsplit = dynParams.ConnectionURI.OriginalString.Split(new string[] { ":" + dynParams.Port + "/" + dynParams.ApplicationName }, StringSplitOptions.None);
                    string[] constrsplit1 = constrsplit[0].Split(new string[] { "//" }, StringSplitOptions.None);
                    Name = constrsplit1[1].Trim();
                }
                WriteItemObject(GetItemPSObjectWithTypeName(Name, WSManStringLiterals.ContainerChildValue, null, null, "ComputerLevel", WsManElementObjectTypes.WSManConfigContainerElement), WSManStringLiterals.rootpath + WSManStringLiterals.DefaultPathSeparator + Name, true);
            }
            else
            {
                dynParams = new WSManProviderNewItemComputerParameters();
                helper.CreateWsManConnection(parametersetName, dynParams.ConnectionURI, dynParams.Port, Name, dynParams.ApplicationName, dynParams.UseSSL, dynParams.Authentication, dynParams.SessionOption, this.Credential, dynParams.CertificateThumbprint);
                WriteItemObject(GetItemPSObjectWithTypeName(Name, WSManStringLiterals.ContainerChildValue, null, null, "ComputerLevel", WsManElementObjectTypes.WSManConfigContainerElement), WSManStringLiterals.rootpath + WSManStringLiterals.DefaultPathSeparator + Name, true);
            }
        }