<!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 -->
<title>DistributedSystem (Apache Geode 1.15.1)</title>
<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="DistributedSystem (Apache Geode 1.15.1)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":9,"i1":41,"i2":9,"i3":38,"i4":6,"i5":6,"i6":6,"i7":6,"i8":9,"i9":6,"i10":6,"i11":38,"i12":38,"i13":38,"i14":6,"i15":6,"i16":9,"i17":9,"i18":41,"i19":6,"i20":38,"i21":6,"i22":9,"i23":9,"i24":6,"i25":6,"i26":9,"i27":9,"i28":9,"i29":9,"i30":6,"i31":6};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</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="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/geode/distributed/DistributedSystemDisconnectedException.html" title="class in org.apache.geode.distributed"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/geode/distributed/DistributedSystem.html" target="_top">Frames</a></li>
<li><a href="DistributedSystem.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.geode.distributed</div>
<h2 title="Class DistributedSystem" class="title">Class DistributedSystem</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.geode.distributed.DistributedSystem</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../org/apache/geode/StatisticsFactory.html" title="interface in org.apache.geode">StatisticsFactory</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html" title="interface in org.apache.geode">StatisticsTypeFactory</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">DistributedSystem</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../org/apache/geode/StatisticsFactory.html" title="interface in org.apache.geode">StatisticsFactory</a></pre>
<div class="block">A "connection" to a GemFire distributed system. A <code>DistributedSystem</code> is created by
 invoking the <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#connect-java.util.Properties-"><code>connect(java.util.Properties)</code></a> method with a configuration as described
 <a href="#configuration">below</a>. A <code>DistributedSystem</code> is used when calling
 <a href="../../../../org/apache/geode/cache/CacheFactory.html#create--"><code>CacheFactory.create()</code></a>. This class should not be confused with the
 <a href="../../../../org/apache/geode/admin/AdminDistributedSystem.html" title="interface in org.apache.geode.admin"><code>AdminDistributedSystem</code></a> interface that is
 used for administering a distributed system.

 <P>

 When a program connects to the distributed system, a "distribution manager" is started in this VM
 and the other members of the distributed system are located. This discovery is performed by
 contacting "locators" running on a given host and port. All DistributedSystems that are
 configured to use the same locators are part of the same distributed system.

 <P>

 The current version of GemFire only supports creating one <code>DistributedSystem</code> per
 virtual machine. Attempts to connect to multiple distributed systems (that is calling
 <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#connect-java.util.Properties-"><code>connect(java.util.Properties)</code></a> multiple times with different configuration <code>Properties</code>) will result
 in an <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang"><code>IllegalStateException</code></a> being thrown (if <code>connect</code> is invoked multiple
 times with equivalent <code>Properties</code>, then the same instance of
 <code>DistributedSystem</code> will be returned). A common practice is to connect to the
 distributed system and store a reference to the <code>DistributedSystem</code> object in a
 well-known location such as a <code>static</code> variable. This practice provides access to the
 <code>DistributedSystem</code> slightly faster than invoking <code>connect</code> multiple times.
 Note that it is always advisable to <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#disconnect--"><code>disconnect()</code></a> from the distributed system when a
 program will no longer access it. Disconnecting frees up certain resources and allows your
 application to connect to a different distributed system, if desirable.

 <P>

 Users should never subclass this class.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 3.0</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.geode.distributed.internal.InternalDistributedSystem&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#existingSystems">existingSystems</a></span></code>
<div class="block">The instances of <code>DistributedSystem</code> created in this VM.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#existingSystemsLock">existingSystemsLock</a></span></code>
<div class="block">This lock must be changed to add or remove a system.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT">PROPERTIES_FILE_DEFAULT</a></span></code>
<div class="block">The default value of <code>PROPERTIES_FILE_PROPERTY</code> is
 <code>"gemfire.properties"</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY">PROPERTIES_FILE_PROPERTY</a></span></code>
<div class="block">The <code>PROPERTIES_FILE_PROPERTY</code> is the system property that can be used to specify
 the name of the properties file that the connect method will check for when it looks for a
 properties file.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTY_FILE">PROPERTY_FILE</a></span></code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">As of 9.0, please use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--"><code>getPropertiesFile()</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT">SECURITY_PROPERTIES_FILE_DEFAULT</a></span></code>
<div class="block">The default value of <code>SECURITY_PROPERTIES_FILE_PROPERTY</code> is
 <code>"gfsecurity.properties"</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY">SECURITY_PROPERTIES_FILE_PROPERTY</a></span></code>
<div class="block">The <code>SECURITY_PROPERTIES_FILE_PROPERTY</code> is the system property that can be used to
 specify the name of the property file that the connect method will check for when it looks for
 a property file.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTY_FILE">SECURITY_PROPERTY_FILE</a></span></code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">As of 9.0, please use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--"><code>getSecurityPropertiesFile()</code></a> instead.</span></div>
