Files
2026-09-13 21:55:56 +00:00

252 lines
21 KiB
HTML

<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Google Analytics tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-DKHZS27PHP"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag("js", new Date());
gtag("config", "G-DKHZS27PHP");
</script>
<!-- Generated by javadoc (26) -->
<title>ResponseConverter (Google Agent Development Kit Maven Parent POM 1.7.0 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: com.google.adk.a2a.converters, class: ResponseConverter">
<meta name="generator" content="javadoc/ClassWriter">
<link rel="stylesheet" type="text/css" href="../../../../../resource-files/jquery-ui.min.css">
<link rel="stylesheet" type="text/css" href="../../../../../resource-files/stylesheet.css">
<script type="text/javascript" src="../../../../../script-files/script.js"></script>
<script type="text/javascript" src="../../../../../script-files/jquery-3.7.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-files/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">const pathtoroot = "../../../../../";
loadScripts();
initTheme();
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="nav-content">
<div class="nav-menu-button"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Toggle navigation links"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button></div>
<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 class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/ResponseConverter.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="../../../../../search.html">Search</a></li>
<li><button id="theme-button" aria-label="Select Theme" title="Select Theme"></button></li>
</ul>
<div id="theme-panel">
<div>Select Theme</div>
<div><label for="theme-light"><input type="radio" id="theme-light" disabled name="theme" value="theme-light"><span>Light</span></label><label for="theme-dark"><input type="radio" id="theme-dark" disabled name="theme" value="theme-dark"><span>Dark</span></label><label for="theme-os"><input type="radio" id="theme-os" disabled name="theme" value="theme-os"><span>System Setting</span></label></div>
</div>
</div>
</div>
<div class="sub-nav">
<div class="nav-content">
<ol class="sub-nav-list">
<li><a href="package-summary.html">com.google.adk.a2a.converters</a></li>
<li><a href="ResponseConverter.html" class="current-selection">ResponseConverter</a></li>
</ol>
<div class="nav-list-search"><input type="text" id="search-input" disabled placeholder="Search documentation (type /)" aria-label="Search in documentation" autocomplete="off" spellcheck="false"><input type="reset" id="reset-search" disabled value="Reset"></div>
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="main-grid">
<nav role="navigation" class="toc" aria-label="Table of contents">
<div class="toc-header">Contents&nbsp;<input type="text" class="filter-input" disabled placeholder="Filter contents (type .)" aria-label="Filter table of contents" autocomplete="off" spellcheck="false"><input type="reset" class="reset-filter" disabled tabindex="-1" value="Reset">&nbsp;<button class="toc-sort-toggle" id="toc-lexical-order-toggle"><img src="../../../../../resource-files/sort-a-z.svg" alt="Sort member details in lexicographical order"></button></div>
<ol class="toc-list" tabindex="-1">
<li><a href="#" tabindex="0">Description</a></li>
<li><a href="#method-summary" tabindex="0">Method Summary</a></li>
<li><a href="#method-detail" tabindex="0">Method Details</a>
<ol class="toc-list">
<li><a href="#clientEventToEvent(io.a2a.client.ClientEvent,com.google.adk.agents.InvocationContext)" tabindex="0">clientEventToEvent(ClientEvent, InvocationContext)</a></li>
<li><a href="#artifactToEvent(io.a2a.spec.Artifact,com.google.adk.agents.InvocationContext)" tabindex="0">artifactToEvent(Artifact, InvocationContext)</a></li>
<li><a href="#messageToFailedEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext)" tabindex="0">messageToFailedEvent(Message, InvocationContext)</a></li>
<li><a href="#messageToEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext)" tabindex="0">messageToEvent(Message, InvocationContext)</a></li>
<li><a href="#messageToEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext,boolean)" tabindex="0">messageToEvent(Message, InvocationContext, boolean)</a></li>
<li><a href="#taskToEvent(io.a2a.spec.Task,com.google.adk.agents.InvocationContext)" tabindex="0">taskToEvent(Task, InvocationContext)</a></li>
</ol>
</li>
</ol>
<button class="hide-sidebar"><span>Hide sidebar&nbsp;</span><img src="../../../../../resource-files/left.svg" alt="Hide sidebar"></button><button class="show-sidebar"><img src="../../../../../resource-files/right.svg" alt="Show sidebar"><span>&nbsp;Show sidebar</span></button></nav>
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<h1 title="Class ResponseConverter" class="title">Class ResponseConverter</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">com.google.adk.a2a.converters.ResponseConverter</div>
</div>
<section class="class-description" id="class-description">
<hr>
<div class="horizontal-scroll">
<div class="type-signature"><span class="modifiers">public final class </span><span class="element-name type-name-label">ResponseConverter</span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class in java.lang" class="external-link">Object</a></span></div>
<div class="block">Utility for converting ADK events to A2A spec messages (and back).</div>
</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-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel" aria-labelledby="method-summary-table-tab0">
<div class="summary-table three-column-summary">
<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-tab1 method-summary-table-tab4"><code>static <a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#artifactToEvent(io.a2a.spec.Artifact,com.google.adk.agents.InvocationContext)" class="member-name-link">artifactToEvent</a><wbr>(io.a2a.spec.Artifact&nbsp;artifact,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts an artifact to an ADK event.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Optional.html" title="class in java.util" class="external-link">Optional</a><wbr>&lt;<a href="../../events/Event.html" title="class in com.google.adk.events">Event</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#clientEventToEvent(io.a2a.client.ClientEvent,com.google.adk.agents.InvocationContext)" class="member-name-link">clientEventToEvent</a><wbr>(io.a2a.client.ClientEvent&nbsp;event,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts a A2A <code>ClientEvent</code> to an ADK <a href="../../events/Event.html" title="class in com.google.adk.events"><code>Event</code></a>, based on the event type.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#messageToEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext)" class="member-name-link">messageToEvent</a><wbr>(io.a2a.spec.Message&nbsp;message,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts an A2A message back to ADK events.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#messageToEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext,boolean)" class="member-name-link">messageToEvent</a><wbr>(io.a2a.spec.Message&nbsp;message,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext,
boolean&nbsp;isPending)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts an A2A message back to ADK events.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#messageToFailedEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext)" class="member-name-link">messageToFailedEvent</a><wbr>(io.a2a.spec.Message&nbsp;message,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts an A2A message for a failed task to ADK event filling in the error message.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#taskToEvent(io.a2a.spec.Task,com.google.adk.agents.InvocationContext)" class="member-name-link">taskToEvent</a><wbr>(io.a2a.spec.Task&nbsp;task,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Converts an A2A <code>Task</code> to an ADK <a href="../../events/Event.html" title="class in com.google.adk.events"><code>Event</code></a>.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#method-summary" title="class in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="clone()" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="equals(Object)" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="finalize()" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="getClass()" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="hashCode()" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="notify()" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="notifyAll()" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="toString()" class="external-link">toString</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="wait()" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="wait(long)" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="wait(long, int)" class="external-link">wait</a></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="clientEventToEvent(io.a2a.client.ClientEvent,com.google.adk.agents.InvocationContext)">
<h3>clientEventToEvent</h3>
<div class="horizontal-scroll">
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Optional.html" title="class in java.util" class="external-link">Optional</a>&lt;<a href="../../events/Event.html" title="class in com.google.adk.events">Event</a>&gt;</span>&nbsp;<span class="element-name">clientEventToEvent</span><wbr><span class="parameters">(io.a2a.client.ClientEvent&nbsp;event,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</span></div>
<div class="block">Converts a A2A <code>ClientEvent</code> to an ADK <a href="../../events/Event.html" title="class in com.google.adk.events"><code>Event</code></a>, based on the event type. Returns an
empty optional if the event should be ignored (e.g. if the event is not a final update for
TaskArtifactUpdateEvent or if the message is empty for TaskStatusUpdateEvent).</div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/IllegalArgumentException.html" title="class in java.lang" class="external-link">IllegalArgumentException</a></code> - if the event type is not supported.</dd>
</dl>
</div>
</section>
</li>
<li>
<section class="detail" id="artifactToEvent(io.a2a.spec.Artifact,com.google.adk.agents.InvocationContext)">
<h3>artifactToEvent</h3>
<div class="horizontal-scroll">
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></span>&nbsp;<span class="element-name">artifactToEvent</span><wbr><span class="parameters">(io.a2a.spec.Artifact&nbsp;artifact,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</span></div>
<div class="block">Converts an artifact to an ADK event.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="messageToFailedEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext)">
<h3>messageToFailedEvent</h3>
<div class="horizontal-scroll">
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></span>&nbsp;<span class="element-name">messageToFailedEvent</span><wbr><span class="parameters">(io.a2a.spec.Message&nbsp;message,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</span></div>
<div class="block">Converts an A2A message for a failed task to ADK event filling in the error message.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="messageToEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext)">
<h3>messageToEvent</h3>
<div class="horizontal-scroll">
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></span>&nbsp;<span class="element-name">messageToEvent</span><wbr><span class="parameters">(io.a2a.spec.Message&nbsp;message,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</span></div>
<div class="block">Converts an A2A message back to ADK events.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="messageToEvent(io.a2a.spec.Message,com.google.adk.agents.InvocationContext,boolean)">
<h3>messageToEvent</h3>
<div class="horizontal-scroll">
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></span>&nbsp;<span class="element-name">messageToEvent</span><wbr><span class="parameters">(io.a2a.spec.Message&nbsp;message,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext,
boolean&nbsp;isPending)</span></div>
<div class="block">Converts an A2A message back to ADK events. For streaming task in pending state it sets the
thought field to true, to mark them as thought updates.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="taskToEvent(io.a2a.spec.Task,com.google.adk.agents.InvocationContext)">
<h3>taskToEvent</h3>
<div class="horizontal-scroll">
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="../../events/Event.html" title="class in com.google.adk.events">Event</a></span>&nbsp;<span class="element-name">taskToEvent</span><wbr><span class="parameters">(io.a2a.spec.Task&nbsp;task,
<a href="../../agents/InvocationContext.html" title="class in com.google.adk.agents">InvocationContext</a>&nbsp;invocationContext)</span></div>
<div class="block">Converts an A2A <code>Task</code> to an ADK <a href="../../events/Event.html" title="class in com.google.adk.events"><code>Event</code></a>. If the artifacts are present, the last
artifact is used. If not, the status message is used. If not, the last history message is used.
If none of these are present, an empty event is returned.</div>
</div>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
<footer>
<hr>
<p class="legal-copy"><small>Copyright &#169; 1980. All rights reserved.</small></p>
</footer>
</main>
</div>
</body>
</html>