internal void GetCimInstance(CimInstance cimInstance, XOperationContextBase context) { string @namespace; DebugHelper.WriteLogEx(); CimNewCimInstanceContext cimNewCimInstanceContext = context as CimNewCimInstanceContext; if (cimNewCimInstanceContext != null) { CimSessionProxy cimSessionProxy = base.CreateCimSessionProxy(cimNewCimInstanceContext.Proxy); if (cimInstance.CimSystemProperties.Namespace == null) { @namespace = cimNewCimInstanceContext.Namespace; } else { @namespace = cimInstance.CimSystemProperties.Namespace; } string str = @namespace; cimSessionProxy.GetInstanceAsync(str, cimInstance); return; } else { DebugHelper.WriteLog("Invalid (null) CimNewCimInstanceContext", 1); return; } }
public override void WriteObject(object sendToPipeline, XOperationContextBase context) { DebugHelper.WriteLogEx(); if (sendToPipeline as CimSession == null) { if (sendToPipeline as PSObject == null) { object[] objArray = new object[1]; objArray[0] = sendToPipeline; DebugHelper.WriteLog("Ignore other type object {0}", 1, objArray); return; } else { DebugHelper.WriteLog("Write PSObject to pipeline", 1); base.WriteObject(sendToPipeline, context); return; } } else { DebugHelper.WriteLog("Call CimNewSession::AddSessionToCache", 1); this.cimNewSession.AddSessionToCache(sendToPipeline as CimSession, context, this); return; } }
public override void WriteObject(object sendToPipeline, XOperationContextBase context) { DebugHelper.WriteLogEx(); if (sendToPipeline as CimInstance != null) { CimSetCimInstanceContext cimSetCimInstanceContext = context as CimSetCimInstanceContext; if (cimSetCimInstanceContext == null) { DebugHelper.WriteLog("Assert. CimSetCimInstance::SetCimInstance has NULL CimSetCimInstanceContext", 4); } else { if (string.Compare(cimSetCimInstanceContext.ParameterSetName, "QueryComputerSet", StringComparison.OrdinalIgnoreCase) == 0 || string.Compare(cimSetCimInstanceContext.ParameterSetName, "QuerySessionSet", StringComparison.OrdinalIgnoreCase) == 0) { this.setCimInstance.SetCimInstance(sendToPipeline as CimInstance, cimSetCimInstanceContext, this); return; } else { DebugHelper.WriteLog("Write the cimInstance to pipeline since this CimInstance is returned by SetCimInstance.", 4); } } } base.WriteObject(sendToPipeline, context); }
/// <summary> /// <para> /// Object here need to be removed if it is CimInstance /// </para> /// </summary> /// <param name="sendToPipeline"></param> public override void WriteObject(object sendToPipeline, XOperationContextBase context) { if (sendToPipeline is CimInstance) { DebugHelper.WriteLog(">>>>CmdletOperationRemoveCimInstance::WriteObject", 4); this.removeCimInstance.RemoveCimInstance(sendToPipeline as CimInstance, context, this); } else { base.WriteObject(sendToPipeline, context); } }
public override void WriteObject(object sendToPipeline, bool enumerateCollection, XOperationContextBase context) { if (sendToPipeline as CimInstance == null) { base.WriteObject(sendToPipeline, enumerateCollection, context); return; } else { this.WriteObject(sendToPipeline, context); return; } }
/// <summary> /// <para> /// Object here need to be removed if it is CimInstance /// </para> /// </summary> /// <param name="sendToPipeline"></param> public override void WriteObject(object sendToPipeline, XOperationContextBase context) { DebugHelper.WriteLogEx(); if (sendToPipeline is CimInstance) { this.cimInvokeCimMethod.InvokeCimMethodOnCimInstance(sendToPipeline as CimInstance, context, this); } else { base.WriteObject(sendToPipeline, context); } }
public override void WriteObject(object sendToPipeline, XOperationContextBase context) { if (sendToPipeline as CimInstance == null) { base.WriteObject(sendToPipeline, context); return; } else { DebugHelper.WriteLog(">>>>CmdletOperationRemoveCimInstance::WriteObject", 4); this.removeCimInstance.RemoveCimInstance(sendToPipeline as CimInstance, context, this); return; } }
public override void WriteObject(object sendToPipeline, XOperationContextBase context) { DebugHelper.WriteLogEx(); if (sendToPipeline as CimInstance == null) { base.WriteObject(sendToPipeline, context); return; } else { this.cimInvokeCimMethod.InvokeCimMethodOnCimInstance(sendToPipeline as CimInstance, context, this); return; } }
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> /// Get full <see cref="CimInstance"/> from server based on the key /// </para> /// </summary> /// <param name="cimInstance"></param> internal void GetCimInstance(CimInstance cimInstance, XOperationContextBase context) { DebugHelper.WriteLogEx(); CimNewCimInstanceContext newCimInstanceContext = context as CimNewCimInstanceContext; if (newCimInstanceContext == null) { DebugHelper.WriteLog("Invalid (null) CimNewCimInstanceContext", 1); return; } CimSessionProxy proxy = CreateCimSessionProxy(newCimInstanceContext.Proxy); string nameSpace = (cimInstance.CimSystemProperties.Namespace == null) ? newCimInstanceContext.Namespace : cimInstance.CimSystemProperties.Namespace; proxy.GetInstanceAsync(nameSpace, cimInstance); }
public void InvokeCimMethodOnCimInstance(CimInstance cimInstance, XOperationContextBase context, CmdletOperationBase operation) { DebugHelper.WriteLogEx(); CimInvokeCimMethod.CimInvokeCimMethodContext cimInvokeCimMethodContext = context as CimInvokeCimMethod.CimInvokeCimMethodContext; object[] methodName = new object[1]; methodName[0] = cimInvokeCimMethodContext.MethodName; string str = string.Format(CultureInfo.CurrentUICulture, "Invoke-CimMethod: {0}", methodName); if (operation.ShouldProcess(cimInstance.ToString(), str)) { CimSessionProxy cimSessionProxy = base.CreateCimSessionProxy(cimInvokeCimMethodContext.Proxy); cimSessionProxy.InvokeMethodAsync(cimInvokeCimMethodContext.Namespace, cimInstance, cimInvokeCimMethodContext.MethodName, cimInvokeCimMethodContext.ParametersCollection); 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); }
/// <summary> /// <para> /// Add session to global cache, /// </para> /// </summary> /// <param name="cimSession"></param> /// <param name="context"></param> /// <param name="cmdlet"></param> internal void AddSessionToCache(CimSession cimSession, XOperationContextBase context, CmdletOperationBase cmdlet) { DebugHelper.WriteLogEx(); CimTestCimSessionContext testCimSessionContext = context as CimTestCimSessionContext; uint sessionId = this.sessionState.GenerateSessionId(); string originalSessionName = testCimSessionContext.CimSessionWrapper.Name; string sessionName = (originalSessionName != null) ? originalSessionName : string.Format(CultureInfo.CurrentUICulture, @"{0}{1}", CimSessionState.CimSessionClassName, sessionId); // detach CimSession from the proxy object CimSession createdCimSession = testCimSessionContext.Proxy.Detach(); PSObject psObject = this.sessionState.AddObjectToCache( createdCimSession, sessionId, createdCimSession.InstanceId, sessionName, testCimSessionContext.CimSessionWrapper.ComputerName, testCimSessionContext.Proxy.Protocol); cmdlet.WriteObject(psObject, null); }
/// <summary> /// <para> /// Add session object to cache /// </para> /// </summary> /// <param name="sendToPipeline"></param> public override void WriteObject(object sendToPipeline, XOperationContextBase context) { DebugHelper.WriteLogEx(); if (sendToPipeline is CimSession) { DebugHelper.WriteLog("Call CimNewSession::AddSessionToCache", 1); this.cimNewSession.AddSessionToCache(sendToPipeline as CimSession, context, this); } else if (sendToPipeline is PSObject) { DebugHelper.WriteLog("Write PSObject to pipeline", 1); base.WriteObject(sendToPipeline, context); } else { // NOTES: May need to output for warning message/verbose message DebugHelper.WriteLog("Ignore other type object {0}", 1, sendToPipeline); } }
/// <summary> /// <para> /// Invoke cimmethod on given <see cref="CimInstance"/> /// </para> /// </summary> /// <param name="cimInstance"></param> public void InvokeCimMethodOnCimInstance(CimInstance cimInstance, XOperationContextBase context, CmdletOperationBase operation) { DebugHelper.WriteLogEx(); CimInvokeCimMethodContext cimInvokeCimMethodContext = context as CimInvokeCimMethodContext; Debug.Assert(cimInvokeCimMethodContext != null, "CimInvokeCimMethod::InvokeCimMethodOnCimInstance should has CimInvokeCimMethodContext != NULL."); string action = string.Format(CultureInfo.CurrentUICulture, actionTemplate, cimInvokeCimMethodContext.MethodName); if (!operation.ShouldProcess(cimInstance.ToString(), action)) { return; } CimSessionProxy proxy = CreateCimSessionProxy(cimInvokeCimMethodContext.Proxy); proxy.InvokeMethodAsync( cimInvokeCimMethodContext.Namespace, cimInstance, cimInvokeCimMethodContext.MethodName, cimInvokeCimMethodContext.ParametersCollection); }
internal void AddSessionToCache(CimSession cimSession, XOperationContextBase context, CmdletOperationBase cmdlet) { string str; DebugHelper.WriteLogEx(); CimNewSession.CimTestCimSessionContext cimTestCimSessionContext = context as CimNewSession.CimTestCimSessionContext; uint num = this.sessionState.GenerateSessionId(); string name = cimTestCimSessionContext.CimSessionWrapper.Name; if (name != null) { str = name; } else { object[] cimSessionClassName = new object[2]; cimSessionClassName[0] = CimSessionState.CimSessionClassName; cimSessionClassName[1] = num; str = string.Format(CultureInfo.CurrentUICulture, "{0}{1}", cimSessionClassName); } string str1 = str; CimSession cimSession1 = cimTestCimSessionContext.Proxy.Detach(); PSObject cache = this.sessionState.AddObjectToCache(cimSession1, num, cimSession1.InstanceId, str1, cimTestCimSessionContext.CimSessionWrapper.ComputerName, cimTestCimSessionContext.Proxy.Protocol); cmdlet.WriteObject(cache, null); }
public virtual void WriteObject(object sendToPipeline, XOperationContextBase context) { cmdlet.WriteObject(sendToPipeline); }
public override void WriteObject(object sendToPipeline, bool enumerateCollection, XOperationContextBase context) { if (sendToPipeline is CimInstance) { this.WriteObject(sendToPipeline, context); } else { base.WriteObject(sendToPipeline, enumerateCollection, context); } }
public CimWriteResultObject(object result, XOperationContextBase theContext) { this.result = result; base.Context = theContext; }
public virtual void WriteObject(object sendToPipeline, bool enumerateCollection, XOperationContextBase context) { cmdlet.WriteObject(sendToPipeline, enumerateCollection); }
/// <summary> /// <para> /// Add session to global cache /// </para> /// </summary> /// <param name="cimSession"></param> /// <param name="context"></param> /// <param name="cmdlet"></param> internal void AddSessionToCache(CimSession cimSession, XOperationContextBase context, CmdletOperationBase cmdlet) { DebugHelper.WriteLogEx(); CimTestCimSessionContext testCimSessionContext = context as CimTestCimSessionContext; UInt32 sessionId = this.sessionState.GenerateSessionId(); string originalSessionName = testCimSessionContext.CimSessionWrapper.Name; string sessionName = (originalSessionName != null) ? originalSessionName : String.Format(CultureInfo.CurrentUICulture, @"{0}{1}", CimSessionState.CimSessionClassName, sessionId); // detach CimSession from the proxy object CimSession createdCimSession = testCimSessionContext.Proxy.Detach(); PSObject psObject = this.sessionState.AddObjectToCache( createdCimSession, sessionId, createdCimSession.InstanceId, sessionName, testCimSessionContext.CimSessionWrapper.ComputerName, testCimSessionContext.Proxy.Protocol); cmdlet.WriteObject(psObject, null); }