</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.geode.StatisticsTypeFactory">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.geode.<a href="../../../../org/apache/geode/StatisticsTypeFactory.html" title="interface in org.apache.geode">StatisticsTypeFactory</a></h3>
<code><a href="../../../../org/apache/geode/StatisticsTypeFactory.html#MAX_DESCRIPTORS_PER_TYPE">MAX_DESCRIPTORS_PER_TYPE</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#DistributedSystem--">DistributedSystem</a></span>()</code>
<div class="block">Creates a new instance of <code>DistributedSystem</code>.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#addSystem-org.apache.geode.distributed.internal.InternalDistributedSystem-">addSystem</a></span>(org.apache.geode.distributed.internal.InternalDistributedSystem&nbsp;newSystem)</code>&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#connect-java.util.Properties-">connect</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;config)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">as of 6.5 use <a href="../../../../org/apache/geode/cache/CacheFactory.html#create--"><code>CacheFactory.create()</code></a> or <a href="../../../../org/apache/geode/cache/client/ClientCacheFactory.html#create--"><code>ClientCacheFactory.create()</code></a>
             instead.</span></div>
</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected static <a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#connectForAdmin-java.util.Properties-">connectForAdmin</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;props)</code>
<div class="block">Returns a connection to the distributed system that is appropriate for administration.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#disconnect--">disconnect</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">as of 6.5 use <a href="../../../../org/apache/geode/cache/Cache.html#close-boolean-"><code>Cache.close(boolean)</code></a> or <a href="../../../../org/apache/geode/cache/client/ClientCache.html#close-boolean-"><code>ClientCache.close(boolean)</code></a> instead.</span></div>
</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#findDistributedMember-java.lang.String-">findDistributedMember</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
<div class="block">Find the distributed member with the given name</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#findDistributedMembers-java.net.InetAddress-">findDistributedMembers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;address)</code>
<div class="block">Find the set of distributed members running on a given address</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getAllOtherMembers--">getAllOtherMembers</a></span>()</code>
<div class="block">Returns a set of all the other members in this distributed system.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/geode/CancelCriterion.html" title="class in org.apache.geode">CancelCriterion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getCancelCriterion--">getCancelCriterion</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>protected static <a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getConnection-java.util.Properties-">getConnection</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;config)</code>
<div class="block">Returns an existing connection to the distributed system described by the given properties.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getDistributedMember--">getDistributedMember</a></span>()</code>
<div class="block">Returns the <a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed"><code>DistributedMember</code></a> that identifies this connection to the distributed
 system.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getGroupMembers-java.lang.String-">getGroupMembers</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;group)</code>
<div class="block">Returns a set of all the members in the given group.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>abstract long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getId--">getId</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getDistributedMember--"><code>getDistributedMember()</code></a> provides an identity for this connection that is
             unique across the entire distributed system.</span></div>
</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/geode/LogWriter.html" title="interface in org.apache.geode">LogWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getLogWriter--">getLogWriter</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getMemberId--">getMemberId</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">as of GemFire 5.0, use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getDistributedMember--"><code>getDistributedMember()</code></a> instead</span></div>
</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getName--">getName</a></span>()</code>
<div class="block">Returns the <a href="#name">name</a> of this connection to the distributed system.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getProperties--">getProperties</a></span>()</code>
<div class="block">Returns the configuration properties.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--">getPropertiesFile</a></span>()</code>
<div class="block">Returns the current value of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a> system property if set or the
 default value <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a>.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFileURL--">getPropertiesFileURL</a></span>()</code>
<div class="block">Gets an <code>URL</code> for the properties file, if one can be found, that the connect method
 will use as its properties file.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertyFileURL--">getPropertyFileURL</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">As of 9.0, please use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFileURL--"><code>getPropertiesFileURL()</code></a></span></div>
</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getReconnectedSystem--">getReconnectedSystem</a></span>()</code>
<div class="block">Returns the new DistributedSystem if there was an auto-reconnect</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../org/apache/geode/LogWriter.html" title="interface in org.apache.geode">LogWriter</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityLogWriter--">getSecurityLogWriter</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityProperties--">getSecurityProperties</a></span>()</code>
<div class="block">Returns the security specific configuration properties.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--">getSecurityPropertiesFile</a></span>()</code>
<div class="block">Returns the current value of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a> system property if set
 or the default value <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a>.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>static <a href="https://docs.oracle.com/javase/8/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFileURL--">getSecurityPropertiesFileURL</a></span>()</code>
<div class="block">Gets an <code>URL</code> for the security properties file, if one can be found, that the
 connect method will use as its properties file.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#isConnected--">isConnected</a></span>()</code>
