<!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.7.0_131) on Wed Mar 29 10:24:11 UTC 2017 -->
<title>Protos.FrameworkInfo.Builder</title>
<meta name="date" content="2017-03-29">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Protos.FrameworkInfo.Builder";
        }
    }
    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><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../org/apache/mesos/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/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/mesos/Protos.FrameworkInfo.Builder.html" target="_top">Frames</a></li>
<li><a href="Protos.FrameworkInfo.Builder.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All 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>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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.mesos</div>
<h2 title="Class Protos.FrameworkInfo.Builder" class="title">Class Protos.FrameworkInfo.Builder</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><any></li>
<li>
<ul class="inheritance">
<li>org.apache.mesos.Protos.FrameworkInfo.Builder</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a></dd>
</dl>
<hr>
<br>
<pre>public static final class <span class="strong">Protos.FrameworkInfo.Builder</span>
extends <any>
implements <a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></pre>
<div class="block">Protobuf type <code>mesos.FrameworkInfo</code>

 <pre>

 Describes a framework.
 </pre></div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addAllCapabilities(java.lang.Iterable)">addAllCapabilities</a></strong>(java.lang.Iterable&lt;? extends <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&gt;&nbsp;values)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addAllRoles(java.lang.Iterable)">addAllRoles</a></strong>(java.lang.Iterable&lt;java.lang.String&gt;&nbsp;values)</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addCapabilities(int,%20org.apache.mesos.Protos.FrameworkInfo.Capability.Builder)">addCapabilities</a></strong>(int&nbsp;index,
               <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addCapabilities(int,%20org.apache.mesos.Protos.FrameworkInfo.Capability)">addCapabilities</a></strong>(int&nbsp;index,
               <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;value)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addCapabilities(org.apache.mesos.Protos.FrameworkInfo.Capability.Builder)">addCapabilities</a></strong>(<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addCapabilities(org.apache.mesos.Protos.FrameworkInfo.Capability)">addCapabilities</a></strong>(<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;value)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addCapabilitiesBuilder()">addCapabilitiesBuilder</a></strong>()</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addCapabilitiesBuilder(int)">addCapabilitiesBuilder</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addRoles(java.lang.String)">addRoles</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#addRolesBytes(com.google.protobuf.ByteString)">addRolesBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#build()">build</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#buildPartial()">buildPartial</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clear()">clear</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearCapabilities()">clearCapabilities</a></strong>()</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearCheckpoint()">clearCheckpoint</a></strong>()</code>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearFailoverTimeout()">clearFailoverTimeout</a></strong>()</code>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearHostname()">clearHostname</a></strong>()</code>
