<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>GcsOptions (Apache Beam 2.38.0-SNAPSHOT)</title>
<link rel="stylesheet" type="text/css" href="../../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="GcsOptions (Apache Beam 2.38.0-SNAPSHOT)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpPipelineOptionsRegistrar.html" title="class in org.apache.beam.sdk.extensions.gcp.options"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.ExecutorServiceFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html" target="_top">Frames</a></li>
<li><a href="GcsOptions.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&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.beam.sdk.extensions.gcp.options</div>
<h2 title="Interface GcsOptions" class="title">Interface GcsOptions</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../../../../org/apache/beam/sdk/options/ApplicationNameOptions.html" title="interface in org.apache.beam.sdk.options">ApplicationNameOptions</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GcpOptions</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GoogleApiDebugOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GoogleApiDebugOptions</a>, <a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html" title="interface in org.apache.beam.sdk.options">PipelineOptions</a></dd>
</dl>
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../../../../../../org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.html" title="interface in org.apache.beam.runners.dataflow.options">DataflowPipelineOptions</a>, <a href="../../../../../../../org/apache/beam/runners/dataflow/options/DataflowWorkerHarnessOptions.html" title="interface in org.apache.beam.runners.dataflow.options">DataflowWorkerHarnessOptions</a>, <a href="../../../../../../../org/apache/beam/runners/dataflow/TestDataflowPipelineOptions.html" title="interface in org.apache.beam.runners.dataflow">TestDataflowPipelineOptions</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">GcsOptions</span>
extends <a href="../../../../../../../org/apache/beam/sdk/options/ApplicationNameOptions.html" title="interface in org.apache.beam.sdk.options">ApplicationNameOptions</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GcpOptions</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html" title="interface in org.apache.beam.sdk.options">PipelineOptions</a></pre>
<div class="block">Options used to configure Google Cloud Storage.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Interface and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.ExecutorServiceFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcsOptions.ExecutorServiceFactory</a></span></code>
<div class="block">Returns the default <code>ExecutorService</code> to use within the Apache Beam SDK.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.PathValidatorFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcsOptions.PathValidatorFactory</a></span></code>
<div class="block">Creates a <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage"><code>PathValidator</code></a> object using the class specified in <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getPathValidatorClass--"><code>getPathValidatorClass()</code></a>.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.beam.sdk.extensions.gcp.options.GcpOptions">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.beam.sdk.extensions.gcp.options.<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GcpOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.DefaultProjectFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcpOptions.DefaultProjectFactory</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.EnableStreamingEngineFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcpOptions.EnableStreamingEngineFactory</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.GcpTempLocationFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcpOptions.GcpTempLocationFactory</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.GcpUserCredentialsFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcpOptions.GcpUserCredentialsFactory</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.beam.sdk.extensions.gcp.options.GoogleApiDebugOptions">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.beam.sdk.extensions.gcp.options.<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GoogleApiDebugOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GoogleApiDebugOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GoogleApiDebugOptions.GoogleApiTracer.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GoogleApiDebugOptions.GoogleApiTracer</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.beam.sdk.options.PipelineOptions">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;org.apache.beam.sdk.options.<a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html" title="interface in org.apache.beam.sdk.options">PipelineOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.AtomicLongFactory.html" title="class in org.apache.beam.sdk.options">PipelineOptions.AtomicLongFactory</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.CheckEnabled.html" title="enum in org.apache.beam.sdk.options">PipelineOptions.CheckEnabled</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.DirectRunner.html" title="class in org.apache.beam.sdk.options">PipelineOptions.DirectRunner</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.JobNameFactory.html" title="class in org.apache.beam.sdk.options">PipelineOptions.JobNameFactory</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.UserAgentFactory.html" title="class in org.apache.beam.sdk.options">PipelineOptions.UserAgentFactory</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.beam.sdk.extensions.gcp.options.GcpOptions">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.beam.sdk.extensions.gcp.options.<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GcpOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#STREAMING_ENGINE_EXPERIMENT">STREAMING_ENGINE_EXPERIMENT</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#WINDMILL_SERVICE_EXPERIMENT">WINDMILL_SERVICE_EXPERIMENT</a></code></li>
</ul>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.util.concurrent.ExecutorService</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getExecutorService--">getExecutorService</a></span>()</code>
<div class="block">The ExecutorService instance to use to create threads, can be overridden to specify an
 ExecutorService that is compatible with the user's environment.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getGcsEndpoint--">getGcsEndpoint</a></span>()</code>
