Пример #1
0
        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);
        }
Пример #2
0
        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);
        }