<div class="block"><code>optional string hostname = 7;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearId()">clearId</a></strong>()</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearLabels()">clearLabels</a></strong>()</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearName()">clearName</a></strong>()</code>
<div class="block"><code>required string name = 2;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearPrincipal()">clearPrincipal</a></strong>()</code>
<div class="block"><code>optional string principal = 8;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearRole()">clearRole</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearRoles()">clearRoles</a></strong>()</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearUser()">clearUser</a></strong>()</code>
<div class="block"><code>required string user = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clearWebuiUrl()">clearWebuiUrl</a></strong>()</code>
<div class="block"><code>optional string webui_url = 9;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#clone()">clone</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilities(int)">getCapabilities</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilitiesBuilder(int)">getCapabilitiesBuilder</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilitiesBuilderList()">getCapabilitiesBuilderList</a></strong>()</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilitiesCount()">getCapabilitiesCount</a></strong>()</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilitiesList()">getCapabilitiesList</a></strong>()</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.CapabilityOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfo.CapabilityOrBuilder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilitiesOrBuilder(int)">getCapabilitiesOrBuilder</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../../../org/apache/mesos/Protos.FrameworkInfo.CapabilityOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfo.CapabilityOrBuilder</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCapabilitiesOrBuilderList()">getCapabilitiesOrBuilderList</a></strong>()</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getCheckpoint()">getCheckpoint</a></strong>()</code>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getDefaultInstanceForType()">getDefaultInstanceForType</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static com.google.protobuf.Descriptors.Descriptor</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getDescriptor()">getDescriptor</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>com.google.protobuf.Descriptors.Descriptor</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getDescriptorForType()">getDescriptorForType</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getFailoverTimeout()">getFailoverTimeout</a></strong>()</code>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getHostname()">getHostname</a></strong>()</code>
<div class="block"><code>optional string hostname = 7;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getHostnameBytes()">getHostnameBytes</a></strong>()</code>
<div class="block"><code>optional string hostname = 7;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkID.html" title="class in org.apache.mesos">Protos.FrameworkID</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getId()">getId</a></strong>()</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkID.Builder.html" title="class in org.apache.mesos">Protos.FrameworkID.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getIdBuilder()">getIdBuilder</a></strong>()</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkIDOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkIDOrBuilder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getIdOrBuilder()">getIdOrBuilder</a></strong>()</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Labels.html" title="class in org.apache.mesos">Protos.Labels</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getLabels()">getLabels</a></strong>()</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Labels.Builder.html" title="class in org.apache.mesos">Protos.Labels.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getLabelsBuilder()">getLabelsBuilder</a></strong>()</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.LabelsOrBuilder.html" title="interface in org.apache.mesos">Protos.LabelsOrBuilder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getLabelsOrBuilder()">getLabelsOrBuilder</a></strong>()</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getName()">getName</a></strong>()</code>
<div class="block"><code>required string name = 2;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getNameBytes()">getNameBytes</a></strong>()</code>
<div class="block"><code>required string name = 2;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getPrincipal()">getPrincipal</a></strong>()</code>
<div class="block"><code>optional string principal = 8;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getPrincipalBytes()">getPrincipalBytes</a></strong>()</code>
<div class="block"><code>optional string principal = 8;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getRole()">getRole</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getRoleBytes()">getRoleBytes</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getRoles(int)">getRoles</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getRolesBytes(int)">getRolesBytes</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getRolesCount()">getRolesCount</a></strong>()</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ProtocolStringList</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getRolesList()">getRolesList</a></strong>()</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getUser()">getUser</a></strong>()</code>
<div class="block"><code>required string user = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getUserBytes()">getUserBytes</a></strong>()</code>
<div class="block"><code>required string user = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getWebuiUrl()">getWebuiUrl</a></strong>()</code>
<div class="block"><code>optional string webui_url = 9;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.google.protobuf.ByteString</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#getWebuiUrlBytes()">getWebuiUrlBytes</a></strong>()</code>
<div class="block"><code>optional string webui_url = 9;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasCheckpoint()">hasCheckpoint</a></strong>()</code>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasFailoverTimeout()">hasFailoverTimeout</a></strong>()</code>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasHostname()">hasHostname</a></strong>()</code>
<div class="block"><code>optional string hostname = 7;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasId()">hasId</a></strong>()</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasLabels()">hasLabels</a></strong>()</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasName()">hasName</a></strong>()</code>
<div class="block"><code>required string name = 2;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasPrincipal()">hasPrincipal</a></strong>()</code>
<div class="block"><code>optional string principal = 8;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasRole()">hasRole</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasUser()">hasUser</a></strong>()</code>
<div class="block"><code>required string user = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#hasWebuiUrl()">hasWebuiUrl</a></strong>()</code>
<div class="block"><code>optional string webui_url = 9;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected com.google.protobuf.GeneratedMessage.FieldAccessorTable</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#internalGetFieldAccessorTable()">internalGetFieldAccessorTable</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#isInitialized()">isInitialized</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#mergeFrom(com.google.protobuf.CodedInputStream,%20com.google.protobuf.ExtensionRegistryLite)">mergeFrom</a></strong>(com.google.protobuf.CodedInputStream&nbsp;input,
         com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#mergeFrom(com.google.protobuf.Message)">mergeFrom</a></strong>(com.google.protobuf.Message&nbsp;other)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#mergeId(org.apache.mesos.Protos.FrameworkID)">mergeId</a></strong>(<a href="../../../org/apache/mesos/Protos.FrameworkID.html" title="class in org.apache.mesos">Protos.FrameworkID</a>&nbsp;value)</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#mergeLabels(org.apache.mesos.Protos.Labels)">mergeLabels</a></strong>(<a href="../../../org/apache/mesos/Protos.Labels.html" title="class in org.apache.mesos">Protos.Labels</a>&nbsp;value)</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#removeCapabilities(int)">removeCapabilities</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setCapabilities(int,%20org.apache.mesos.Protos.FrameworkInfo.Capability.Builder)">setCapabilities</a></strong>(int&nbsp;index,
               <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setCapabilities(int,%20org.apache.mesos.Protos.FrameworkInfo.Capability)">setCapabilities</a></strong>(int&nbsp;index,
               <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;value)</code>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setCheckpoint(boolean)">setCheckpoint</a></strong>(boolean&nbsp;value)</code>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setFailoverTimeout(double)">setFailoverTimeout</a></strong>(double&nbsp;value)</code>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setHostname(java.lang.String)">setHostname</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><code>optional string hostname = 7;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setHostnameBytes(com.google.protobuf.ByteString)">setHostnameBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><code>optional string hostname = 7;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setId(org.apache.mesos.Protos.FrameworkID.Builder)">setId</a></strong>(<a href="../../../org/apache/mesos/Protos.FrameworkID.Builder.html" title="class in org.apache.mesos">Protos.FrameworkID.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setId(org.apache.mesos.Protos.FrameworkID)">setId</a></strong>(<a href="../../../org/apache/mesos/Protos.FrameworkID.html" title="class in org.apache.mesos">Protos.FrameworkID</a>&nbsp;value)</code>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setLabels(org.apache.mesos.Protos.Labels.Builder)">setLabels</a></strong>(<a href="../../../org/apache/mesos/Protos.Labels.Builder.html" title="class in org.apache.mesos">Protos.Labels.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setLabels(org.apache.mesos.Protos.Labels)">setLabels</a></strong>(<a href="../../../org/apache/mesos/Protos.Labels.html" title="class in org.apache.mesos">Protos.Labels</a>&nbsp;value)</code>
<div class="block"><code>optional .mesos.Labels labels = 11;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setName(java.lang.String)">setName</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><code>required string name = 2;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setNameBytes(com.google.protobuf.ByteString)">setNameBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><code>required string name = 2;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setPrincipal(java.lang.String)">setPrincipal</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><code>optional string principal = 8;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setPrincipalBytes(com.google.protobuf.ByteString)">setPrincipalBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><code>optional string principal = 8;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setRole(java.lang.String)">setRole</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setRoleBytes(com.google.protobuf.ByteString)">setRoleBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setRoles(int,%20java.lang.String)">setRoles</a></strong>(int&nbsp;index,
        java.lang.String&nbsp;value)</code>