<div class="block">Returns whether or not this <code>DistributedSystem</code> is connected to the distributed
 system.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#isReconnecting--">isReconnecting</a></span>()</code>
<div class="block">Test to see whether the DistributedSystem is in the process of reconnecting and recreating the
 cache after it has been removed from the system by other members or has shut down due to
 missing Roles and is reconnecting.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#releaseThreadsSockets--">releaseThreadsSockets</a></span>()</code>
<div class="block">Frees up any socket resources owned by the calling thread.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>protected static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#removeSystem-org.apache.geode.distributed.internal.InternalDistributedSystem-">removeSystem</a></span>(org.apache.geode.distributed.internal.InternalDistributedSystem&nbsp;oldSystem)</code>&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#setEnableAdministrationOnly-boolean-">setEnableAdministrationOnly</a></span>(boolean&nbsp;adminOnly)</code>
<div class="block">see <a href="../../../../org/apache/geode/admin/AdminDistributedSystemFactory.html" title="class in org.apache.geode.admin"><code>AdminDistributedSystemFactory</code></a></div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>static void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#setThreadsSocketPolicy-boolean-">setThreadsSocketPolicy</a></span>(boolean&nbsp;conserveSockets)</code>
<div class="block">Sets the calling thread's socket policy.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#stopReconnecting--">stopReconnecting</a></span>()</code>
<div class="block">Force the DistributedSystem to stop reconnecting.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#waitUntilReconnected-long-java.util.concurrent.TimeUnit-">waitUntilReconnected</a></span>(long&nbsp;time,
                    <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;units)</code>
<div class="block">Wait for the DistributedSystem to finish reconnecting to the system and recreate the cache.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.geode.StatisticsFactory">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.geode.<a href="../../../../org/apache/geode/StatisticsFactory.html" title="interface in org.apache.geode">StatisticsFactory</a></h3>
<code><a href="../../../../org/apache/geode/StatisticsFactory.html#createAtomicStatistics-org.apache.geode.StatisticsType-">createAtomicStatistics</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#createAtomicStatistics-org.apache.geode.StatisticsType-java.lang.String-">createAtomicStatistics</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#createAtomicStatistics-org.apache.geode.StatisticsType-java.lang.String-long-">createAtomicStatistics</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#createStatistics-org.apache.geode.StatisticsType-">createStatistics</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#createStatistics-org.apache.geode.StatisticsType-java.lang.String-">createStatistics</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#createStatistics-org.apache.geode.StatisticsType-java.lang.String-long-">createStatistics</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#findStatisticsByNumericId-long-">findStatisticsByNumericId</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#findStatisticsByTextId-java.lang.String-">findStatisticsByTextId</a>, <a href="../../../../org/apache/geode/StatisticsFactory.html#findStatisticsByType-org.apache.geode.StatisticsType-">findStatisticsByType</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.geode.StatisticsTypeFactory">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.geode.<a href="../../../../org/apache/geode/StatisticsTypeFactory.html" title="interface in org.apache.geode">StatisticsTypeFactory</a></h3>
<code><a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createDoubleCounter-java.lang.String-java.lang.String-java.lang.String-">createDoubleCounter</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createDoubleCounter-java.lang.String-java.lang.String-java.lang.String-boolean-">createDoubleCounter</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createDoubleGauge-java.lang.String-java.lang.String-java.lang.String-">createDoubleGauge</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createDoubleGauge-java.lang.String-java.lang.String-java.lang.String-boolean-">createDoubleGauge</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createIntCounter-java.lang.String-java.lang.String-java.lang.String-">createIntCounter</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createIntCounter-java.lang.String-java.lang.String-java.lang.String-boolean-">createIntCounter</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createIntGauge-java.lang.String-java.lang.String-java.lang.String-">createIntGauge</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createIntGauge-java.lang.String-java.lang.String-java.lang.String-boolean-">createIntGauge</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createLongCounter-java.lang.String-java.lang.String-java.lang.String-">createLongCounter</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createLongCounter-java.lang.String-java.lang.String-java.lang.String-boolean-">createLongCounter</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createLongGauge-java.lang.String-java.lang.String-java.lang.String-">createLongGauge</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createLongGauge-java.lang.String-java.lang.String-java.lang.String-boolean-">createLongGauge</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createType-java.lang.String-java.lang.String-org.apache.geode.StatisticDescriptor:A-">createType</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#createTypesFromXml-java.io.Reader-">createTypesFromXml</a>, <a href="../../../../org/apache/geode/StatisticsTypeFactory.html#findType-java.lang.String-">findType</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="existingSystems">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>existingSystems</h4>
<pre>protected static volatile&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;org.apache.geode.distributed.internal.InternalDistributedSystem&gt; existingSystems</pre>
<div class="block">The instances of <code>DistributedSystem</code> created in this VM. Presently only one connect
 to a distributed system is allowed in a VM. This set is never modified in place (it is always
 read only) but the reference can be updated by holders of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#existingSystemsLock"><code>existingSystemsLock</code></a>.</div>
