| <html> |
| |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one or more |
| contributor license agreements. See the NOTICE file distributed with |
| this work for additional information regarding copyright ownership. |
| The ASF licenses this file to You under the Apache License, Version 2.0 |
| (the "License"); you may not use this file except in compliance with |
| the License. You may obtain a copy of the License at |
| |
| https://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <body> |
| Generate specific Java classes for schemas and protocols. |
| |
| <p>This API is recommended for most RPC uses and for data applications |
| that always use the same datatypes, i.e., whose schemas are known at |
| compile time. For data applications that accept dynamic datatypes |
| the {@link org.apache.avro.generic generic} API is recommended. |
| |
| <p>Avro types are mapped to Java as follows: |
| |
| <ul> |
| |
| <li>Record, enum, and fixed schemas generate Java class definitions.</li> |
| |
| <li>If a Conversion instance is available for the related logical type, |
| the value will be mapped to the object returned by that Conversion. The |
| logical type conversions for {@code date}, {@code time-millis}, {@code |
| timestamp-millis} and {@code decimal} are pre-defined in the class {@link |
| <a href="../../../../org/apache/avro/compiler/specific/SpecificCompiler.html" title="class in org.apache.avro.compiler.specific"><code>SpecificCompiler</code></a>}.</li> |
| |
| <li>All other types are mapped as in the {@link org.apache.avro.generic |
| generic} API.</li> |
| |
| </ul> |
| |
| <p>Note that when a generated class is not found corresponding to a |
| record, enum or fixed schema, a {@link org.apache.avro.generic |
| generic} representation is used. This permits generated classes to |
| be nested within generic data structures. |
| |
| </body> |
| </html> |