<div class="block"><code>repeated string roles = 12;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setUser(java.lang.String)">setUser</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><code>required string user = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setUserBytes(com.google.protobuf.ByteString)">setUserBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><code>required string user = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setWebuiUrl(java.lang.String)">setWebuiUrl</a></strong>(java.lang.String&nbsp;value)</code>
<div class="block"><code>optional string webui_url = 9;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html#setWebuiUrlBytes(com.google.protobuf.ByteString)">setWebuiUrlBytes</a></strong>(com.google.protobuf.ByteString&nbsp;value)</code>
<div class="block"><code>optional string webui_url = 9;</code></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.Object</h3>
<code>equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getDescriptor()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptor</h4>
<pre>public static final&nbsp;com.google.protobuf.Descriptors.Descriptor&nbsp;getDescriptor()</pre>
</li>
</ul>
<a name="internalGetFieldAccessorTable()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>internalGetFieldAccessorTable</h4>
<pre>protected&nbsp;com.google.protobuf.GeneratedMessage.FieldAccessorTable&nbsp;internalGetFieldAccessorTable()</pre>
</li>
</ul>
<a name="clear()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clear()</pre>
</li>
</ul>
<a name="clone()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clone</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clone()</pre>
</li>
</ul>
<a name="getDescriptorForType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDescriptorForType</h4>
<pre>public&nbsp;com.google.protobuf.Descriptors.Descriptor&nbsp;getDescriptorForType()</pre>
</li>
</ul>
<a name="getDefaultInstanceForType()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDefaultInstanceForType</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a>&nbsp;getDefaultInstanceForType()</pre>
</li>
</ul>
<a name="build()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>build</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a>&nbsp;build()</pre>
</li>
</ul>
<a name="buildPartial()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildPartial</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos">Protos.FrameworkInfo</a>&nbsp;buildPartial()</pre>
</li>
</ul>
<a name="mergeFrom(com.google.protobuf.Message)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeFrom</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;mergeFrom(com.google.protobuf.Message&nbsp;other)</pre>
</li>
</ul>
<a name="isInitialized()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInitialized</h4>
<pre>public final&nbsp;boolean&nbsp;isInitialized()</pre>
</li>
</ul>
<a name="mergeFrom(com.google.protobuf.CodedInputStream, com.google.protobuf.ExtensionRegistryLite)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeFrom</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;mergeFrom(com.google.protobuf.CodedInputStream&nbsp;input,
                                     com.google.protobuf.ExtensionRegistryLite&nbsp;extensionRegistry)
                                       throws java.io.IOException</pre>
<dl><dt><span class="strong">Throws:</span></dt>
<dd><code>java.io.IOException</code></dd></dl>
</li>
</ul>
<a name="hasUser()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasUser</h4>
<pre>public&nbsp;boolean&nbsp;hasUser()</pre>
<div class="block"><code>required string user = 1;</code>

 <pre>
 Used to determine the Unix user that an executor or task should be
 launched as.
 When using the MesosSchedulerDriver, if the field is set to an
 empty string, it will automagically set it to the current user.
 When using the HTTP Scheduler API, the user has to be set
 explicitly.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasUser()">hasUser</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getUser()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUser</h4>
<pre>public&nbsp;java.lang.String&nbsp;getUser()</pre>
<div class="block"><code>required string user = 1;</code>

 <pre>
 Used to determine the Unix user that an executor or task should be
 launched as.
 When using the MesosSchedulerDriver, if the field is set to an
 empty string, it will automagically set it to the current user.
 When using the HTTP Scheduler API, the user has to be set
 explicitly.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getUser()">getUser</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getUserBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUserBytes</h4>
<pre>public&nbsp;com.google.protobuf.ByteString&nbsp;getUserBytes()</pre>
<div class="block"><code>required string user = 1;</code>

 <pre>
 Used to determine the Unix user that an executor or task should be
 launched as.
 When using the MesosSchedulerDriver, if the field is set to an
 empty string, it will automagically set it to the current user.
 When using the HTTP Scheduler API, the user has to be set
 explicitly.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getUserBytes()">getUserBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setUser(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUser</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setUser(java.lang.String&nbsp;value)</pre>
<div class="block"><code>required string user = 1;</code>

 <pre>
 Used to determine the Unix user that an executor or task should be
 launched as.
 When using the MesosSchedulerDriver, if the field is set to an
 empty string, it will automagically set it to the current user.
 When using the HTTP Scheduler API, the user has to be set
 explicitly.
 </pre></div>
</li>
</ul>
<a name="clearUser()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearUser</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearUser()</pre>
<div class="block"><code>required string user = 1;</code>

 <pre>
 Used to determine the Unix user that an executor or task should be
 launched as.
 When using the MesosSchedulerDriver, if the field is set to an
 empty string, it will automagically set it to the current user.
 When using the HTTP Scheduler API, the user has to be set
 explicitly.
 </pre></div>
</li>
</ul>
<a name="setUserBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUserBytes</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setUserBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><code>required string user = 1;</code>

 <pre>
 Used to determine the Unix user that an executor or task should be
 launched as.
 When using the MesosSchedulerDriver, if the field is set to an
 empty string, it will automagically set it to the current user.
 When using the HTTP Scheduler API, the user has to be set
 explicitly.
 </pre></div>
