/// <summary>
 /// Queries for object instances in the object model.
 /// </summary>
 /// <param name="query">Query parameters.</param>
 /// <returns>A lazy evaluated collection of object instances.</returns>
 public virtual void ProcessRecord(QueryBuilder query)
 {
     throw new NotImplementedException();
 }
Esempio n. 2
0
 /// <summary>
 /// Creates a <see cref="System.Management.Automation.Job"/> object that performs a query against the wrapped object model.
 /// </summary>
 /// <param name="session">Remote session to query.</param>
 /// <param name="query">Query parameters.</param>
 /// <remarks>
 /// <para>
 /// This method shouldn't do any processing or interact with the remote session.
 /// Doing so will interfere with ThrottleLimit functionality.
 /// </para>
 /// <para>
 /// <see cref="Job.WriteObject" /> (and other methods returning job results) will block to support throttling and flow-control.
 /// Implementations of Job instance returned from this method should make sure that implementation-specific flow-control mechanism pauses further processing,
 /// until calls from <see cref="Job.WriteObject" /> (and other methods returning job results) return.
 /// </para>
 /// </remarks>
 internal abstract StartableJob CreateQueryJob(TSession session, QueryBuilder query);
 /// <summary>
 /// Combines <see cref="ProcessRecord(QueryBuilder)"/> and <see cref="ProcessRecord(TObjectInstance,Microsoft.PowerShell.Cmdletization.MethodInvocationInfo,bool)"/>.
 /// </summary>
 /// <param name="query">Query parameters.</param>
 /// <param name="methodInvocationInfo">Method invocation details.</param>
 /// <param name="passThru"><see langword="true"/> if successful method invocations should emit downstream the object instance being operated on.</param>
 public virtual void ProcessRecord(QueryBuilder query, MethodInvocationInfo methodInvocationInfo, bool passThru)
 {
     throw new NotImplementedException();
 }