internal override void WriteObject(object outputObject) { CimInstance cimInstance = null; PSObject pso = null; if (outputObject is PSObject) { pso = PSObject.AsPSObject(outputObject); cimInstance = pso.BaseObject as CimInstance; } else { cimInstance = outputObject as CimInstance; } if (cimInstance != null) { CimCmdletAdapter.AssociateSessionOfOriginWithInstance(cimInstance, this.JobContext.Session); CimCustomOptionsDictionary.AssociateCimInstanceWithCustomOptions(cimInstance, this.GetJobSpecificCustomOptions()); } if (this.JobContext.ShowComputerName) { if (pso == null) { pso = PSObject.AsPSObject(outputObject); } AddShowComputerNameMarker(pso); if (cimInstance == null) { pso.Properties.Add(new PSNoteProperty(RemotingConstants.ComputerNameNoteProperty, this.JobContext.Session.ComputerName)); } } base.WriteObject(outputObject); }
internal override void WriteObject(object outputObject) { CimInstance baseObject; PSObject pSObject = null; if (outputObject as PSObject == null) { baseObject = outputObject as CimInstance; } else { pSObject = PSObject.AsPSObject(outputObject); baseObject = pSObject.BaseObject as CimInstance; } if (baseObject != null) { CimCmdletAdapter.AssociateSessionOfOriginWithInstance(baseObject, this.JobContext.Session); CimCustomOptionsDictionary.AssociateCimInstanceWithCustomOptions(baseObject, this.GetJobSpecificCustomOptions()); if (this.JobContext.ShowComputerName) { if (pSObject == null) { pSObject = PSObject.AsPSObject(outputObject); } CimChildJobBase <T> .AddShowComputerNameMarker(pSObject); } } base.WriteObject(outputObject); }