Beispiel #1
0
        /// <summary>
        /// <para>
        /// Set <see cref="CimSessionProxy"/> properties
        /// </para>
        /// </summary>
        /// <param name="proxy"></param>
        /// <param name="cmdlet"></param>
        private void SetSessionProxyProperties(
            ref CimSessionProxy proxy,
            CimBaseCommand cmdlet)
        {
            if (cmdlet is GetCimInstanceCommand)
            {
                GetCimInstanceCommand getCimInstance = cmdlet as GetCimInstanceCommand;
                proxy.KeyOnly          = getCimInstance.KeyOnly;
                proxy.Shallow          = getCimInstance.Shallow;
                proxy.OperationTimeout = getCimInstance.OperationTimeoutSec;
                if (getCimInstance.ResourceUri != null)
                {
                    proxy.ResourceUri = getCimInstance.ResourceUri;
                }
            }
            else if (cmdlet is RemoveCimInstanceCommand)
            {
                RemoveCimInstanceCommand removeCimInstance = cmdlet as RemoveCimInstanceCommand;
                proxy.OperationTimeout = removeCimInstance.OperationTimeoutSec;
                if (removeCimInstance.ResourceUri != null)
                {
                    proxy.ResourceUri = removeCimInstance.ResourceUri;
                }

                CimRemoveCimInstanceContext context = new CimRemoveCimInstanceContext(
                    ConstValue.GetNamespace(removeCimInstance.Namespace),
                    proxy);
                proxy.ContextObject = context;
            }
            else if (cmdlet is SetCimInstanceCommand)
            {
                SetCimInstanceCommand setCimInstance = cmdlet as SetCimInstanceCommand;
                proxy.OperationTimeout = setCimInstance.OperationTimeoutSec;
                if (setCimInstance.ResourceUri != null)
                {
                    proxy.ResourceUri = setCimInstance.ResourceUri;
                }

                CimSetCimInstanceContext context = new CimSetCimInstanceContext(
                    ConstValue.GetNamespace(setCimInstance.Namespace),
                    setCimInstance.Property,
                    proxy,
                    cmdlet.ParameterSetName,
                    setCimInstance.PassThru);
                proxy.ContextObject = context;
            }
        }
        internal void RemoveCimInstance(CimInstance cimInstance, XOperationContextBase context, CmdletOperationBase cmdlet)
        {
            DebugHelper.WriteLogEx();
            string str = cimInstance.ToString();

            if (cmdlet.ShouldProcess(str, "Remove-CimInstance"))
            {
                CimRemoveCimInstanceContext cimRemoveCimInstanceContext = context as CimRemoveCimInstanceContext;
                CimSessionProxy             cimSessionProxy             = base.CreateCimSessionProxy(cimRemoveCimInstanceContext.Proxy);
                cimSessionProxy.DeleteInstanceAsync(cimRemoveCimInstanceContext.Namespace, cimInstance);
                return;
            }
            else
            {
                return;
            }
        }
        /// <summary>
        /// <para>
        /// Remove <see cref="CimInstance"/> from namespace specified in cmdlet
        /// </para>
        /// </summary>
        /// <param name="cimInstance"></param>
        internal void RemoveCimInstance(CimInstance cimInstance, XOperationContextBase context, CmdletOperationBase cmdlet)
        {
            DebugHelper.WriteLogEx();

            string target = cimInstance.ToString();

            if (!cmdlet.ShouldProcess(target, action))
            {
                return;
            }

            CimRemoveCimInstanceContext removeContext = context as CimRemoveCimInstanceContext;

            Debug.Assert(removeContext != null, "CimRemoveCimInstance::RemoveCimInstance should has CimRemoveCimInstanceContext != NULL.");

            CimSessionProxy proxy = CreateCimSessionProxy(removeContext.Proxy);

            proxy.DeleteInstanceAsync(removeContext.Namespace, cimInstance);
        }
Beispiel #4
0
 /// <summary>
 /// <para>
 /// Set <see cref="CimSessionProxy"/> properties
 /// </para>
 /// </summary>
 /// <param name="proxy"></param>
 /// <param name="cmdlet"></param>
 private void SetSessionProxyProperties(
     ref CimSessionProxy proxy,
     CimBaseCommand cmdlet)
 {
     if (cmdlet is GetCimInstanceCommand)
     {
         GetCimInstanceCommand getCimInstance = cmdlet as GetCimInstanceCommand;
         proxy.KeyOnly = getCimInstance.KeyOnly;
         proxy.Shallow = getCimInstance.Shallow;
         proxy.OperationTimeout = getCimInstance.OperationTimeoutSec;
         if(getCimInstance.ResourceUri != null )
         {
             proxy.ResourceUri = getCimInstance.ResourceUri;
         }
     }
     else if (cmdlet is RemoveCimInstanceCommand)
     {
         RemoveCimInstanceCommand removeCimInstance = cmdlet as RemoveCimInstanceCommand;
         proxy.OperationTimeout = removeCimInstance.OperationTimeoutSec;
         if(removeCimInstance.ResourceUri != null )
         {
             proxy.ResourceUri = removeCimInstance.ResourceUri;                
         }
         CimRemoveCimInstanceContext context = new CimRemoveCimInstanceContext(
             ConstValue.GetNamespace(removeCimInstance.Namespace),
             proxy);
         proxy.ContextObject = context;
     }
     else if (cmdlet is SetCimInstanceCommand)
     {
         SetCimInstanceCommand setCimInstance = cmdlet as SetCimInstanceCommand;
         proxy.OperationTimeout = setCimInstance.OperationTimeoutSec;
         if(setCimInstance.ResourceUri != null )
         {
             proxy.ResourceUri = setCimInstance.ResourceUri;                
         }
         CimSetCimInstanceContext context = new CimSetCimInstanceContext(
             ConstValue.GetNamespace(setCimInstance.Namespace),
             setCimInstance.Property,
             proxy,
             cmdlet.ParameterSetName,
             setCimInstance.PassThru);
         proxy.ContextObject = context;
     }
 }