<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_144) on Tue Feb 25 21:18:28 MST 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Index (Apache Log4j MongoDB 2 2.13.1 API)</title>
<meta name="date" content="2020-02-25">
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
<script type="text/javascript" src="script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Index (Apache Log4j MongoDB 2 2.13.1 API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="org/apache/logging/log4j/mongodb2/package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li><a href="org/apache/logging/log4j/mongodb2/package-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="contentContainer"><a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;<a name="I:B">
<!--   -->
</a>
<h2 class="title">B</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#build--">build()</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#Builder--">Builder()</a></span> - Constructor for class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:C">
<!--   -->
</a>
<h2 class="title">C</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html#closeImpl--">closeImpl()</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbConnection</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html#createList-int-">createList(int)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbConnection</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html#createNoSqlProvider-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-java.lang.String-">createNoSqlProvider(String, String, String, String, String, String, String, String, String, String)</a></span> - Static method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider</a></dt>
<dd>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="block"><span class="deprecationComment">in 2.8; use <a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html#newBuilder--"><code>MongoDbProvider.newBuilder()</code></a> instead.</span></div>
</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html#createObject--">createObject()</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbConnection</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:G">
<!--   -->
</a>
<h2 class="title">G</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html#getConnection--">getConnection()</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:I">
<!--   -->
</a>
<h2 class="title">I</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html#insertObject-org.apache.logging.log4j.core.appender.nosql.NoSqlObject-">insertObject(NoSqlObject&lt;BasicDBObject&gt;)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbConnection</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:M">
<!--   -->
</a>
<h2 class="title">M</h2>
<dl>
<dt><a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html" title="class in org.apache.logging.log4j.mongodb2"><span class="typeNameLink">MongoDbConnection</span></a> - Class in <a href="org/apache/logging/log4j/mongodb2/package-summary.html">org.apache.logging.log4j.mongodb2</a></dt>
<dd>
<div class="block">The MongoDB implementation of <code>NoSqlConnection</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html#MongoDbConnection-com.mongodb.DB-com.mongodb.WriteConcern-java.lang.String-java.lang.Boolean-java.lang.Integer-">MongoDbConnection(DB, WriteConcern, String, Boolean, Integer)</a></span> - Constructor for class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbConnection.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbConnection</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2"><span class="typeNameLink">MongoDbObject</span></a> - Class in <a href="org/apache/logging/log4j/mongodb2/package-summary.html">org.apache.logging.log4j.mongodb2</a></dt>
<dd>
<div class="block">The MongoDB implementation of <code>NoSqlObject</code>.</div>
</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html#MongoDbObject--">MongoDbObject()</a></span> - Constructor for class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbObject</a></dt>
<dd>&nbsp;</dd>
<dt><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html" title="class in org.apache.logging.log4j.mongodb2"><span class="typeNameLink">MongoDbProvider</span></a> - Class in <a href="org/apache/logging/log4j/mongodb2/package-summary.html">org.apache.logging.log4j.mongodb2</a></dt>
<dd>
<div class="block">The MongoDB implementation of <code>NoSqlProvider</code>.</div>
</dd>
<dt><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2"><span class="typeNameLink">MongoDbProvider.Builder</span></a>&lt;<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="type parameter in MongoDbProvider.Builder">B</a> extends <a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a>&lt;<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="type parameter in MongoDbProvider.Builder">B</a>&gt;&gt; - Class in <a href="org/apache/logging/log4j/mongodb2/package-summary.html">org.apache.logging.log4j.mongodb2</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:N">
<!--   -->
</a>
<h2 class="title">N</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html#newBuilder--">newBuilder()</a></span> - Static method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:O">
<!--   -->
</a>
<h2 class="title">O</h2>
<dl>
<dt><a href="org/apache/logging/log4j/mongodb2/package-summary.html">org.apache.logging.log4j.mongodb2</a> - package org.apache.logging.log4j.mongodb2</dt>
<dd>
<div class="block">The classes in this package contain the MongoDB provider for the NoSQL Appender.</div>
</dd>
</dl>
<a name="I:S">
<!--   -->
</a>
<h2 class="title">S</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html#set-java.lang.String-org.apache.logging.log4j.core.appender.nosql.NoSqlObject-">set(String, NoSqlObject&lt;BasicDBObject&gt;)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbObject</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html#set-java.lang.String-org.apache.logging.log4j.core.appender.nosql.NoSqlObject:A-">set(String, NoSqlObject&lt;BasicDBObject&gt;[])</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbObject</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html#set-java.lang.String-java.lang.Object-">set(String, Object)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbObject</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html#set-java.lang.String-java.lang.Object:A-">set(String, Object[])</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbObject</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setCapped-boolean-">setCapped(boolean)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setCollectionName-java.lang.String-">setCollectionName(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setCollectionSize-int-">setCollectionSize(int)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setDatabaseName-java.lang.String-">setDatabaseName(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setFactoryClassName-java.lang.String-">setFactoryClassName(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setFactoryMethodName-java.lang.String-">setFactoryMethodName(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setPassword-java.lang.String-">setPassword(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setPort-java.lang.String-">setPort(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setServer-java.lang.String-">setServer(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setUserName-java.lang.String-">setUserName(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setWriteConcernConstant-java.lang.String-">setWriteConcernConstant(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html#setWriteConcernConstantClassName-java.lang.String-">setWriteConcernConstantClassName(String)</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.Builder.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider.Builder</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:T">
<!--   -->
</a>
<h2 class="title">T</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html#toString--">toString()</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbProvider.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbProvider</a></dt>
<dd>&nbsp;</dd>
</dl>
<a name="I:U">
<!--   -->
</a>
<h2 class="title">U</h2>
<dl>
<dt><span class="memberNameLink"><a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html#unwrap--">unwrap()</a></span> - Method in class org.apache.logging.log4j.mongodb2.<a href="org/apache/logging/log4j/mongodb2/MongoDbObject.html" title="class in org.apache.logging.log4j.mongodb2">MongoDbObject</a></dt>
<dd>&nbsp;</dd>
</dl>
<a href="#I:B">B</a>&nbsp;<a href="#I:C">C</a>&nbsp;<a href="#I:G">G</a>&nbsp;<a href="#I:I">I</a>&nbsp;<a href="#I:M">M</a>&nbsp;<a href="#I:N">N</a>&nbsp;<a href="#I:O">O</a>&nbsp;<a href="#I:S">S</a>&nbsp;<a href="#I:T">T</a>&nbsp;<a href="#I:U">U</a>&nbsp;</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="org/apache/logging/log4j/mongodb2/package-summary.html">Package</a></li>
<li>Class</li>
<li>Use</li>
<li><a href="org/apache/logging/log4j/mongodb2/package-tree.html">Tree</a></li>
<li><a href="deprecated-list.html">Deprecated</a></li>
<li class="navBarCell1Rev">Index</li>
<li><a href="help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="index.html?index-all.html" target="_top">Frames</a></li>
<li><a href="index-all.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><p align="center">Copyright &#169; 1999-2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.<br />             Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo,             and the Apache Log4j logo are trademarks of The Apache Software Foundation.</p></small></p>
</body>
</html>