</li>
</ul>
<a name="existingSystemsLock">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>existingSystemsLock</h4>
<pre>protected static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> existingSystemsLock</pre>
<div class="block">This lock must be changed to add or remove a system. It is notified when a system is removed.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#existingSystems"><code>existingSystems</code></a></dd>
</dl>
</li>
</ul>
<a name="PROPERTIES_FILE_PROPERTY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROPERTIES_FILE_PROPERTY</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PROPERTIES_FILE_PROPERTY</pre>
<div class="block">The <code>PROPERTIES_FILE_PROPERTY</code> is the system property that can be used to specify
 the name of the properties file that the connect method will check for when it looks for a
 properties file. Unless the value specifies the fully qualified path to the file, the file will
 be searched for, in order, in the following directories:
 <ol>
 <li>the current directory
 <li>the home directory
 <li>the class path
 </ol>
 Only the first file found will be used.
 <p>
 The default value is <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a>. However if the
 <code>PROPERTIES_FILE_PROPERTY</code> is set then its value will be used instead of the
 default. If this value is a relative file system path then the above search is done. If it is
 an absolute file system path then that file must exist; no search for it is done.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--"><code>getPropertiesFile()</code></a>, 
<a href="../../../../constant-values.html#org.apache.geode.distributed.DistributedSystem.PROPERTIES_FILE_PROPERTY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="PROPERTIES_FILE_DEFAULT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROPERTIES_FILE_DEFAULT</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PROPERTIES_FILE_DEFAULT</pre>
<div class="block">The default value of <code>PROPERTIES_FILE_PROPERTY</code> is
 <code>"gemfire.properties"</code>. The location of the file will be resolved during connect as
 described for <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--"><code>getPropertiesFile()</code></a>, 
<a href="../../../../constant-values.html#org.apache.geode.distributed.DistributedSystem.PROPERTIES_FILE_DEFAULT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="PROPERTY_FILE">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>PROPERTY_FILE</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> PROPERTY_FILE</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">As of 9.0, please use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--"><code>getPropertiesFile()</code></a> instead.</span></div>
<div class="block">The <code>PROPERTY_FILE</code> is the name of the properties file that the connect method will
 check for when it looks for a properties file. The file will be searched for, in order, in the
 following directories:
 <ol>
 <li>the current directory
 <li>the home directory
 <li>the class path
 </ol>
 Only the first file found will be used.
 <p>
 The default value of PROPERTY_FILE is <code>"gemfire.properties"</code>. However if the
 "gemfirePropertyFile" system property is set then its value is the value of PROPERTY_FILE. If
 this value is a relative file system path then the above search is done. If it is an absolute
 file system path then that file must exist; no search for it is done.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--"><code>getPropertiesFile()</code></a></dd>
</dl>
</li>
</ul>
<a name="SECURITY_PROPERTIES_FILE_PROPERTY">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SECURITY_PROPERTIES_FILE_PROPERTY</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SECURITY_PROPERTIES_FILE_PROPERTY</pre>
<div class="block">The <code>SECURITY_PROPERTIES_FILE_PROPERTY</code> is the system property that can be used to
 specify the name of the property file that the connect method will check for when it looks for
 a property file. Unless the value specifies the fully qualified path to the file, the file will
 be searched for, in order, in the following directories:
 <ol>
 <li>the current directory
 <li>the home directory
 <li>the class path
 </ol>
 Only the first file found will be used.
 <p>
 The default value is <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a>. However if the
 <code>SECURITY_PROPERTIES_FILE_PROPERTY</code> is set then its value will be used instead of
 the default. If this value is a relative file system path then the above search is done. If it
 is an absolute file system path then that file must exist; no search for it is done.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--"><code>getSecurityPropertiesFile()</code></a>, 
<a href="../../../../constant-values.html#org.apache.geode.distributed.DistributedSystem.SECURITY_PROPERTIES_FILE_PROPERTY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SECURITY_PROPERTIES_FILE_DEFAULT">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SECURITY_PROPERTIES_FILE_DEFAULT</h4>
<pre>public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SECURITY_PROPERTIES_FILE_DEFAULT</pre>
<div class="block">The default value of <code>SECURITY_PROPERTIES_FILE_PROPERTY</code> is
 <code>"gfsecurity.properties"</code>. The location of the file will be resolved during connect
 as described for <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a>.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--"><code>getSecurityPropertiesFile()</code></a>, 