</li>
</ul>
<a name="hasName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasName</h4>
<pre>public&nbsp;boolean&nbsp;hasName()</pre>
<div class="block"><code>required string name = 2;</code>

 <pre>
 Name of the framework that shows up in the Mesos Web UI.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasName()">hasName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getName</h4>
<pre>public&nbsp;java.lang.String&nbsp;getName()</pre>
<div class="block"><code>required string name = 2;</code>

 <pre>
 Name of the framework that shows up in the Mesos Web UI.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getName()">getName</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getNameBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNameBytes</h4>
<pre>public&nbsp;com.google.protobuf.ByteString&nbsp;getNameBytes()</pre>
<div class="block"><code>required string name = 2;</code>

 <pre>
 Name of the framework that shows up in the Mesos Web UI.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getNameBytes()">getNameBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setName(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setName</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setName(java.lang.String&nbsp;value)</pre>
<div class="block"><code>required string name = 2;</code>

 <pre>
 Name of the framework that shows up in the Mesos Web UI.
 </pre></div>
</li>
</ul>
<a name="clearName()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearName</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearName()</pre>
<div class="block"><code>required string name = 2;</code>

 <pre>
 Name of the framework that shows up in the Mesos Web UI.
 </pre></div>
</li>
</ul>
<a name="setNameBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNameBytes</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setNameBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><code>required string name = 2;</code>

 <pre>
 Name of the framework that shows up in the Mesos Web UI.
 </pre></div>
</li>
</ul>
<a name="hasId()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasId</h4>
<pre>public&nbsp;boolean&nbsp;hasId()</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasId()">hasId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getId()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getId</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkID.html" title="class in org.apache.mesos">Protos.FrameworkID</a>&nbsp;getId()</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getId()">getId</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setId(org.apache.mesos.Protos.FrameworkID)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setId</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setId(<a href="../../../org/apache/mesos/Protos.FrameworkID.html" title="class in org.apache.mesos">Protos.FrameworkID</a>&nbsp;value)</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
</li>
</ul>
<a name="setId(org.apache.mesos.Protos.FrameworkID.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setId</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setId(<a href="../../../org/apache/mesos/Protos.FrameworkID.Builder.html" title="class in org.apache.mesos">Protos.FrameworkID.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
</li>
</ul>
<a name="mergeId(org.apache.mesos.Protos.FrameworkID)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeId</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;mergeId(<a href="../../../org/apache/mesos/Protos.FrameworkID.html" title="class in org.apache.mesos">Protos.FrameworkID</a>&nbsp;value)</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
</li>
</ul>
<a name="clearId()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearId</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearId()</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
</li>
</ul>
<a name="getIdBuilder()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkID.Builder.html" title="class in org.apache.mesos">Protos.FrameworkID.Builder</a>&nbsp;getIdBuilder()</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
</li>
</ul>
<a name="getIdOrBuilder()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getIdOrBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkIDOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkIDOrBuilder</a>&nbsp;getIdOrBuilder()</pre>
<div class="block"><code>optional .mesos.FrameworkID id = 3;</code>

 <pre>
 Note that 'id' is only available after a framework has
 registered, however, it is included here in order to facilitate
 scheduler failover (i.e., if it is set then the
 MesosSchedulerDriver expects the scheduler is performing
 failover).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getIdOrBuilder()">getIdOrBuilder</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="hasFailoverTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasFailoverTimeout</h4>
<pre>public&nbsp;boolean&nbsp;hasFailoverTimeout()</pre>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code>

 <pre>
 The amount of time (in seconds) that the master will wait for the
 scheduler to failover before it tears down the framework by
 killing all its tasks/executors. This should be non-zero if a
 framework expects to reconnect after a failure and not lose its
 tasks/executors.
 NOTE: To avoid accidental destruction of tasks, production
 frameworks typically set this to a large value (e.g., 1 week).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasFailoverTimeout()">hasFailoverTimeout</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getFailoverTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFailoverTimeout</h4>
<pre>public&nbsp;double&nbsp;getFailoverTimeout()</pre>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code>

 <pre>
 The amount of time (in seconds) that the master will wait for the
 scheduler to failover before it tears down the framework by
 killing all its tasks/executors. This should be non-zero if a
 framework expects to reconnect after a failure and not lose its
 tasks/executors.
 NOTE: To avoid accidental destruction of tasks, production
 frameworks typically set this to a large value (e.g., 1 week).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getFailoverTimeout()">getFailoverTimeout</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setFailoverTimeout(double)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setFailoverTimeout</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setFailoverTimeout(double&nbsp;value)</pre>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code>

 <pre>
 The amount of time (in seconds) that the master will wait for the
 scheduler to failover before it tears down the framework by
 killing all its tasks/executors. This should be non-zero if a
 framework expects to reconnect after a failure and not lose its
 tasks/executors.
 NOTE: To avoid accidental destruction of tasks, production
 frameworks typically set this to a large value (e.g., 1 week).
 </pre></div>
</li>
</ul>
<a name="clearFailoverTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearFailoverTimeout</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearFailoverTimeout()</pre>
<div class="block"><code>optional double failover_timeout = 4 [default = 0];</code>

 <pre>
 The amount of time (in seconds) that the master will wait for the
 scheduler to failover before it tears down the framework by
 killing all its tasks/executors. This should be non-zero if a
 framework expects to reconnect after a failure and not lose its
 tasks/executors.
 NOTE: To avoid accidental destruction of tasks, production
 frameworks typically set this to a large value (e.g., 1 week).
 </pre></div>