<div class="block">GCS endpoint to use.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>java.lang.Boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getGcsPerformanceMetrics--">getGcsPerformanceMetrics</a></span>()</code>
<div class="block">If true, reports metrics of certain operations, such as batch copies.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="https://static.javadoc.io/org.checkerframework/checker-qual/3.10.0/org/checkerframework/checker/nullness/qual/Nullable.html?is-external=true" title="class or interface in org.checkerframework.checker.nullness.qual">@Nullable</a> java.lang.Integer</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getGcsUploadBufferSizeBytes--">getGcsUploadBufferSizeBytes</a></span>()</code>
<div class="block">The buffer size (in bytes) to use when uploading files to GCS.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/util/GcsUtil.html" title="class in org.apache.beam.sdk.extensions.gcp.util">GcsUtil</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getGcsUtil--">getGcsUtil</a></span>()</code>
<div class="block">The GcsUtil instance that should be used to communicate with Google Cloud Storage.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getPathValidator--">getPathValidator</a></span>()</code>
<div class="block">The path validator instance that should be used to validate paths.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>java.lang.Class&lt;? extends <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#getPathValidatorClass--">getPathValidatorClass</a></span>()</code>
<div class="block">The class of the validator that should be created and used to validate paths.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setExecutorService-java.util.concurrent.ExecutorService-">setExecutorService</a></span>(java.util.concurrent.ExecutorService&nbsp;value)</code>&nbsp;</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setGcsEndpoint-java.lang.String-">setGcsEndpoint</a></span>(java.lang.String&nbsp;value)</code>&nbsp;</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setGcsPerformanceMetrics-java.lang.Boolean-">setGcsPerformanceMetrics</a></span>(java.lang.Boolean&nbsp;reportPerformanceMetrics)</code>&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setGcsUploadBufferSizeBytes-java.lang.Integer-">setGcsUploadBufferSizeBytes</a></span>(<a href="https://static.javadoc.io/org.checkerframework/checker-qual/3.10.0/org/checkerframework/checker/nullness/qual/Nullable.html?is-external=true" title="class or interface in org.checkerframework.checker.nullness.qual">@Nullable</a> java.lang.Integer&nbsp;bytes)</code>&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setGcsUtil-org.apache.beam.sdk.extensions.gcp.util.GcsUtil-">setGcsUtil</a></span>(<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/util/GcsUtil.html" title="class in org.apache.beam.sdk.extensions.gcp.util">GcsUtil</a>&nbsp;value)</code>&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setPathValidator-org.apache.beam.sdk.extensions.gcp.storage.PathValidator-">setPathValidator</a></span>(<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&nbsp;validator)</code>&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html#setPathValidatorClass-java.lang.Class-">setPathValidatorClass</a></span>(java.lang.Class&lt;? extends <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&gt;&nbsp;validatorClass)</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.beam.sdk.options.ApplicationNameOptions">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.beam.sdk.options.<a href="../../../../../../../org/apache/beam/sdk/options/ApplicationNameOptions.html" title="interface in org.apache.beam.sdk.options">ApplicationNameOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/options/ApplicationNameOptions.html#getAppName--">getAppName</a>, <a href="../../../../../../../org/apache/beam/sdk/options/ApplicationNameOptions.html#setAppName-java.lang.String-">setAppName</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.beam.sdk.extensions.gcp.options.GcpOptions">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.beam.sdk.extensions.gcp.options.<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GcpOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getCredentialFactoryClass--">getCredentialFactoryClass</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getDataflowKmsKey--">getDataflowKmsKey</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getGcpCredential--">getGcpCredential</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getGcpTempLocation--">getGcpTempLocation</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getProject--">getProject</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getWorkerRegion--">getWorkerRegion</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getWorkerZone--">getWorkerZone</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#getZone--">getZone</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#isEnableStreamingEngine--">isEnableStreamingEngine</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setCredentialFactoryClass-java.lang.Class-">setCredentialFactoryClass</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setDataflowKmsKey-java.lang.String-">setDataflowKmsKey</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setEnableStreamingEngine-boolean-">setEnableStreamingEngine</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setGcpCredential-com.google.auth.Credentials-">setGcpCredential</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setGcpTempLocation-java.lang.String-">setGcpTempLocation</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setProject-java.lang.String-">setProject</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setWorkerRegion-java.lang.String-">setWorkerRegion</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setWorkerZone-java.lang.String-">setWorkerZone</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpOptions.html#setZone-java.lang.String-">setZone</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.beam.sdk.extensions.gcp.options.GoogleApiDebugOptions">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.beam.sdk.extensions.gcp.options.<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GoogleApiDebugOptions.html" title="interface in org.apache.beam.sdk.extensions.gcp.options">GoogleApiDebugOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GoogleApiDebugOptions.html#getGoogleApiTrace--">getGoogleApiTrace</a>, <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GoogleApiDebugOptions.html#setGoogleApiTrace-org.apache.beam.sdk.extensions.gcp.options.GoogleApiDebugOptions.GoogleApiTracer-">setGoogleApiTrace</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.beam.sdk.options.PipelineOptions">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.beam.sdk.options.<a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html" title="interface in org.apache.beam.sdk.options">PipelineOptions</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#as-java.lang.Class-">as</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#getJobName--">getJobName</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#getOptionsId--">getOptionsId</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#getRunner--">getRunner</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#getStableUniqueNames--">getStableUniqueNames</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#getTempLocation--">getTempLocation</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#getUserAgent--">getUserAgent</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#outputRuntimeOptions--">outputRuntimeOptions</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#setJobName-java.lang.String-">setJobName</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#setOptionsId-long-">setOptionsId</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#setRunner-java.lang.Class-">setRunner</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#setStableUniqueNames-org.apache.beam.sdk.options.PipelineOptions.CheckEnabled-">setStableUniqueNames</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#setTempLocation-java.lang.String-">setTempLocation</a>, <a href="../../../../../../../org/apache/beam/sdk/options/PipelineOptions.html#setUserAgent-java.lang.String-">setUserAgent</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.beam.sdk.transforms.display.HasDisplayData">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.beam.sdk.transforms.display.<a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html" title="interface in org.apache.beam.sdk.transforms.display">HasDisplayData</a></h3>
<code><a href="../../../../../../../org/apache/beam/sdk/transforms/display/HasDisplayData.html#populateDisplayData-org.apache.beam.sdk.transforms.display.DisplayData.Builder-">populateDisplayData</a></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="getGcsUtil--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGcsUtil</h4>
<pre><a href="../../../../../../../org/apache/beam/sdk/options/Default.InstanceFactory.html" title="annotation in org.apache.beam.sdk.options">@Default.InstanceFactory</a>(<a href="../../../../../../../org/apache/beam/sdk/options/Default.InstanceFactory.html#value--">value</a>=<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/util/GcsUtil.GcsUtilFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.util">GcsUtil.GcsUtilFactory.class</a>)
 <a href="../../../../../../../org/apache/beam/sdk/options/Hidden.html" title="annotation in org.apache.beam.sdk.options">@Hidden</a>
<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/util/GcsUtil.html" title="class in org.apache.beam.sdk.extensions.gcp.util">GcsUtil</a>&nbsp;getGcsUtil()</pre>
<div class="block">The GcsUtil instance that should be used to communicate with Google Cloud Storage.</div>
</li>
</ul>
<a name="setGcsUtil-org.apache.beam.sdk.extensions.gcp.util.GcsUtil-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setGcsUtil</h4>
<pre>void&nbsp;setGcsUtil(<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/util/GcsUtil.html" title="class in org.apache.beam.sdk.extensions.gcp.util">GcsUtil</a>&nbsp;value)</pre>
</li>
</ul>
<a name="getExecutorService--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getExecutorService</h4>
<pre><a href="../../../../../../../org/apache/beam/sdk/options/Default.InstanceFactory.html" title="annotation in org.apache.beam.sdk.options">@Default.InstanceFactory</a>(<a href="../../../../../../../org/apache/beam/sdk/options/Default.InstanceFactory.html#value--">value</a>=<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.ExecutorServiceFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcsOptions.ExecutorServiceFactory.class</a>)
 <a href="../../../../../../../org/apache/beam/sdk/options/Hidden.html" title="annotation in org.apache.beam.sdk.options">@Hidden</a>
java.util.concurrent.ExecutorService&nbsp;getExecutorService()</pre>
<div class="block">The ExecutorService instance to use to create threads, can be overridden to specify an
 ExecutorService that is compatible with the user's environment. If unset, the default is to
 create an ExecutorService with an unbounded number of threads; this is compatible with Google
 AppEngine.</div>
</li>
</ul>
<a name="setExecutorService-java.util.concurrent.ExecutorService-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExecutorService</h4>
<pre>void&nbsp;setExecutorService(java.util.concurrent.ExecutorService&nbsp;value)</pre>
</li>
</ul>
<a name="getGcsEndpoint--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGcsEndpoint</h4>
<pre><a href="../../../../../../../org/apache/beam/sdk/options/Hidden.html" title="annotation in org.apache.beam.sdk.options">@Hidden</a>
java.lang.String&nbsp;getGcsEndpoint()</pre>
<div class="block">GCS endpoint to use. If unspecified, uses the default endpoint.</div>
</li>
</ul>
<a name="setGcsEndpoint-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setGcsEndpoint</h4>
<pre>void&nbsp;setGcsEndpoint(java.lang.String&nbsp;value)</pre>
</li>
</ul>
<a name="getGcsUploadBufferSizeBytes--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGcsUploadBufferSizeBytes</h4>
<pre><a href="https://static.javadoc.io/org.checkerframework/checker-qual/3.10.0/org/checkerframework/checker/nullness/qual/Nullable.html?is-external=true" title="class or interface in org.checkerframework.checker.nullness.qual">@Nullable</a> java.lang.Integer&nbsp;getGcsUploadBufferSizeBytes()</pre>
<div class="block">The buffer size (in bytes) to use when uploading files to GCS. Please see the documentation for
 <a href="https://static.javadoc.io/com.google.cloud.bigdataoss/util/2.2.4/com/google/cloud/hadoop/util/AsyncWriteChannelOptions.html?is-external=true#getUploadChunkSize--" title="class or interface in com.google.cloud.hadoop.util"><code>AsyncWriteChannelOptions.getUploadChunkSize()</code></a> for more information on the restrictions
 and performance implications of this value.</div>
</li>
</ul>
<a name="setGcsUploadBufferSizeBytes-java.lang.Integer-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setGcsUploadBufferSizeBytes</h4>
<pre>void&nbsp;setGcsUploadBufferSizeBytes(<a href="https://static.javadoc.io/org.checkerframework/checker-qual/3.10.0/org/checkerframework/checker/nullness/qual/Nullable.html?is-external=true" title="class or interface in org.checkerframework.checker.nullness.qual">@Nullable</a> java.lang.Integer&nbsp;bytes)</pre>
</li>
</ul>
<a name="getPathValidatorClass--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPathValidatorClass</h4>
<pre><a href="../../../../../../../org/apache/beam/sdk/options/Default.Class.html" title="annotation in org.apache.beam.sdk.options">@Default.Class</a>(<a href="../../../../../../../org/apache/beam/sdk/options/Default.Class.html#value--">value</a>=<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/GcsPathValidator.html" title="class in org.apache.beam.sdk.extensions.gcp.storage">GcsPathValidator.class</a>)
java.lang.Class&lt;? extends <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&gt;&nbsp;getPathValidatorClass()</pre>
<div class="block">The class of the validator that should be created and used to validate paths. If pathValidator
 has not been set explicitly, an instance of this class will be constructed and used as the path
 validator.</div>
</li>
</ul>
<a name="setPathValidatorClass-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPathValidatorClass</h4>
<pre>void&nbsp;setPathValidatorClass(java.lang.Class&lt;? extends <a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&gt;&nbsp;validatorClass)</pre>
</li>
</ul>
<a name="getPathValidator--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPathValidator</h4>
<pre><a href="../../../../../../../org/apache/beam/sdk/options/Default.InstanceFactory.html" title="annotation in org.apache.beam.sdk.options">@Default.InstanceFactory</a>(<a href="../../../../../../../org/apache/beam/sdk/options/Default.InstanceFactory.html#value--">value</a>=<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.PathValidatorFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options">GcsOptions.PathValidatorFactory.class</a>)
<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&nbsp;getPathValidator()</pre>
<div class="block">The path validator instance that should be used to validate paths. If no path validator has
 been set explicitly, the default is to use the instance factory that constructs a path
 validator based upon the currently set pathValidatorClass.</div>
</li>
</ul>
<a name="setPathValidator-org.apache.beam.sdk.extensions.gcp.storage.PathValidator-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPathValidator</h4>
<pre>void&nbsp;setPathValidator(<a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/storage/PathValidator.html" title="interface in org.apache.beam.sdk.extensions.gcp.storage">PathValidator</a>&nbsp;validator)</pre>
</li>
</ul>
<a name="getGcsPerformanceMetrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGcsPerformanceMetrics</h4>
<pre><a href="../../../../../../../org/apache/beam/sdk/options/Default.Boolean.html" title="annotation in org.apache.beam.sdk.options">@Default.Boolean</a>(<a href="../../../../../../../org/apache/beam/sdk/options/Default.Boolean.html#value--">value</a>=false)
 <a href="../../../../../../../org/apache/beam/sdk/annotations/Experimental.html" title="annotation in org.apache.beam.sdk.annotations">@Experimental</a>(<a href="../../../../../../../org/apache/beam/sdk/annotations/Experimental.html#value--">value</a>=<a href="../../../../../../../org/apache/beam/sdk/annotations/Experimental.Kind.html#FILESYSTEM">FILESYSTEM</a>)
java.lang.Boolean&nbsp;getGcsPerformanceMetrics()</pre>
<div class="block">If true, reports metrics of certain operations, such as batch copies.</div>
</li>
</ul>
<a name="setGcsPerformanceMetrics-java.lang.Boolean-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setGcsPerformanceMetrics</h4>
<pre>void&nbsp;setGcsPerformanceMetrics(java.lang.Boolean&nbsp;reportPerformanceMetrics)</pre>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcpPipelineOptionsRegistrar.html" title="class in org.apache.beam.sdk.extensions.gcp.options"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../../org/apache/beam/sdk/extensions/gcp/options/GcsOptions.ExecutorServiceFactory.html" title="class in org.apache.beam.sdk.extensions.gcp.options"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../index.html?org/apache/beam/sdk/extensions/gcp/options/GcsOptions.html" target="_top">Frames</a></li>
<li><a href="GcsOptions.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&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>
