﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class TestPostingsFormatFactory
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class TestPostingsFormatFactory
   | Apache Lucene.NET 4.8.0-beta00008 Documentation ">
    <meta name="generator" content="docfx 2.50.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="../../index.html">
                <img id="logo" class="svg" src="../../logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search" id="breadcrumb">
            <ul class="breadcrumb">
              <li></li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.Codecs.TestPostingsFormatFactory">
  
  
  <h1 id="Lucene_Net_Codecs_TestPostingsFormatFactory" data-uid="Lucene.Net.Codecs.TestPostingsFormatFactory" class="text-break">Class TestPostingsFormatFactory
  </h1>
  <div class="markdown level0 summary"><p>LUCENENET specific class used to add the PostingsFormats from the test framework.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="inheritance">
    <h5>Inheritance</h5>
    <div class="level0"><span class="xref">System.Object</span></div>
    <div class="level1"><a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html">NamedServiceFactory</a>&lt;<a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.PostingsFormat.html">PostingsFormat</a>&gt;</div>
    <div class="level2"><a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html">DefaultPostingsFormatFactory</a></div>
    <div class="level3"><span class="xref">TestPostingsFormatFactory</span></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.IPostingsFormatFactory.html">IPostingsFormatFactory</a></div>
    <div><a class="xref" href="../Lucene.Net/Lucene.Net.Util.IServiceListable.html">IServiceListable</a></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_CustomPostingsFormatTypes">DefaultPostingsFormatFactory.CustomPostingsFormatTypes</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_ScanForPostingsFormats_System_Collections_Generic_IEnumerable_System_Reflection_Assembly__">DefaultPostingsFormatFactory.ScanForPostingsFormats(IEnumerable&lt;Assembly&gt;)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_ScanForPostingsFormats_System_Reflection_Assembly_">DefaultPostingsFormatFactory.ScanForPostingsFormats(Assembly)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_PutPostingsFormatType_System_Type_">DefaultPostingsFormatFactory.PutPostingsFormatType(Type)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_GetPostingsFormat_System_String_">DefaultPostingsFormatFactory.GetPostingsFormat(String)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_GetPostingsFormat_System_Type_">DefaultPostingsFormatFactory.GetPostingsFormat(Type)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_NewPostingsFormat_System_Type_">DefaultPostingsFormatFactory.NewPostingsFormat(Type)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_GetPostingsFormatType_System_String_">DefaultPostingsFormatFactory.GetPostingsFormatType(String)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_AvailableServices">DefaultPostingsFormatFactory.AvailableServices</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_m_initializationLock">NamedServiceFactory&lt;PostingsFormat&gt;.m_initializationLock</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_EnsureInitialized">NamedServiceFactory&lt;PostingsFormat&gt;.EnsureInitialized()</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_CodecsAssembly">NamedServiceFactory&lt;PostingsFormat&gt;.CodecsAssembly</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_IsServiceType_System_Type_">NamedServiceFactory&lt;PostingsFormat&gt;.IsServiceType(Type)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_GetServiceName_System_Type_">NamedServiceFactory&lt;PostingsFormat&gt;.GetServiceName(Type)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_GetCanonicalName_System_Type_">NamedServiceFactory&lt;PostingsFormat&gt;.GetCanonicalName(Type)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.NamedServiceFactory-1.html#Lucene_Net_Util_NamedServiceFactory_1_IsFullyTrusted">NamedServiceFactory&lt;PostingsFormat&gt;.IsFullyTrusted</a>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.Equals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.GetHashCode()</span>
    </div>
    <div>
      <span class="xref">System.Object.GetType()</span>
    </div>
    <div>
      <span class="xref">System.Object.MemberwiseClone()</span>
    </div>
    <div>
      <span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
    </div>
    <div>
      <span class="xref">System.Object.ToString()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Codecs.html">Lucene.Net.Codecs</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.TestFramework.dll</h6>
  <h5 id="Lucene_Net_Codecs_TestPostingsFormatFactory_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class TestPostingsFormatFactory : DefaultPostingsFormatFactory, IPostingsFormatFactory, IServiceListable</code></pre>
  </div>
  <h3 id="methods">Methods
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Codecs_TestPostingsFormatFactory_Initialize.md&amp;value=---%0Auid%3A%20Lucene.Net.Codecs.TestPostingsFormatFactory.Initialize%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
  </span>
  <span class="small pull-right mobile-hide">
    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.TestFramework/Support/Codecs/TestPostingsFormatFactory.cs/#L27">View Source</a>
  </span>
  <a id="Lucene_Net_Codecs_TestPostingsFormatFactory_Initialize_" data-uid="Lucene.Net.Codecs.TestPostingsFormatFactory.Initialize*"></a>
  <h4 id="Lucene_Net_Codecs_TestPostingsFormatFactory_Initialize" data-uid="Lucene.Net.Codecs.TestPostingsFormatFactory.Initialize">Initialize()</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected override void Initialize()</code></pre>
  </div>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.DefaultPostingsFormatFactory.html#Lucene_Net_Codecs_DefaultPostingsFormatFactory_Initialize">DefaultPostingsFormatFactory.Initialize()</a></div>
  <h3 id="implements">Implements</h3>
  <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Codecs.IPostingsFormatFactory.html">IPostingsFormatFactory</a>
  </div>
  <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Util.IServiceListable.html">IServiceListable</a>
  </div>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Codecs_TestPostingsFormatFactory.md&amp;value=---%0Auid%3A%20Lucene.Net.Codecs.TestPostingsFormatFactory%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
                  </li>
                  <li>
                    <a href="https://github.com/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.TestFramework/Support/Codecs/TestPostingsFormatFactory.cs/#L25" class="contribution-link">View Source</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