</li>
</ul>
<a name="hasCheckpoint()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasCheckpoint</h4>
<pre>public&nbsp;boolean&nbsp;hasCheckpoint()</pre>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code>

 <pre>
 If set, agents running tasks started by this framework will write
 the framework pid, executor pids and status updates to disk. If
 the agent exits (e.g., due to a crash or as part of upgrading
 Mesos), this checkpointed data allows the restarted agent to
 reconnect to executors that were started by the old instance of
 the agent. Enabling checkpointing improves fault tolerance, at
 the cost of a (usually small) increase in disk I/O.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasCheckpoint()">hasCheckpoint</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getCheckpoint()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCheckpoint</h4>
<pre>public&nbsp;boolean&nbsp;getCheckpoint()</pre>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code>

 <pre>
 If set, agents running tasks started by this framework will write
 the framework pid, executor pids and status updates to disk. If
 the agent exits (e.g., due to a crash or as part of upgrading
 Mesos), this checkpointed data allows the restarted agent to
 reconnect to executors that were started by the old instance of
 the agent. Enabling checkpointing improves fault tolerance, at
 the cost of a (usually small) increase in disk I/O.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getCheckpoint()">getCheckpoint</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setCheckpoint(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCheckpoint</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setCheckpoint(boolean&nbsp;value)</pre>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code>

 <pre>
 If set, agents running tasks started by this framework will write
 the framework pid, executor pids and status updates to disk. If
 the agent exits (e.g., due to a crash or as part of upgrading
 Mesos), this checkpointed data allows the restarted agent to
 reconnect to executors that were started by the old instance of
 the agent. Enabling checkpointing improves fault tolerance, at
 the cost of a (usually small) increase in disk I/O.
 </pre></div>
</li>
</ul>
<a name="clearCheckpoint()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearCheckpoint</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearCheckpoint()</pre>
<div class="block"><code>optional bool checkpoint = 5 [default = false];</code>

 <pre>
 If set, agents running tasks started by this framework will write
 the framework pid, executor pids and status updates to disk. If
 the agent exits (e.g., due to a crash or as part of upgrading
 Mesos), this checkpointed data allows the restarted agent to
 reconnect to executors that were started by the old instance of
 the agent. Enabling checkpointing improves fault tolerance, at
 the cost of a (usually small) increase in disk I/O.
 </pre></div>
</li>
</ul>
<a name="hasRole()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasRole</h4>
<pre>@Deprecated
public&nbsp;boolean&nbsp;hasRole()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block"><code>optional string role = 6 [default = "*", deprecated = true];</code>

 <pre>
 Roles are the entities to which allocations are made.
 The framework must have at least one role in order to
 be offered resources. Note that `role` is deprecated
 in favor of `roles` and only one of these fields must
 be used. Since we cannot distinguish between empty
 `roles` and the default unset `role`, we require that
 frameworks set the `MULTI_ROLE` capability if
 setting the `roles` field.
 NOTE: The implmentation for supporting `roles`
 is not complete, DO NOT USE the `roles` field.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasRole()">hasRole</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getRole()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRole</h4>
<pre>@Deprecated
public&nbsp;java.lang.String&nbsp;getRole()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block"><code>optional string role = 6 [default = "*", deprecated = true];</code>

 <pre>
 Roles are the entities to which allocations are made.
 The framework must have at least one role in order to
 be offered resources. Note that `role` is deprecated
 in favor of `roles` and only one of these fields must
 be used. Since we cannot distinguish between empty
 `roles` and the default unset `role`, we require that
 frameworks set the `MULTI_ROLE` capability if
 setting the `roles` field.
 NOTE: The implmentation for supporting `roles`
 is not complete, DO NOT USE the `roles` field.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getRole()">getRole</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getRoleBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRoleBytes</h4>
<pre>@Deprecated
public&nbsp;com.google.protobuf.ByteString&nbsp;getRoleBytes()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block"><code>optional string role = 6 [default = "*", deprecated = true];</code>

 <pre>
 Roles are the entities to which allocations are made.
 The framework must have at least one role in order to
 be offered resources. Note that `role` is deprecated
 in favor of `roles` and only one of these fields must
 be used. Since we cannot distinguish between empty
 `roles` and the default unset `role`, we require that
 frameworks set the `MULTI_ROLE` capability if
 setting the `roles` field.
 NOTE: The implmentation for supporting `roles`
 is not complete, DO NOT USE the `roles` field.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getRoleBytes()">getRoleBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setRole(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRole</h4>
<pre>@Deprecated
public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setRole(java.lang.String&nbsp;value)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block"><code>optional string role = 6 [default = "*", deprecated = true];</code>

 <pre>
 Roles are the entities to which allocations are made.
 The framework must have at least one role in order to
 be offered resources. Note that `role` is deprecated
 in favor of `roles` and only one of these fields must
 be used. Since we cannot distinguish between empty
 `roles` and the default unset `role`, we require that
 frameworks set the `MULTI_ROLE` capability if
 setting the `roles` field.
 NOTE: The implmentation for supporting `roles`
 is not complete, DO NOT USE the `roles` field.
 </pre></div>