<a href="../../../../constant-values.html#org.apache.geode.distributed.DistributedSystem.SECURITY_PROPERTIES_FILE_DEFAULT">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="SECURITY_PROPERTY_FILE">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>SECURITY_PROPERTY_FILE</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> SECURITY_PROPERTY_FILE</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">As of 9.0, please use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--"><code>getSecurityPropertiesFile()</code></a> instead.</span></div>
<div class="block">The <code>SECURITY_PROPERTY_FILE</code> is the name of the property file that the connect
 method will check for when it looks for a security property file. The file will be searched
 for, in order, in the following directories:
 <ol>
 <li>the current directory
 <li>the home directory
 <li>the class path
 </ol>
 Only the first file found will be used.
 <p>
 The default value of SECURITY_PROPERTY_FILE is <code>"gfsecurity.properties"</code>. However if
 the "gemfireSecurityPropertyFile" system property is set then its value is the value of
 SECURITY_PROPERTY_FILE. If this value is a relative file system path then the above search is
 done. If it is an absolute file system path then that file must exist; no search for it is
 done.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 6.6.2</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--"><code>getSecurityPropertiesFile()</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="DistributedSystem--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DistributedSystem</h4>
<pre>protected&nbsp;DistributedSystem()</pre>
<div class="block">Creates a new instance of <code>DistributedSystem</code>. This constructor is protected so that
 it may only be invoked by subclasses.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="connect-java.util.Properties-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connect</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a>&nbsp;connect(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;config)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">as of 6.5 use <a href="../../../../org/apache/geode/cache/CacheFactory.html#create--"><code>CacheFactory.create()</code></a> or <a href="../../../../org/apache/geode/cache/client/ClientCacheFactory.html#create--"><code>ClientCacheFactory.create()</code></a>
             instead.</span></div>
