private void HandleGetCommandMetadata( object sender, RemoteDataEventArgs <RemoteDataObject <PSObject> > eventArgs) { using (ServerRunspacePoolDriver.tracer.TraceEventHandlers()) { RemoteDataObject <PSObject> data = eventArgs.Data; PowerShell discoveryPipeline1 = RemotingDecoder.GetCommandDiscoveryPipeline((object)data.Data); discoveryPipeline1.AddParameter("ErrorAction", (object)"SilentlyContinue").AddCommand("Measure-Object").AddCommand("Select-Object").AddParameter("Property", (object)"Count"); PowerShell discoveryPipeline2 = RemotingDecoder.GetCommandDiscoveryPipeline((object)data.Data); discoveryPipeline2.AddCommand("Select-Object").AddParameter("Property", (object)new string[7] { "Name", "Namespace", "HelpUri", "CommandType", "ResolvedCommandName", "OutputType", "Parameters" }); new ServerPowerShellDriver(discoveryPipeline1, discoveryPipeline2, true, data.PowerShellId, data.RunspacePoolId, this, ApartmentState.Unknown, new HostInfo((PSHost)null) { UseRunspaceHost = true }, (RemoteStreamOptions)0, false, (Runspace)null).Start(); } }
private void HandleGetCommandMetadata(object sender, RemoteDataEventArgs <RemoteDataObject <PSObject> > eventArgs) { RemoteDataObject <PSObject> data = eventArgs.Data; PowerShell commandDiscoveryPipeline = RemotingDecoder.GetCommandDiscoveryPipeline(data.Data); if (this.DoesInitialSessionStateIncludeGetCommandWithListImportedSwitch()) { commandDiscoveryPipeline.AddParameter("ListImported", true); } commandDiscoveryPipeline.AddParameter("ErrorAction", "SilentlyContinue").AddCommand("Measure-Object").AddCommand("Select-Object").AddParameter("Property", "Count"); PowerShell extraPowerShell = RemotingDecoder.GetCommandDiscoveryPipeline(data.Data); if (this.DoesInitialSessionStateIncludeGetCommandWithListImportedSwitch()) { extraPowerShell.AddParameter("ListImported", true); } extraPowerShell.AddCommand("Select-Object").AddParameter("Property", new string[] { "Name", "Namespace", "HelpUri", "CommandType", "ResolvedCommandName", "OutputType", "Parameters" }); HostInfo hostInfo = new HostInfo(null) { UseRunspaceHost = true }; new ServerPowerShellDriver(commandDiscoveryPipeline, extraPowerShell, true, data.PowerShellId, data.RunspacePoolId, this, ApartmentState.Unknown, hostInfo, 0, false, null).Start(); }