</li>
</ul>
<a name="clearRole()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearRole</h4>
<pre>@Deprecated
public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearRole()</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block"><code>optional string role = 6 [default = "*", deprecated = true];</code>

 <pre>
 Roles are the entities to which allocations are made.
 The framework must have at least one role in order to
 be offered resources. Note that `role` is deprecated
 in favor of `roles` and only one of these fields must
 be used. Since we cannot distinguish between empty
 `roles` and the default unset `role`, we require that
 frameworks set the `MULTI_ROLE` capability if
 setting the `roles` field.
 NOTE: The implmentation for supporting `roles`
 is not complete, DO NOT USE the `roles` field.
 </pre></div>
</li>
</ul>
<a name="setRoleBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRoleBytes</h4>
<pre>@Deprecated
public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setRoleBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><span class="strong">Deprecated.</span>&nbsp;</div>
<div class="block"><code>optional string role = 6 [default = "*", deprecated = true];</code>

 <pre>
 Roles are the entities to which allocations are made.
 The framework must have at least one role in order to
 be offered resources. Note that `role` is deprecated
 in favor of `roles` and only one of these fields must
 be used. Since we cannot distinguish between empty
 `roles` and the default unset `role`, we require that
 frameworks set the `MULTI_ROLE` capability if
 setting the `roles` field.
 NOTE: The implmentation for supporting `roles`
 is not complete, DO NOT USE the `roles` field.
 </pre></div>
</li>
</ul>
<a name="getRolesList()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRolesList</h4>
<pre>public&nbsp;com.google.protobuf.ProtocolStringList&nbsp;getRolesList()</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getRolesList()">getRolesList</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getRolesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRolesCount</h4>
<pre>public&nbsp;int&nbsp;getRolesCount()</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getRolesCount()">getRolesCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getRoles(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRoles</h4>
<pre>public&nbsp;java.lang.String&nbsp;getRoles(int&nbsp;index)</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getRoles(int)">getRoles</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getRolesBytes(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRolesBytes</h4>
<pre>public&nbsp;com.google.protobuf.ByteString&nbsp;getRolesBytes(int&nbsp;index)</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getRolesBytes(int)">getRolesBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setRoles(int, java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRoles</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setRoles(int&nbsp;index,
                                    java.lang.String&nbsp;value)</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
</li>
</ul>
<a name="addRoles(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRoles</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addRoles(java.lang.String&nbsp;value)</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
</li>
</ul>
<a name="addAllRoles(java.lang.Iterable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAllRoles</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addAllRoles(java.lang.Iterable&lt;java.lang.String&gt;&nbsp;values)</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
</li>
</ul>
<a name="clearRoles()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearRoles</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearRoles()</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
</li>
</ul>
<a name="addRolesBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addRolesBytes</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addRolesBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><code>repeated string roles = 12;</code>

 <pre>
 EXPERIMENTAL.
 </pre></div>
</li>
</ul>
<a name="hasHostname()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasHostname</h4>
<pre>public&nbsp;boolean&nbsp;hasHostname()</pre>
<div class="block"><code>optional string hostname = 7;</code>

 <pre>
 Used to indicate the current host from which the scheduler is
 registered in the Mesos Web UI. If set to an empty string Mesos
 will automagically set it to the current hostname if one is
 available.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasHostname()">hasHostname</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getHostname()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHostname</h4>
<pre>public&nbsp;java.lang.String&nbsp;getHostname()</pre>
<div class="block"><code>optional string hostname = 7;</code>

 <pre>
 Used to indicate the current host from which the scheduler is
 registered in the Mesos Web UI. If set to an empty string Mesos
 will automagically set it to the current hostname if one is
 available.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getHostname()">getHostname</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getHostnameBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHostnameBytes</h4>
<pre>public&nbsp;com.google.protobuf.ByteString&nbsp;getHostnameBytes()</pre>
<div class="block"><code>optional string hostname = 7;</code>

 <pre>
 Used to indicate the current host from which the scheduler is
 registered in the Mesos Web UI. If set to an empty string Mesos
 will automagically set it to the current hostname if one is
 available.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getHostnameBytes()">getHostnameBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setHostname(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHostname</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setHostname(java.lang.String&nbsp;value)</pre>
<div class="block"><code>optional string hostname = 7;</code>

 <pre>
 Used to indicate the current host from which the scheduler is
 registered in the Mesos Web UI. If set to an empty string Mesos
 will automagically set it to the current hostname if one is
 available.
 </pre></div>
</li>
</ul>
<a name="clearHostname()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearHostname</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearHostname()</pre>
<div class="block"><code>optional string hostname = 7;</code>

 <pre>
 Used to indicate the current host from which the scheduler is
 registered in the Mesos Web UI. If set to an empty string Mesos
 will automagically set it to the current hostname if one is
 available.
 </pre></div>
</li>
</ul>
<a name="setHostnameBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHostnameBytes</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setHostnameBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><code>optional string hostname = 7;</code>

 <pre>
 Used to indicate the current host from which the scheduler is
 registered in the Mesos Web UI. If set to an empty string Mesos
 will automagically set it to the current hostname if one is
 available.
 </pre></div>
