<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>SaslServerListener (Qpid ProtonJ2 Parent 1.0.0-M18 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.qpid.protonj2.engine.sasl, interface: SaslServerListener">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../../script.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";
</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/SaslServerListener.html">Use</a></li>
<li><a href="package-tree.html">Tree</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>
<!-- ========= 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.qpid.protonj2.engine.sasl</a></div>
<h1 title="Interface SaslServerListener" class="title">Interface SaslServerListener</h1>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="type-signature"><span class="modifiers">public interface </span><span class="element-name type-name-label">SaslServerListener</span></div>
<div class="block">Listener for SASL frame arrival to facilitate relevant handling for the SASL
 negotiation of the server side of the SASL exchange.

 See the AMQP specification
 <a href="http://docs.oasis-open.org/amqp/core/v1.0/os/amqp-core-security-v1.0-os.html#doc-idp51040">
 SASL negotiation process</a> overview for related detail.</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><button id="method-summary-table-tab5" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab5', 3)" class="table-tab">Default 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>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#handleSaslHeader(org.apache.qpid.protonj2.engine.sasl.SaslServerContext,org.apache.qpid.protonj2.types.transport.AMQPHeader)" class="member-name-link">handleSaslHeader</a><wbr>(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context,
 <a href="../../types/transport/AMQPHeader.html" title="class in org.apache.qpid.protonj2.types.transport">AMQPHeader</a>&nbsp;header)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called when the SASL header has been received and the server is now ready to send the configured SASL
 mechanisms.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#handleSaslInit(org.apache.qpid.protonj2.engine.sasl.SaslServerContext,org.apache.qpid.protonj2.types.Symbol,org.apache.qpid.protonj2.buffer.ProtonBuffer)" class="member-name-link">handleSaslInit</a><wbr>(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context,
 <a href="../../types/Symbol.html" title="class in org.apache.qpid.protonj2.types">Symbol</a>&nbsp;mechanism,
 <a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;initResponse)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called when a SASL init frame has arrived from the client indicating the chosen SASL mechanism
 and the initial response data if any.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3"><code><a href="#handleSaslResponse(org.apache.qpid.protonj2.engine.sasl.SaslServerContext,org.apache.qpid.protonj2.buffer.ProtonBuffer)" class="member-name-link">handleSaslResponse</a><wbr>(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context,
 <a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;response)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab3">
<div class="block">Called when a SASL response frame has arrived from the client.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code>default void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5"><code><a href="#initialize(org.apache.qpid.protonj2.engine.sasl.SaslServerContext)" class="member-name-link">initialize</a><wbr>(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab5">
<div class="block">Called to give the application code a clear point to initialize all the Server side expectations.</div>
</div>
</div>
</div>
</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="initialize(org.apache.qpid.protonj2.engine.sasl.SaslServerContext)">
<h3>initialize</h3>
<div class="member-signature"><span class="modifiers">default</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">initialize</span><wbr><span class="parameters">(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context)</span></div>
<div class="block">Called to give the application code a clear point to initialize all the Server side expectations.
 <p>
 The application should use this event to configure the server mechanisms and other server
 authentication properties.
 <p>
 In the event that the server implementation cannot proceed with SASL authentication it should call the
 <a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a> signal
 the <a href="../Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> that it should transition to a failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>context</code> - the <a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl"><code>SaslServerContext</code></a> used to authenticate the connection.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="handleSaslHeader(org.apache.qpid.protonj2.engine.sasl.SaslServerContext,org.apache.qpid.protonj2.types.transport.AMQPHeader)">
<h3>handleSaslHeader</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">handleSaslHeader</span><wbr><span class="parameters">(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context,
 <a href="../../types/transport/AMQPHeader.html" title="class in org.apache.qpid.protonj2.types.transport">AMQPHeader</a>&nbsp;header)</span></div>
<div class="block">Called when the SASL header has been received and the server is now ready to send the configured SASL
 mechanisms.  The handler should respond be calling the <a href="SaslServerContext.html#sendMechanisms(org.apache.qpid.protonj2.types.Symbol%5B%5D)"><code>SaslServerContext.sendMechanisms(Symbol[])</code></a>
 method immediately or later using the same thread that invoked this event handler.
 <p>
 In the event that the server implementation cannot proceed with SASL authentication it should call the
 <a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a> to fail
 the SASL negotiation and signal the <a href="../Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> that it should transition to a failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>context</code> - the <a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl"><code>SaslServerContext</code></a> object that received the SASL header.</dd>
