<!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:28 UTC 2017 -->
<title>Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.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.Offer.Operation.Reserve.html" title="class in org.apache.mesos"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface 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.Offer.Operation.Reserve.Builder.html" target="_top">Frames</a></li>
<li><a href="Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder" class="title">Class Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.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.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</a></dd>
</dl>
<hr>
<br>
<pre>public static final class <span class="strong">Protos.Offer.Operation.Reserve.Builder</span>
extends <any>
implements <a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></pre>
<div class="block">Protobuf type <code>mesos.Offer.Operation.Reserve</code></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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addAllResources(java.lang.Iterable)">addAllResources</a></strong>(java.lang.Iterable&lt;? extends <a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&gt;&nbsp;values)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addResources(int,%20org.apache.mesos.Protos.Resource.Builder)">addResources</a></strong>(int&nbsp;index,
            <a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addResources(int,%20org.apache.mesos.Protos.Resource)">addResources</a></strong>(int&nbsp;index,
            <a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;value)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addResources(org.apache.mesos.Protos.Resource.Builder)">addResources</a></strong>(<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addResources(org.apache.mesos.Protos.Resource)">addResources</a></strong>(<a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;value)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addResourcesBuilder()">addResourcesBuilder</a></strong>()</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#addResourcesBuilder(int)">addResourcesBuilder</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#build()">build</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#buildPartial()">buildPartial</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#clear()">clear</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#clearResources()">clearResources</a></strong>()</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#clone()">clone</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder.html#getDescriptorForType()">getDescriptorForType</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#getResources(int)">getResources</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#getResourcesBuilder(int)">getResourcesBuilder</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#getResourcesBuilderList()">getResourcesBuilderList</a></strong>()</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</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.Offer.Operation.Reserve.Builder.html#getResourcesCount()">getResourcesCount</a></strong>()</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#getResourcesList()">getResourcesList</a></strong>()</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.ResourceOrBuilder.html" title="interface in org.apache.mesos">Protos.ResourceOrBuilder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#getResourcesOrBuilder(int)">getResourcesOrBuilder</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>java.util.List&lt;? extends <a href="../../../org/apache/mesos/Protos.ResourceOrBuilder.html" title="interface in org.apache.mesos">Protos.ResourceOrBuilder</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#getResourcesOrBuilderList()">getResourcesOrBuilderList</a></strong>()</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</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.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder.html#isInitialized()">isInitialized</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#removeResources(int)">removeResources</a></strong>(int&nbsp;index)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#setResources(int,%20org.apache.mesos.Protos.Resource.Builder)">setResources</a></strong>(int&nbsp;index,
            <a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;builderForValue)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html#setResources(int,%20org.apache.mesos.Protos.Resource)">setResources</a></strong>(int&nbsp;index,
            <a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;value)</code>
<div class="block"><code>repeated .mesos.Resource resources = 1;</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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</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.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</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.Offer.Operation.Reserve.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve</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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.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.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.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="getResourcesList()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourcesList</h4>
<pre>public&nbsp;java.util.List&lt;<a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&gt;&nbsp;getResourcesList()</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html#getResourcesList()">getResourcesList</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getResourcesCount()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourcesCount</h4>
<pre>public&nbsp;int&nbsp;getResourcesCount()</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html#getResourcesCount()">getResourcesCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getResources(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;getResources(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html#getResources(int)">getResources</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="setResources(int, org.apache.mesos.Protos.Resource)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;setResources(int&nbsp;index,
                                                  <a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;value)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="setResources(int, org.apache.mesos.Protos.Resource.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;setResources(int&nbsp;index,
                                                  <a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="addResources(org.apache.mesos.Protos.Resource)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;addResources(<a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;value)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="addResources(int, org.apache.mesos.Protos.Resource)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;addResources(int&nbsp;index,
                                                  <a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&nbsp;value)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="addResources(org.apache.mesos.Protos.Resource.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;addResources(<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="addResources(int, org.apache.mesos.Protos.Resource.Builder)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;addResources(int&nbsp;index,
                                                  <a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;builderForValue)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="addAllResources(java.lang.Iterable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addAllResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;addAllResources(java.lang.Iterable&lt;? extends <a href="../../../org/apache/mesos/Protos.Resource.html" title="class in org.apache.mesos">Protos.Resource</a>&gt;&nbsp;values)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="clearResources()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;clearResources()</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="removeResources(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeResources</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Offer.Operation.Reserve.Builder.html" title="class in org.apache.mesos">Protos.Offer.Operation.Reserve.Builder</a>&nbsp;removeResources(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="getResourcesBuilder(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourcesBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;getResourcesBuilder(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="getResourcesOrBuilder(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourcesOrBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.ResourceOrBuilder.html" title="interface in org.apache.mesos">Protos.ResourceOrBuilder</a>&nbsp;getResourcesOrBuilder(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html#getResourcesOrBuilder(int)">getResourcesOrBuilder</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="getResourcesOrBuilderList()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResourcesOrBuilderList</h4>
<pre>public&nbsp;java.util.List&lt;? extends <a href="../../../org/apache/mesos/Protos.ResourceOrBuilder.html" title="interface in org.apache.mesos">Protos.ResourceOrBuilder</a>&gt;&nbsp;getResourcesOrBuilderList()</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html#getResourcesOrBuilderList()">getResourcesOrBuilderList</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface in org.apache.mesos">Protos.Offer.Operation.ReserveOrBuilder</a></code></dd>
</dl>
</li>
</ul>
<a name="addResourcesBuilder()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addResourcesBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;addResourcesBuilder()</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="addResourcesBuilder(int)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addResourcesBuilder</h4>
<pre>public&nbsp;<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&nbsp;addResourcesBuilder(int&nbsp;index)</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</li>
</ul>
<a name="getResourcesBuilderList()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getResourcesBuilderList</h4>
<pre>public&nbsp;java.util.List&lt;<a href="../../../org/apache/mesos/Protos.Resource.Builder.html" title="class in org.apache.mesos">Protos.Resource.Builder</a>&gt;&nbsp;getResourcesBuilderList()</pre>
<div class="block"><code>repeated .mesos.Resource resources = 1;</code></div>
</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.Offer.Operation.Reserve.html" title="class in org.apache.mesos"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/mesos/Protos.Offer.Operation.ReserveOrBuilder.html" title="interface 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.Offer.Operation.Reserve.Builder.html" target="_top">Frames</a></li>
<li><a href="Protos.Offer.Operation.Reserve.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>