</li>
</ul>
<a name="hasPrincipal()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPrincipal</h4>
<pre>public&nbsp;boolean&nbsp;hasPrincipal()</pre>
<div class="block"><code>optional string principal = 8;</code>

 <pre>
 This field should match the credential's principal the framework
 uses for authentication. This field is used for framework API
 rate limiting and dynamic reservations. It should be set even
 if authentication is not enabled if these features are desired.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasPrincipal()">hasPrincipal</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getPrincipal()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPrincipal</h4>
<pre>public&nbsp;java.lang.String&nbsp;getPrincipal()</pre>
<div class="block"><code>optional string principal = 8;</code>

 <pre>
 This field should match the credential's principal the framework
 uses for authentication. This field is used for framework API
 rate limiting and dynamic reservations. It should be set even
 if authentication is not enabled if these features are desired.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getPrincipal()">getPrincipal</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getPrincipalBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPrincipalBytes</h4>
<pre>public&nbsp;com.google.protobuf.ByteString&nbsp;getPrincipalBytes()</pre>
<div class="block"><code>optional string principal = 8;</code>

 <pre>
 This field should match the credential's principal the framework
 uses for authentication. This field is used for framework API
 rate limiting and dynamic reservations. It should be set even
 if authentication is not enabled if these features are desired.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getPrincipalBytes()">getPrincipalBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setPrincipal(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrincipal</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setPrincipal(java.lang.String&nbsp;value)</pre>
<div class="block"><code>optional string principal = 8;</code>

 <pre>
 This field should match the credential's principal the framework
 uses for authentication. This field is used for framework API
 rate limiting and dynamic reservations. It should be set even
 if authentication is not enabled if these features are desired.
 </pre></div>
</li>
</ul>
<a name="clearPrincipal()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearPrincipal</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearPrincipal()</pre>
<div class="block"><code>optional string principal = 8;</code>

 <pre>
 This field should match the credential's principal the framework
 uses for authentication. This field is used for framework API
 rate limiting and dynamic reservations. It should be set even
 if authentication is not enabled if these features are desired.
 </pre></div>
</li>
</ul>
<a name="setPrincipalBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPrincipalBytes</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setPrincipalBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><code>optional string principal = 8;</code>

 <pre>
 This field should match the credential's principal the framework
 uses for authentication. This field is used for framework API
 rate limiting and dynamic reservations. It should be set even
 if authentication is not enabled if these features are desired.
 </pre></div>
</li>
</ul>
<a name="hasWebuiUrl()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasWebuiUrl</h4>
<pre>public&nbsp;boolean&nbsp;hasWebuiUrl()</pre>
<div class="block"><code>optional string webui_url = 9;</code>

 <pre>
 This field allows a framework to advertise its web UI, so that
 the Mesos web UI can link to it. It is expected to be a full URL,
 for example http://my-scheduler.example.com:8080/.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasWebuiUrl()">hasWebuiUrl</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getWebuiUrl()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWebuiUrl</h4>
<pre>public&nbsp;java.lang.String&nbsp;getWebuiUrl()</pre>
<div class="block"><code>optional string webui_url = 9;</code>

 <pre>
 This field allows a framework to advertise its web UI, so that
 the Mesos web UI can link to it. It is expected to be a full URL,
 for example http://my-scheduler.example.com:8080/.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getWebuiUrl()">getWebuiUrl</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getWebuiUrlBytes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getWebuiUrlBytes</h4>
<pre>public&nbsp;com.google.protobuf.ByteString&nbsp;getWebuiUrlBytes()</pre>
<div class="block"><code>optional string webui_url = 9;</code>

 <pre>
 This field allows a framework to advertise its web UI, so that
 the Mesos web UI can link to it. It is expected to be a full URL,
 for example http://my-scheduler.example.com:8080/.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getWebuiUrlBytes()">getWebuiUrlBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setWebuiUrl(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setWebuiUrl</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setWebuiUrl(java.lang.String&nbsp;value)</pre>
<div class="block"><code>optional string webui_url = 9;</code>

 <pre>
 This field allows a framework to advertise its web UI, so that
 the Mesos web UI can link to it. It is expected to be a full URL,
 for example http://my-scheduler.example.com:8080/.
 </pre></div>
</li>
</ul>
<a name="clearWebuiUrl()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearWebuiUrl</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearWebuiUrl()</pre>
<div class="block"><code>optional string webui_url = 9;</code>

 <pre>
 This field allows a framework to advertise its web UI, so that
 the Mesos web UI can link to it. It is expected to be a full URL,
 for example http://my-scheduler.example.com:8080/.
 </pre></div>
</li>
</ul>
<a name="setWebuiUrlBytes(com.google.protobuf.ByteString)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setWebuiUrlBytes</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setWebuiUrlBytes(com.google.protobuf.ByteString&nbsp;value)</pre>
<div class="block"><code>optional string webui_url = 9;</code>

 <pre>
 This field allows a framework to advertise its web UI, so that
 the Mesos web UI can link to it. It is expected to be a full URL,
 for example http://my-scheduler.example.com:8080/.
 </pre></div>