<dd><code>header</code> - the AMQP Header that was read.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="SaslServerContext.html#sendMechanisms(org.apache.qpid.protonj2.types.Symbol%5B%5D)"><code>SaslServerContext.sendMechanisms(Symbol[])</code></a></li>
<li><a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="handleSaslInit(org.apache.qpid.protonj2.engine.sasl.SaslServerContext,org.apache.qpid.protonj2.types.Symbol,org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<h3>handleSaslInit</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">handleSaslInit</span><wbr><span class="parameters">(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context,
 <a href="../../types/Symbol.html" title="class in org.apache.qpid.protonj2.types">Symbol</a>&nbsp;mechanism,
 <a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;initResponse)</span></div>
<div class="block">Called when a SASL init frame has arrived from the client indicating the chosen SASL mechanism
 and the initial response data if any.  Based on the chosen mechanism the server handler should provide
 additional challenges or complete the SASL negotiation by sending an outcome to the client.  The handler
 can either respond immediately or it should response using the same thread that invoked this handler.
 <p>
 In the event that the server implementation cannot proceed with SASL authentication it should call the
 <a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a> to fail
 the SASL negotiation and signal the <a href="../Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> that it should transition to a failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>context</code> - the <a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl"><code>SaslServerContext</code></a> object that is to process the SASL initial frame.</dd>
<dd><code>mechanism</code> - the SASL mechanism that the client side has chosen for negotiations.</dd>
<dd><code>initResponse</code> - the initial response sent by the remote.</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="SaslServerContext.html#sendChallenge(org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>SaslServerContext.sendChallenge(ProtonBuffer)</code></a></li>
<li><a href="SaslServerContext.html#sendOutcome(org.apache.qpid.protonj2.engine.sasl.SaslOutcome,org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>SaslServerContext.sendOutcome(SaslOutcome, ProtonBuffer)</code></a></li>
<li><a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="handleSaslResponse(org.apache.qpid.protonj2.engine.sasl.SaslServerContext,org.apache.qpid.protonj2.buffer.ProtonBuffer)">
<h3>handleSaslResponse</h3>
<div class="member-signature"><span class="return-type">void</span>&nbsp;<span class="element-name">handleSaslResponse</span><wbr><span class="parameters">(<a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl">SaslServerContext</a>&nbsp;context,
 <a href="../../buffer/ProtonBuffer.html" title="interface in org.apache.qpid.protonj2.buffer">ProtonBuffer</a>&nbsp;response)</span></div>
<div class="block">Called when a SASL response frame has arrived from the client.  The server should process the response
 and either offer additional challenges or complete the SASL negotiations based on the mechanics of the
 chosen SASL mechanism.  The server handler should either respond immediately or should respond from the
 same thread that the response handler was invoked from.
 <p>
 In the event that the server implementation cannot proceed with SASL authentication it should call the
 <a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a> to fail the SASL negotiation
 and signal the <a href="../Engine.html" title="interface in org.apache.qpid.protonj2.engine"><code>Engine</code></a> that it should transition to a failed state.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>context</code> - the <a href="SaslServerContext.html" title="interface in org.apache.qpid.protonj2.engine.sasl"><code>SaslServerContext</code></a> object that is to process the incoming response.</dd>
<dd><code>response</code> - the response sent by the remote SASL "client".</dd>
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="SaslServerContext.html#sendChallenge(org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>SaslServerContext.sendChallenge(ProtonBuffer)</code></a></li>
<li><a href="SaslServerContext.html#sendOutcome(org.apache.qpid.protonj2.engine.sasl.SaslOutcome,org.apache.qpid.protonj2.buffer.ProtonBuffer)"><code>SaslServerContext.sendOutcome(SaslOutcome, ProtonBuffer)</code></a></li>
<li><a href="SaslServerContext.html#saslFailure(javax.security.sasl.SaslException)"><code>SaslServerContext.saslFailure(javax.security.sasl.SaslException)</code></a></li>
</ul>
</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>
