<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>FlightSql.CommandGetDbSchemasOrBuilder (Apache Arrow Java Root POM 17.0.0-SNAPSHOT API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.arrow.flight.sql.impl, class: FlightSql, interface: CommandGetDbSchemasOrBuilder">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/FlightSql.CommandGetDbSchemasOrBuilder.html">Use</a></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#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<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="sub-nav-list">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.arrow.flight.sql.impl</a></div>
<h1 title="Interface FlightSql.CommandGetDbSchemasOrBuilder" class="title">Interface FlightSql.CommandGetDbSchemasOrBuilder</h1>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Superinterfaces:</dt>
<dd><code>com.google.protobuf.MessageLiteOrBuilder</code>, <code>com.google.protobuf.MessageOrBuilder</code></dd>
</dl>
<dl class="notes">
<dt>All Known Implementing Classes:</dt>
<dd><code><a href="FlightSql.CommandGetDbSchemas.html" title="class in org.apache.arrow.flight.sql.impl">FlightSql.CommandGetDbSchemas</a></code>, <code><a href="FlightSql.CommandGetDbSchemas.Builder.html" title="class in org.apache.arrow.flight.sql.impl">FlightSql.CommandGetDbSchemas.Builder</a></code></dd>
</dl>
<dl class="notes">
<dt>Enclosing class:</dt>
<dd><a href="FlightSql.html" title="class in org.apache.arrow.flight.sql.impl">FlightSql</a></dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public static interface </span><span class="element-name type-name-label">FlightSql.CommandGetDbSchemasOrBuilder</span><span class="extends-implements">
extends com.google.protobuf.MessageOrBuilder</span></div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab3" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab3', 3)" class="table-tab">Abstract Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getCatalog()" class="member-name-link">getCatalog</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">

 Specifies the Catalog to search for the tables.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getCatalogBytes()" class="member-name-link">getCatalogBytes</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">

 Specifies the Catalog to search for the tables.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getDbSchemaFilterPattern()" class="member-name-link">getDbSchemaFilterPattern</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">

 Specifies a filter pattern for schemas to search for.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>com.google.protobuf.ByteString</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#getDbSchemaFilterPatternBytes()" class="member-name-link">getDbSchemaFilterPatternBytes</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">

 Specifies a filter pattern for schemas to search for.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#hasCatalog()" class="member-name-link">hasCatalog</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">

 Specifies the Catalog to search for the tables.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#hasDbSchemaFilterPattern()" class="member-name-link">hasDbSchemaFilterPattern</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">

 Specifies a filter pattern for schemas to search for.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.MessageLiteOrBuilder">Methods inherited from interface&nbsp;com.google.protobuf.MessageLiteOrBuilder</h3>
<code>isInitialized</code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-com.google.protobuf.MessageOrBuilder">Methods inherited from interface&nbsp;com.google.protobuf.MessageOrBuilder</h3>
<code>findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof</code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="hasCatalog()">
<h3>hasCatalog</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">hasCatalog</span>()</div>
<div class="block"><pre>

 Specifies the Catalog to search for the tables.
 An empty string retrieves those without a catalog.
 If omitted the catalog name should not be used to narrow the search.
 </pre>

 <code>optional string catalog = 1;</code></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>Whether the catalog field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCatalog()">
<h3>getCatalog</h3>
<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getCatalog</span>()</div>
<div class="block"><pre>

 Specifies the Catalog to search for the tables.
 An empty string retrieves those without a catalog.
 If omitted the catalog name should not be used to narrow the search.
 </pre>

 <code>optional string catalog = 1;</code></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The catalog.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getCatalogBytes()">
<h3>getCatalogBytes</h3>
<div class="member-signature"><span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getCatalogBytes</span>()</div>
<div class="block"><pre>

 Specifies the Catalog to search for the tables.
 An empty string retrieves those without a catalog.
 If omitted the catalog name should not be used to narrow the search.
 </pre>

 <code>optional string catalog = 1;</code></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The bytes for catalog.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="hasDbSchemaFilterPattern()">
<h3>hasDbSchemaFilterPattern</h3>
<div class="member-signature"><span class="return-type">boolean</span>&nbsp;<span class="element-name">hasDbSchemaFilterPattern</span>()</div>
<div class="block"><pre>

 Specifies a filter pattern for schemas to search for.
 When no db_schema_filter_pattern is provided, the pattern will not be used to narrow the search.
 In the pattern string, two special characters can be used to denote matching rules:
    - "%" means to match any substring with 0 or more characters.
    - "_" means to match any one character.
 </pre>

 <code>optional string db_schema_filter_pattern = 2;</code></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>Whether the dbSchemaFilterPattern field is set.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDbSchemaFilterPattern()">
<h3>getDbSchemaFilterPattern</h3>
<div class="member-signature"><span class="return-type"><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name">getDbSchemaFilterPattern</span>()</div>
<div class="block"><pre>

 Specifies a filter pattern for schemas to search for.
 When no db_schema_filter_pattern is provided, the pattern will not be used to narrow the search.
 In the pattern string, two special characters can be used to denote matching rules:
    - "%" means to match any substring with 0 or more characters.
    - "_" means to match any one character.
 </pre>

 <code>optional string db_schema_filter_pattern = 2;</code></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The dbSchemaFilterPattern.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getDbSchemaFilterPatternBytes()">
<h3>getDbSchemaFilterPatternBytes</h3>
<div class="member-signature"><span class="return-type">com.google.protobuf.ByteString</span>&nbsp;<span class="element-name">getDbSchemaFilterPatternBytes</span>()</div>
<div class="block"><pre>

 Specifies a filter pattern for schemas to search for.
 When no db_schema_filter_pattern is provided, the pattern will not be used to narrow the search.
 In the pattern string, two special characters can be used to denote matching rules:
    - "%" means to match any substring with 0 or more characters.
    - "_" means to match any one character.
 </pre>

 <code>optional string db_schema_filter_pattern = 2;</code></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>The bytes for dbSchemaFilterPattern.</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2023 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>
