blob: 95b68a7eb83ff8a66f3c4e59babab1d8e60ece51 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_161-google-v7) on Thu Oct 18 16:14:34 PDT 2018 -->
<title>CoderRegistry (Apache Beam 2.8.0-SNAPSHOT)</title>
<meta name="date" content="2018-10-18">
<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="CoderRegistry (Apache Beam 2.8.0-SNAPSHOT)";
}
}
catch(err) {
}
//-->
var methods = {"i0":9,"i1":42,"i2":10,"i3":42,"i4":10,"i5":42,"i6":10,"i7":10,"i8":10};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated 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/coders/CoderProviders.html" title="class in org.apache.beam.sdk.coders"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/beam/sdk/coders/CollectionCoder.html" title="class in org.apache.beam.sdk.coders"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/beam/sdk/coders/CoderRegistry.html" target="_top">Frames</a></li>
<li><a href="CoderRegistry.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.beam.sdk.coders</div>
<h2 title="Class CoderRegistry" class="title">Class CoderRegistry</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.beam.sdk.coders.CoderRegistry</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public class <span class="typeNameLabel">CoderRegistry</span>
extends java.lang.Object</pre>
<div class="block">A <a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html" title="class in org.apache.beam.sdk.coders"><code>CoderRegistry</code></a> allows creating a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for a given Java <code>class</code> or
<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values"><code>type descriptor</code></a>.
<p>Creation of the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> is delegated to one of the many registered <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>coder providers</code></a> based upon the registration order.
<p>By default, the <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>coder provider</code></a> precedence order is as follows:
<ul>
<li>Coder providers registered programmatically with <a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#registerCoderProvider-org.apache.beam.sdk.coders.CoderProvider-"><code>registerCoderProvider(CoderProvider)</code></a>.
<li>A default coder provider for common Java (Byte, Double, List, ...) and Apache Beam (KV,
...) types.
<li>Coder providers registered automatically through a <a href="../../../../../org/apache/beam/sdk/coders/CoderProviderRegistrar.html" title="interface in org.apache.beam.sdk.coders"><code>CoderProviderRegistrar</code></a> using a
<code>ServiceLoader</code>. Note that the <code>ServiceLoader</code> registration order is consistent
but may change due to the addition or removal of libraries exposed to the application. This
can impact the coder returned if multiple coder providers are capable of supplying a coder
for the specified type.
</ul>
<p>Note that if multiple <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>coder providers</code></a> can provide a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for a
given type, the precedence order above defines which <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>CoderProvider</code></a> is chosen.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="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="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></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="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated 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>static <a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html" title="class in org.apache.beam.sdk.coders">CoderRegistry</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#createDefault--">createDefault</a></span>()</code>
<div class="block">Creates a CoderRegistry containing registrations for all standard coders part of the core Java
Apache Beam SDK and also any registrations provided by <a href="../../../../../org/apache/beam/sdk/coders/CoderProviderRegistrar.html" title="interface in org.apache.beam.sdk.coders"><code>coder
registrars</code></a>.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>&lt;T,OutputT&gt;<br><a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;OutputT&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#getCoder-java.lang.Class-java.lang.Class-java.util.Map-java.lang.reflect.TypeVariable-">getCoder</a></span>(java.lang.Class&lt;? extends T&gt;&nbsp;subClass,
java.lang.Class&lt;T&gt;&nbsp;baseClass,
java.util.Map&lt;java.lang.reflect.Type,? extends <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;?&gt;&gt;&nbsp;knownCoders,
java.lang.reflect.TypeVariable&lt;?&gt;&nbsp;param)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">This method is to change in an unknown backwards incompatible way once support for
this functionality is refined.</span></div>
</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#getCoder-java.lang.Class-">getCoder</a></span>(java.lang.Class&lt;T&gt;&nbsp;clazz)</code>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> to use for values of the given class.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>&lt;InputT,OutputT&gt;<br><a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;OutputT&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#getCoder-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.coders.Coder-">getCoder</a></span>(<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;OutputT&gt;&nbsp;typeDescriptor,
<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;InputT&gt;&nbsp;inputTypeDescriptor,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;InputT&gt;&nbsp;inputCoder)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">This method is to change in an unknown backwards incompatible way once support for
this functionality is refined.</span></div>
</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#getCoder-org.apache.beam.sdk.values.TypeDescriptor-">getCoder</a></span>(<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;T&gt;&nbsp;type)</code>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> to use for values of the given type.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>&lt;InputT,OutputT&gt;<br><a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;OutputT&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#getOutputCoder-org.apache.beam.sdk.transforms.SerializableFunction-org.apache.beam.sdk.coders.Coder-">getOutputCoder</a></span>(<a href="../../../../../org/apache/beam/sdk/transforms/SerializableFunction.html" title="interface in org.apache.beam.sdk.transforms">SerializableFunction</a>&lt;InputT,OutputT&gt;&nbsp;fn,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;InputT&gt;&nbsp;inputCoder)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;
<div class="block"><span class="deprecationComment">This method is to change in an unknown backwards incompatible way once support for
this functionality is refined.</span></div>
</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#registerCoderForClass-java.lang.Class-org.apache.beam.sdk.coders.Coder-">registerCoderForClass</a></span>(java.lang.Class&lt;?&gt;&nbsp;clazz,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;?&gt;&nbsp;coder)</code>
<div class="block">Registers the provided <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for the given class.</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/coders/CoderRegistry.html#registerCoderForType-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.coders.Coder-">registerCoderForType</a></span>(<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;?&gt;&nbsp;type,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;?&gt;&nbsp;coder)</code>
<div class="block">Registers the provided <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for the given type.</div>
</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/coders/CoderRegistry.html#registerCoderProvider-org.apache.beam.sdk.coders.CoderProvider-">registerCoderProvider</a></span>(<a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders">CoderProvider</a>&nbsp;coderProvider)</code>
<div class="block">Registers <code>coderProvider</code> as a potential <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>CoderProvider</code></a> which can produce <code>Coder</code> instances.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="createDefault--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createDefault</h4>
<pre>public static&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html" title="class in org.apache.beam.sdk.coders">CoderRegistry</a>&nbsp;createDefault()</pre>
<div class="block">Creates a CoderRegistry containing registrations for all standard coders part of the core Java
Apache Beam SDK and also any registrations provided by <a href="../../../../../org/apache/beam/sdk/coders/CoderProviderRegistrar.html" title="interface in org.apache.beam.sdk.coders"><code>coder
registrars</code></a>.
<p>Multiple registrations which can produce a coder for a given type result in a Coder created
by the (in order of precedence):
<ul>
<li><a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>coder providers</code></a> registered programmatically through <a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#registerCoderProvider-org.apache.beam.sdk.coders.CoderProvider-"><code>registerCoderProvider(org.apache.beam.sdk.coders.CoderProvider)</code></a>.
<li><a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>coder providers</code></a> for core types found within the Apache Beam Java
SDK being used.
<li>The <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>coder providers</code></a> from the <a href="../../../../../org/apache/beam/sdk/coders/CoderProviderRegistrar.html" title="interface in org.apache.beam.sdk.coders"><code>CoderProviderRegistrar</code></a> with
the lexicographically smallest <code>class name</code> being used.
</ul></div>
</li>
</ul>
<a name="registerCoderProvider-org.apache.beam.sdk.coders.CoderProvider-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerCoderProvider</h4>
<pre>public&nbsp;void&nbsp;registerCoderProvider(<a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders">CoderProvider</a>&nbsp;coderProvider)</pre>
<div class="block">Registers <code>coderProvider</code> as a potential <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>CoderProvider</code></a> which can produce <code>Coder</code> instances.
<p>This method prioritizes this <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>CoderProvider</code></a> over all prior registered coders.
<p>See <a href="../../../../../org/apache/beam/sdk/coders/CoderProviders.html" title="class in org.apache.beam.sdk.coders"><code>CoderProviders</code></a> for common <a href="../../../../../org/apache/beam/sdk/coders/CoderProvider.html" title="class in org.apache.beam.sdk.coders"><code>CoderProvider</code></a> patterns.</div>
</li>
</ul>
<a name="registerCoderForClass-java.lang.Class-org.apache.beam.sdk.coders.Coder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerCoderForClass</h4>
<pre>public&nbsp;void&nbsp;registerCoderForClass(java.lang.Class&lt;?&gt;&nbsp;clazz,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;?&gt;&nbsp;coder)</pre>
<div class="block">Registers the provided <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for the given class.
<p>Note that this is equivalent to <code>registerCoderForType(TypeDescriptor.of(clazz))</code>. See
<a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#registerCoderForType-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.coders.Coder-"><code>registerCoderForType(TypeDescriptor, Coder)</code></a> for further details.</div>
</li>
</ul>
<a name="registerCoderForType-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.coders.Coder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerCoderForType</h4>
<pre>public&nbsp;void&nbsp;registerCoderForType(<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;?&gt;&nbsp;type,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;?&gt;&nbsp;coder)</pre>
<div class="block">Registers the provided <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for the given type.
<p>Note that this is equivalent to <code>registerCoderProvider(CoderProviders.forCoder(type,
coder))</code>. See <a href="../../../../../org/apache/beam/sdk/coders/CoderRegistry.html#registerCoderProvider-org.apache.beam.sdk.coders.CoderProvider-"><code>registerCoderProvider(org.apache.beam.sdk.coders.CoderProvider)</code></a> and <a href="../../../../../org/apache/beam/sdk/coders/CoderProviders.html#forCoder-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.coders.Coder-"><code>CoderProviders.forCoder(org.apache.beam.sdk.values.TypeDescriptor&lt;?&gt;, org.apache.beam.sdk.coders.Coder&lt;?&gt;)</code></a> for further
details.</div>
</li>
</ul>
<a name="getCoder-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCoder</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;T&gt;&nbsp;getCoder(java.lang.Class&lt;T&gt;&nbsp;clazz)
throws <a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></pre>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> to use for values of the given class.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></code> - if a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> cannot be provided</dd>
</dl>
</li>
</ul>
<a name="getCoder-org.apache.beam.sdk.values.TypeDescriptor-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCoder</h4>
<pre>public&nbsp;&lt;T&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;T&gt;&nbsp;getCoder(<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;T&gt;&nbsp;type)
throws <a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></pre>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> to use for values of the given type.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></code> - if a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> cannot be provided</dd>
</dl>
</li>
</ul>
<a name="getCoder-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.values.TypeDescriptor-org.apache.beam.sdk.coders.Coder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCoder</h4>
<pre>@Deprecated
<a href="../../../../../org/apache/beam/sdk/annotations/Internal.html" title="annotation in org.apache.beam.sdk.annotations">@Internal</a>
public&nbsp;&lt;InputT,OutputT&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;OutputT&gt;&nbsp;getCoder(<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;OutputT&gt;&nbsp;typeDescriptor,
<a href="../../../../../org/apache/beam/sdk/values/TypeDescriptor.html" title="class in org.apache.beam.sdk.values">TypeDescriptor</a>&lt;InputT&gt;&nbsp;inputTypeDescriptor,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;InputT&gt;&nbsp;inputCoder)
throws <a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method is to change in an unknown backwards incompatible way once support for
this functionality is refined.</span></div>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> for values of the given type, where the given input type uses the
given <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a>.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></code> - if a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> cannot be provided</dd>
</dl>
</li>
</ul>
<a name="getOutputCoder-org.apache.beam.sdk.transforms.SerializableFunction-org.apache.beam.sdk.coders.Coder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getOutputCoder</h4>
<pre>@Deprecated
<a href="../../../../../org/apache/beam/sdk/annotations/Internal.html" title="annotation in org.apache.beam.sdk.annotations">@Internal</a>
public&nbsp;&lt;InputT,OutputT&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;OutputT&gt;&nbsp;getOutputCoder(<a href="../../../../../org/apache/beam/sdk/transforms/SerializableFunction.html" title="interface in org.apache.beam.sdk.transforms">SerializableFunction</a>&lt;InputT,OutputT&gt;&nbsp;fn,
<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;InputT&gt;&nbsp;inputCoder)
throws <a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method is to change in an unknown backwards incompatible way once support for
this functionality is refined.</span></div>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> to use on elements produced by this function, given the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a>
used for its input elements.</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></code> - if a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> cannot be provided</dd>
</dl>
</li>
</ul>
<a name="getCoder-java.lang.Class-java.lang.Class-java.util.Map-java.lang.reflect.TypeVariable-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getCoder</h4>
<pre>@Deprecated
<a href="../../../../../org/apache/beam/sdk/annotations/Internal.html" title="annotation in org.apache.beam.sdk.annotations">@Internal</a>
public&nbsp;&lt;T,OutputT&gt;&nbsp;<a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;OutputT&gt;&nbsp;getCoder(java.lang.Class&lt;? extends T&gt;&nbsp;subClass,
java.lang.Class&lt;T&gt;&nbsp;baseClass,
java.util.Map&lt;java.lang.reflect.Type,? extends <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders">Coder</a>&lt;?&gt;&gt;&nbsp;knownCoders,
java.lang.reflect.TypeVariable&lt;?&gt;&nbsp;param)
throws <a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;<span class="deprecationComment">This method is to change in an unknown backwards incompatible way once support for
this functionality is refined.</span></div>
<div class="block">Returns the <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> to use for the specified type parameter specialization of the
subclass, given <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coders</code></a> to use for all other type parameters (if any).</div>
<dl>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/apache/beam/sdk/coders/CannotProvideCoderException.html" title="class in org.apache.beam.sdk.coders">CannotProvideCoderException</a></code> - if a <a href="../../../../../org/apache/beam/sdk/coders/Coder.html" title="class in org.apache.beam.sdk.coders"><code>Coder</code></a> cannot be provided</dd>
</dl>
</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/coders/CoderProviders.html" title="class in org.apache.beam.sdk.coders"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/beam/sdk/coders/CollectionCoder.html" title="class in org.apache.beam.sdk.coders"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/beam/sdk/coders/CoderRegistry.html" target="_top">Frames</a></li>
<li><a href="CoderRegistry.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>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>