</li>
</ul>
<a name="getCapabilitiesList()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilitiesList</h4>
<pre>public&nbsp;java.util.List&lt;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&gt;&nbsp;getCapabilitiesList()</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getCapabilitiesList()">getCapabilitiesList</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getCapabilitiesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilitiesCount</h4>
<pre>public&nbsp;int&nbsp;getCapabilitiesCount()</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getCapabilitiesCount()">getCapabilitiesCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getCapabilities(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;getCapabilities(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getCapabilities(int)">getCapabilities</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setCapabilities(int, org.apache.mesos.Protos.FrameworkInfo.Capability)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setCapabilities(int&nbsp;index,
                                           <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;value)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="setCapabilities(int, org.apache.mesos.Protos.FrameworkInfo.Capability.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setCapabilities(int&nbsp;index,
                                           <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="addCapabilities(org.apache.mesos.Protos.FrameworkInfo.Capability)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addCapabilities(<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;value)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="addCapabilities(int, org.apache.mesos.Protos.FrameworkInfo.Capability)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addCapabilities(int&nbsp;index,
                                           <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&nbsp;value)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="addCapabilities(org.apache.mesos.Protos.FrameworkInfo.Capability.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addCapabilities(<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="addCapabilities(int, org.apache.mesos.Protos.FrameworkInfo.Capability.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addCapabilities(int&nbsp;index,
                                           <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="addAllCapabilities(java.lang.Iterable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAllCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;addAllCapabilities(java.lang.Iterable&lt;? extends <a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability</a>&gt;&nbsp;values)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="clearCapabilities()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearCapabilities()</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="removeCapabilities(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeCapabilities</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;removeCapabilities(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="getCapabilitiesBuilder(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilitiesBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;getCapabilitiesBuilder(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="getCapabilitiesOrBuilder(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilitiesOrBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.CapabilityOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfo.CapabilityOrBuilder</a>&nbsp;getCapabilitiesOrBuilder(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getCapabilitiesOrBuilder(int)">getCapabilitiesOrBuilder</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getCapabilitiesOrBuilderList()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilitiesOrBuilderList</h4>
<pre>public&nbsp;java.util.List&lt;? extends <a href="../../../org/apache/mesos/Protos.FrameworkInfo.CapabilityOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfo.CapabilityOrBuilder</a>&gt;&nbsp;getCapabilitiesOrBuilderList()</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getCapabilitiesOrBuilderList()">getCapabilitiesOrBuilderList</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="addCapabilitiesBuilder()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCapabilitiesBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;addCapabilitiesBuilder()</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="addCapabilitiesBuilder(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addCapabilitiesBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&nbsp;addCapabilitiesBuilder(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="getCapabilitiesBuilderList()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCapabilitiesBuilderList</h4>
<pre>public&nbsp;java.util.List&lt;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Capability.Builder</a>&gt;&nbsp;getCapabilitiesBuilderList()</pre>
<div class="block"><code>repeated .mesos.FrameworkInfo.Capability capabilities = 10;</code>

 <pre>
 This field allows a framework to advertise its set of
 capabilities (e.g., ability to receive offers for revocable
 resources).
 </pre></div>
</li>
</ul>
<a name="hasLabels()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasLabels</h4>
<pre>public&nbsp;boolean&nbsp;hasLabels()</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#hasLabels()">hasLabels</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getLabels()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLabels</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Labels.html" title="class in org.apache.mesos">Protos.Labels</a>&nbsp;getLabels()</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getLabels()">getLabels</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setLabels(org.apache.mesos.Protos.Labels)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLabels</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setLabels(<a href="../../../org/apache/mesos/Protos.Labels.html" title="class in org.apache.mesos">Protos.Labels</a>&nbsp;value)</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
</li>
</ul>
<a name="setLabels(org.apache.mesos.Protos.Labels.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLabels</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;setLabels(<a href="../../../org/apache/mesos/Protos.Labels.Builder.html" title="class in org.apache.mesos">Protos.Labels.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
</li>
</ul>
<a name="mergeLabels(org.apache.mesos.Protos.Labels)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mergeLabels</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;mergeLabels(<a href="../../../org/apache/mesos/Protos.Labels.html" title="class in org.apache.mesos">Protos.Labels</a>&nbsp;value)</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
</li>
</ul>
<a name="clearLabels()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearLabels</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.FrameworkInfo.Builder.html" title="class in org.apache.mesos">Protos.FrameworkInfo.Builder</a>&nbsp;clearLabels()</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
</li>
</ul>
<a name="getLabelsBuilder()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLabelsBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Labels.Builder.html" title="class in org.apache.mesos">Protos.Labels.Builder</a>&nbsp;getLabelsBuilder()</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
</li>
</ul>
<a name="getLabelsOrBuilder()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getLabelsOrBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.LabelsOrBuilder.html" title="interface in org.apache.mesos">Protos.LabelsOrBuilder</a>&nbsp;getLabelsOrBuilder()</pre>
<div class="block"><code>optional .mesos.Labels labels = 11;</code>

 <pre>
 Labels are free-form key value pairs supplied by the framework
 scheduler (e.g., to describe additional functionality offered by
 the framework). These labels are not interpreted by Mesos itself.
 Labels should not contain duplicate key-value pairs.
 </pre></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html#getLabelsOrBuilder()">getLabelsOrBuilder</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.FrameworkInfoOrBuilder.html" title="interface in org.apache.mesos">Protos.FrameworkInfoOrBuilder</a></code></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><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../org/apache/mesos/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/mesos/Protos.FrameworkInfo.html" title="class in org.apache.mesos"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/mesos/Protos.FrameworkInfo.Capability.html" title="class in org.apache.mesos"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/mesos/Protos.FrameworkInfo.Builder.html" target="_top">Frames</a></li>
<li><a href="Protos.FrameworkInfo.Builder.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All 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>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>