<div class="block">Connects to a GemFire distributed system with a configuration supplemented by the given
 properties. See <a href="../../../../org/apache/geode/distributed/ConfigurationProperties.html" title="interface in org.apache.geode.distributed">ConfigurationProperties</a> for available GemFire properties and their
 meanings.
 <P>
 The actual configuration attribute values used to connect comes from the following sources:
 <OL>
 <LI>System properties. If a system property named "<code>gemfire.</code><em>propertyName</em>"
 is defined and its value is not an empty string then its value will be used for the named
 configuration attribute.

 <LI>Code properties. Otherwise if a property is defined in the <code>config</code> parameter
 object and its value is not an empty string then its value will be used for that configuration
 attribute.
 <LI>File properties. Otherwise if a property is defined in a configuration property file found
 by this application and its value is not an empty string then its value will be used for that
 configuration attribute. A configuration property file may not exist. See the following section
 for how configuration property files are found.
 <LI>Defaults. Otherwise a default value is used.
 </OL>
 <P>
 The name of the property file can be specified using the "gemfirePropertyFile" system property.
 If the system property is set to a relative file name then it is searched for in following
 locations. If the system property is set to an absolute file name then that file is used as the
 property file. If the system property is not set, then the name of the property file defaults
 to "gemfire.properties". The configuration file is searched for in the following locations:

 <OL>
 <LI>Current directory (directory in which the VM was launched)</LI>
 <LI>User's home directory</LI>
 <LI>Class path (loaded as a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html?is-external=true#getResource-java.lang.String-" title="class or interface in java.lang">system resource</a>)</LI>
 </OL>

 If the configuration file cannot be located, then the property will have its default value as
 described <a href="#configuration">above</a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>config</code> - The <a href="#configuration">configuration properties</a> used when connecting to
        the distributed system</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a connection to the distributed system that is appropriate for administration</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - If <code>config</code> contains an unknown configuration
         property or a configuration property does not have an allowed value. Note that the
         values of boolean properties are parsed using
         <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true#valueOf-java.lang.String-" title="class or interface in java.lang"><code>Boolean.valueOf(java.lang.String)</code></a>. Therefore all values other than "true"
         values will be considered <code>false</code> -- an exception will not be thrown.</dd>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If a <code>DistributedSystem</code> with a different
         configuration has already been created in this VM or if this VM is
         <a href="../../../../org/apache/geode/admin/AdminDistributedSystem.html" title="interface in org.apache.geode.admin"><code>administering</code></a> a distributed
         system.</dd>
<dd><code><a href="../../../../org/apache/geode/GemFireIOException.html" title="class in org.apache.geode">GemFireIOException</a></code> - Problems while reading configuration properties
         file or while opening the log file.</dd>
<dd><code><a href="../../../../org/apache/geode/GemFireConfigException.html" title="class in org.apache.geode">GemFireConfigException</a></code> - The distribution transport is not configured
         correctly</dd>
</dl>
</li>
</ul>
<a name="addSystem-org.apache.geode.distributed.internal.InternalDistributedSystem-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addSystem</h4>
<pre>protected static&nbsp;void&nbsp;addSystem(org.apache.geode.distributed.internal.InternalDistributedSystem&nbsp;newSystem)</pre>
</li>
</ul>
<a name="removeSystem-org.apache.geode.distributed.internal.InternalDistributedSystem-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeSystem</h4>
<pre>protected static&nbsp;void&nbsp;removeSystem(org.apache.geode.distributed.internal.InternalDistributedSystem&nbsp;oldSystem)</pre>
</li>
</ul>
<a name="setThreadsSocketPolicy-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setThreadsSocketPolicy</h4>
<pre>public static&nbsp;void&nbsp;setThreadsSocketPolicy(boolean&nbsp;conserveSockets)</pre>
<div class="block">Sets the calling thread's socket policy. This value will override that default set by the
 <code>conserve-sockets</code> configuration property.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>conserveSockets</code> - If <code>true</code> then calling thread will share socket connections
        with other threads. If <code>false</code> then calling thread will have its own sockets.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 4.1</dd>
</dl>
</li>
</ul>
<a name="releaseThreadsSockets--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>releaseThreadsSockets</h4>
<pre>public static&nbsp;void&nbsp;releaseThreadsSockets()</pre>
<div class="block">Frees up any socket resources owned by the calling thread.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 4.1</dd>
</dl>
</li>
</ul>
<a name="getConnection-java.util.Properties-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConnection</h4>
<pre>protected static&nbsp;<a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a>&nbsp;getConnection(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;config)</pre>
<div class="block">Returns an existing connection to the distributed system described by the given properties.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>config</code> - the properties used when creating a connection to the distributed system</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a connection to the distributed system that is appropriate for administration</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 4.0</dd>
</dl>
</li>
</ul>
<a name="connectForAdmin-java.util.Properties-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connectForAdmin</h4>
<pre>protected static&nbsp;<a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a>&nbsp;connectForAdmin(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;props)</pre>
<div class="block">Returns a connection to the distributed system that is appropriate for administration. This
 method is for internal use only by the admin API.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>props</code> - the properties used when creating a connection to the distributed system</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a connection to the distributed system that is appropriate for administration</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 4.0</dd>
</dl>
</li>
</ul>
<a name="setEnableAdministrationOnly-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEnableAdministrationOnly</h4>
<pre>protected static&nbsp;void&nbsp;setEnableAdministrationOnly(boolean&nbsp;adminOnly)</pre>
<div class="block">see <a href="../../../../org/apache/geode/admin/AdminDistributedSystemFactory.html" title="class in org.apache.geode.admin"><code>AdminDistributedSystemFactory</code></a></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>adminOnly</code> - whether this VM is dedicated to administration</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.7</dd>
</dl>
</li>
</ul>
<a name="getLogWriter--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLogWriter</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;<a href="../../../../org/apache/geode/LogWriter.html" title="interface in org.apache.geode">LogWriter</a>&nbsp;getLogWriter()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Returns the <code>LogWriter</code> used for logging information. See
 <A href="#logFile">logFile</A>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <code>LogWriter</code> used for logging information</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - This VM has <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#disconnect--">disconnected</a> from the
         distributed system.</dd>
</dl>
</li>
</ul>
<a name="getSecurityLogWriter--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecurityLogWriter</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;<a href="../../../../org/apache/geode/LogWriter.html" title="interface in org.apache.geode">LogWriter</a>&nbsp;getSecurityLogWriter()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Returns the <code>LogWriter</code> used for logging security related information. See
 <A href="#logFile">logFile</A>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the <code>LogWriter</code> used for logging security related information</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - This VM has <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#disconnect--">disconnected</a> from the
         distributed system.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.5</dd>
</dl>
</li>
</ul>
<a name="getProperties--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProperties</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;getProperties()</pre>
<div class="block">Returns the configuration properties.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the configuration Properties</dd>
</dl>
</li>
</ul>
<a name="getSecurityProperties--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecurityProperties</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Properties.html?is-external=true" title="class or interface in java.util">Properties</a>&nbsp;getSecurityProperties()</pre>
<div class="block">Returns the security specific configuration properties.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the configuration Properties</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.5</dd>
</dl>
</li>
</ul>
<a name="getCancelCriterion--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCancelCriterion</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/geode/CancelCriterion.html" title="class in org.apache.geode">CancelCriterion</a>&nbsp;getCancelCriterion()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the cancel criterion for this system</dd>
</dl>
</li>
</ul>
<a name="disconnect--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disconnect</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;void&nbsp;disconnect()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">as of 6.5 use <a href="../../../../org/apache/geode/cache/Cache.html#close-boolean-"><code>Cache.close(boolean)</code></a> or <a href="../../../../org/apache/geode/cache/client/ClientCache.html#close-boolean-"><code>ClientCache.close(boolean)</code></a> instead.</span></div>
<div class="block">Disconnects from this distributed system. This operation will close the distribution manager
 and render the <a href="../../../../org/apache/geode/cache/Cache.html" title="interface in org.apache.geode.cache"><code>Cache</code></a> and all distributed collections
 obtained from this distributed system inoperable. After a disconnect has completed, a VM may
 connect to another distributed system.

 <P>

 Attempts to access a distributed system after a VM has disconnected from it will result in an
 <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang"><code>IllegalStateException</code></a> being thrown.</div>
</li>
</ul>
<a name="isConnected--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isConnected</h4>
<pre>public abstract&nbsp;boolean&nbsp;isConnected()</pre>
<div class="block">Returns whether or not this <code>DistributedSystem</code> is connected to the distributed
 system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>whether this <code>DistributedSystem</code> is connected to the distributed system</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#disconnect--"><code>disconnect()</code></a></dd>
</dl>
</li>
</ul>
<a name="getId--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getId</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;long&nbsp;getId()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment"><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getDistributedMember--"><code>getDistributedMember()</code></a> provides an identity for this connection that is
             unique across the entire distributed system.</span></div>
<div class="block">Returns the id of this connection to the distributed system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the id of this connection to the distributed system</dd>
</dl>
</li>
</ul>
<a name="getMemberId--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMemberId</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getMemberId()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">as of GemFire 5.0, use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getDistributedMember--"><code>getDistributedMember()</code></a> instead</span></div>
<div class="block">Returns a string that uniquely identifies this connection to the distributed system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a string that uniquely identifies this connection to the distributed system</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 4.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/admin/SystemMembershipEvent.html#getMemberId--"><code>SystemMembershipEvent.getMemberId()</code></a></dd>
</dl>
</li>
</ul>
<a name="getDistributedMember--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDistributedMember</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&nbsp;getDistributedMember()</pre>
<div class="block">Returns the <a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed"><code>DistributedMember</code></a> that identifies this connection to the distributed
 system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the member that represents this distributed system connection.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.0</dd>
</dl>
</li>
</ul>
<a name="getAllOtherMembers--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllOtherMembers</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&gt;&nbsp;getAllOtherMembers()</pre>
<div class="block">Returns a set of all the other members in this distributed system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>returns a set of all the other members in this distributed system.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 7.0</dd>
</dl>
</li>
</ul>
<a name="getGroupMembers-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGroupMembers</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&gt;&nbsp;getGroupMembers(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;group)</pre>
<div class="block">Returns a set of all the members in the given group. Members join a group by setting the
 "groups" gemfire property.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>group</code> - the group to which the distributed members to find belong</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>returns a set of all the member in a group.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 7.0</dd>
</dl>
</li>
</ul>
<a name="findDistributedMembers-java.net.InetAddress-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findDistributedMembers</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&gt;&nbsp;findDistributedMembers(<a href="https://docs.oracle.com/javase/8/docs/api/java/net/InetAddress.html?is-external=true" title="class or interface in java.net">InetAddress</a>&nbsp;address)</pre>
<div class="block">Find the set of distributed members running on a given address</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>address</code> - the address of the distributed members to find</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a set of all DistributedMembers that have any interfaces that match the given IP
         address. May be empty if there are no members.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 7.1</dd>
</dl>
</li>
</ul>
<a name="findDistributedMember-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findDistributedMember</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed">DistributedMember</a>&nbsp;findDistributedMember(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</pre>
<div class="block">Find the distributed member with the given name</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the name of the distributed member to find</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the distributed member that has the given name, or null if no member is currently
         running with the given name.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 7.1</dd>
</dl>
</li>
</ul>
<a name="getName--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getName()</pre>
<div class="block">Returns the <a href="#name">name</a> of this connection to the distributed system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the name of this connection to the distributed system</dd>
</dl>
</li>
</ul>
<a name="getPropertiesFile--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPropertiesFile</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getPropertiesFile()</pre>
<div class="block">Returns the current value of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a> system property if set or the
 default value <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current value of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a> system property if set or the
         default value <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a></dd>
</dl>
</li>
</ul>
<a name="getSecurityPropertiesFile--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecurityPropertiesFile</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getSecurityPropertiesFile()</pre>
<div class="block">Returns the current value of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a> system property if set
 or the default value <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a>.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the current value of <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a> system property if set
         or the default value <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a></dd>
</dl>
</li>
</ul>
<a name="getPropertiesFileURL--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPropertiesFileURL</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</a>&nbsp;getPropertiesFileURL()</pre>
<div class="block">Gets an <code>URL</code> for the properties file, if one can be found, that the connect method
 will use as its properties file.
 <p>
 See <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a> for information on the name of the properties file and
 what locations it will be looked for in.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>URL</code> that names the GemFire property file. Null is returned if no
         property file was found.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>Geode 1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_DEFAULT"><code>PROPERTIES_FILE_DEFAULT</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFile--"><code>getPropertiesFile()</code></a></dd>
</dl>
</li>
</ul>
<a name="getPropertyFileURL--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPropertyFileURL</h4>
<pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</a>&nbsp;getPropertyFileURL()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">As of 9.0, please use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFileURL--"><code>getPropertiesFileURL()</code></a></span></div>
<div class="block">Gets an <code>URL</code> for the property file, if one can be found, that the connect method
 will use as its property file.
 <p>
 See <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#PROPERTIES_FILE_PROPERTY"><code>PROPERTIES_FILE_PROPERTY</code></a> for information on the name of the property file and what
 locations it will be looked for in.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>URL</code> that names the GemFire property file. Null is returned if no
         property file was found.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getPropertiesFileURL--"><code>getPropertiesFileURL()</code></a></dd>
</dl>
</li>
</ul>
<a name="getSecurityPropertiesFileURL--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSecurityPropertiesFileURL</h4>
<pre>public static&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/net/URL.html?is-external=true" title="class or interface in java.net">URL</a>&nbsp;getSecurityPropertiesFileURL()</pre>
<div class="block">Gets an <code>URL</code> for the security properties file, if one can be found, that the
 connect method will use as its properties file.
 <p>
 See <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a> for information on the name of the properties
 file and what locations it will be looked for in.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a <code>URL</code> that names the GemFire security properties file. Null is returned if
         no properties file was found.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 6.6.2</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_PROPERTY"><code>SECURITY_PROPERTIES_FILE_PROPERTY</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#SECURITY_PROPERTIES_FILE_DEFAULT"><code>SECURITY_PROPERTIES_FILE_DEFAULT</code></a>, 
<a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getSecurityPropertiesFile--"><code>getSecurityPropertiesFile()</code></a></dd>
</dl>
</li>
</ul>
<a name="isReconnecting--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isReconnecting</h4>
<pre>public abstract&nbsp;boolean&nbsp;isReconnecting()</pre>
<div class="block">Test to see whether the DistributedSystem is in the process of reconnecting and recreating the
 cache after it has been removed from the system by other members or has shut down due to
 missing Roles and is reconnecting.
 <p>
 This will also return true if the DistributedSystem has finished reconnecting. When reconnect
 has completed you can use <a href="../../../../org/apache/geode/distributed/DistributedSystem.html#getReconnectedSystem--"><code>getReconnectedSystem()</code></a> to retrieve the new
 distributed system.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the DistributedSystem is attempting to reconnect or has finished reconnecting</dd>
</dl>
</li>
</ul>
<a name="waitUntilReconnected-long-java.util.concurrent.TimeUnit-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>waitUntilReconnected</h4>
<pre>public abstract&nbsp;boolean&nbsp;waitUntilReconnected(long&nbsp;time,
                                             <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/TimeUnit.html?is-external=true" title="class or interface in java.util.concurrent">TimeUnit</a>&nbsp;units)
                                      throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
<div class="block">Wait for the DistributedSystem to finish reconnecting to the system and recreate the cache.
 This may throw a DistributedSystemDisconnectedException if reconnect fails. The exception
 will detail what went wrong.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>time</code> - amount of time to wait, or -1 to wait forever</dd>
<dd><code>units</code> - the units associated with the time</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the system was reconnected</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code> - if the thread is interrupted while waiting</dd>
</dl>
</li>
</ul>
<a name="stopReconnecting--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopReconnecting</h4>
<pre>public abstract&nbsp;void&nbsp;stopReconnecting()</pre>
<div class="block">Force the DistributedSystem to stop reconnecting. If the DistributedSystem is currently
 connected this will disconnect it and close the cache.</div>
</li>
</ul>
<a name="getReconnectedSystem--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getReconnectedSystem</h4>
<pre>public abstract&nbsp;<a href="../../../../org/apache/geode/distributed/DistributedSystem.html" title="class in org.apache.geode.distributed">DistributedSystem</a>&nbsp;getReconnectedSystem()</pre>
<div class="block">Returns the new DistributedSystem if there was an auto-reconnect</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the new DistributedSystem if there was an auto-reconnect</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= 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="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../org/apache/geode/distributed/DistributedMember.html" title="interface in org.apache.geode.distributed"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/geode/distributed/DistributedSystemDisconnectedException.html" title="class in org.apache.geode.distributed"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/geode/distributed/DistributedSystem.html" target="_top">Frames</a></li>
<li><a href="DistributedSystem.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
