Class QueryNodeProcessorPipeline
  A QueryNodeProcessorPipeline class should be used to build a query
node processor pipeline.
When a query node tree is processed using this class, it passes the query
node tree to each processor on the pipeline and the result from each
processor is passed to the next one, always following the order the
processors were on the pipeline.
When a 
QueryConfigHandler object is set on a
QueryNodeProcessorPipeline, it also takes care of setting this
QueryConfigHandler on all processor on pipeline.
 
  
  
    Inheritance
    
    QueryNodeProcessorPipeline
      
   
  
  
  
  Assembly: Lucene.Net.QueryParser.dll
  Syntax
  
    public class QueryNodeProcessorPipeline : IQueryNodeProcessor, IList<IQueryNodeProcessor>, ICollection<IQueryNodeProcessor>, IEnumerable<IQueryNodeProcessor>, IEnumerable
   
  Constructors
  
  QueryNodeProcessorPipeline()
  Constructs an empty query node processor pipeline.
 
  
  Declaration
  
    public QueryNodeProcessorPipeline()
   
  
  QueryNodeProcessorPipeline(QueryConfigHandler)
  
  
  Declaration
  
    public QueryNodeProcessorPipeline(QueryConfigHandler queryConfigHandler)
   
  Parameters
  
  Properties
  
  Count
  
  
  Declaration
  
    public virtual int Count { get; }
   
  Property Value
  
  
  IsReadOnly
  
  
  Declaration
  
    public virtual bool IsReadOnly { get; }
   
  Property Value
  
  
  this[int]
  
  
  Declaration
  
    public virtual IQueryNodeProcessor this[int index] { get; set; }
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | int | 
        index | 
         | 
      
    
  
  Property Value
  
  Methods
  
  Add(IQueryNodeProcessor)
  
  
  Declaration
  
    public virtual bool Add(IQueryNodeProcessor processor)
   
  Parameters
  
  Returns
  
  
  Clear()
  
  
  Declaration
  
    public virtual void Clear()
   
  
  Contains(IQueryNodeProcessor)
  
  
  Declaration
  
    public virtual bool Contains(IQueryNodeProcessor item)
   
  Parameters
  
  Returns
  
  
  Contains(object)
  A QueryNodeProcessorPipeline class should be used to build a query
node processor pipeline.
When a query node tree is processed using this class, it passes the query
node tree to each processor on the pipeline and the result from each
processor is passed to the next one, always following the order the
processors were on the pipeline.
When a 
QueryConfigHandler object is set on a
QueryNodeProcessorPipeline, it also takes care of setting this
QueryConfigHandler on all processor on pipeline.
 
  
  Declaration
  
    public virtual bool Contains(object o)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | object | 
        o | 
         | 
      
    
  
  Returns
  
  
  CopyTo(IQueryNodeProcessor[], int)
  
  
  Declaration
  
    public virtual void CopyTo(IQueryNodeProcessor[] array, int arrayIndex)
   
  Parameters
  
  
  GetEnumerator()
  
  
  Declaration
  
    public virtual IEnumerator<IQueryNodeProcessor> GetEnumerator()
   
  Returns
  
  
  GetQueryConfigHandler()
  
  
  Declaration
  
    public virtual QueryConfigHandler GetQueryConfigHandler()
   
  Returns
  
  See Also
  
  
  GetRange(int, int)
  A QueryNodeProcessorPipeline class should be used to build a query
node processor pipeline.
When a query node tree is processed using this class, it passes the query
node tree to each processor on the pipeline and the result from each
processor is passed to the next one, always following the order the
processors were on the pipeline.
When a 
QueryConfigHandler object is set on a
QueryNodeProcessorPipeline, it also takes care of setting this
QueryConfigHandler on all processor on pipeline.
 
  
  Declaration
  
    public virtual IList<IQueryNodeProcessor> GetRange(int index, int count)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | int | 
        index | 
         | 
      
      
        | int | 
        count | 
         | 
      
    
  
  Returns
  
  
  GetView(int, int)
  
  
  Declaration
  
    public virtual IList<IQueryNodeProcessor> GetView(int index, int count)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | int | 
        index | 
         | 
      
      
        | int | 
        count | 
         | 
      
    
  
  Returns
  
  
  IndexOf(IQueryNodeProcessor)
  
  
  Declaration
  
    public virtual int IndexOf(IQueryNodeProcessor o)
   
  Parameters
  
  Returns
  
  
  Insert(int, IQueryNodeProcessor)
  Inserts an item to the IList<T> at the specified index.
 
  
  Declaration
  
    public virtual void Insert(int index, IQueryNodeProcessor item)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | int | 
        index | 
        The zero-based index at which item should be inserted. 
 | 
      
      
        | IQueryNodeProcessor | 
        item | 
        The object to insert into the IList<T>. 
 | 
      
    
  
  Exceptions
  
  
  Process(IQueryNode)
  
  
  Declaration
  
    public virtual IQueryNode Process(IQueryNode queryTree)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | IQueryNode | 
        queryTree | 
        the query node tree to be processed 
 | 
      
    
  
  Returns
  
  Exceptions
  
    
      
        | Type | 
        Condition | 
      
    
    
      
        | QueryNodeException | 
        if something goes wrong during the query node processing 
 | 
      
    
  
  See Also
  
  
  Remove(IQueryNodeProcessor)
  
  
  Declaration
  
    public virtual bool Remove(IQueryNodeProcessor o)
   
  Parameters
  
  Returns
  
  
  RemoveAt(int)
  
  
  Declaration
  
    public virtual void RemoveAt(int index)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | int | 
        index | 
         | 
      
    
  
  
  RemoveRange(int, int)
  A QueryNodeProcessorPipeline class should be used to build a query
node processor pipeline.
When a query node tree is processed using this class, it passes the query
node tree to each processor on the pipeline and the result from each
processor is passed to the next one, always following the order the
processors were on the pipeline.
When a 
QueryConfigHandler object is set on a
QueryNodeProcessorPipeline, it also takes care of setting this
QueryConfigHandler on all processor on pipeline.
 
  
  Declaration
  
    public virtual void RemoveRange(int index, int count)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | int | 
        index | 
         | 
      
      
        | int | 
        count | 
         | 
      
    
  
  
  Set(int, IQueryNodeProcessor)
  A QueryNodeProcessorPipeline class should be used to build a query
node processor pipeline.
When a query node tree is processed using this class, it passes the query
node tree to each processor on the pipeline and the result from each
processor is passed to the next one, always following the order the
processors were on the pipeline.
When a 
QueryConfigHandler object is set on a
QueryNodeProcessorPipeline, it also takes care of setting this
QueryConfigHandler on all processor on pipeline.
 
  
  Declaration
  
    public virtual IQueryNodeProcessor Set(int index, IQueryNodeProcessor processor)
   
  Parameters
  
  Returns
  
  
  SetQueryConfigHandler(QueryConfigHandler)
  
  
  Declaration
  
    public virtual void SetQueryConfigHandler(QueryConfigHandler queryConfigHandler)
   
  Parameters
  
    
      
        | Type | 
        Name | 
        Description | 
      
    
    
      
        | QueryConfigHandler | 
        queryConfigHandler | 
        the query configuration handler to be set. 
 | 
      
    
  
  See Also
  
  Implements