@ApiStability.Stable public final class AvroKeyMapReduceJobInput extends FileMapReduceJobInput {
@ApiStability.Stable @SuppressWarnings("serial") public final class RuntimeInterruptedException extends RuntimeException {
@ApiStability.Stable @Inheritance.Sealed public abstract class FileMapReduceJobInput extends MapReduceJobInput {
@ApiStability.Stable @Inheritance.Sealed public abstract class FileMapReduceJobOutput extends MapReduceJobOutput {
@ApiStability.Stable @Inheritance.Sealed public abstract class MapReduceJobOutput {
@ApiStability.Stable @Inheritance.Sealed public class InvalidLayoutException extends IOException {
/** * Interface for reference-countable resources. * * @param <T> Type of the resource. Must implement ReferenceCountable. */ @ApiAudience.Public @ApiStability.Stable @Inheritance.Sealed public interface ReferenceCountable<T extends ReferenceCountable<T>> { /** * Expresses interest in retaining this resource. * * The resource will not be disposed until a call to release() happens * * @return the retained resource. */ T retain(); /** * Notifies this resource that we are no longer interested in it. * * This resource may be disposed if no other entity has expressed interest in using it. * * @throws IOException on I/O error. */ void release() throws IOException; }
@ApiStability.Stable @Inheritance.Sealed public abstract class MapReduceJobInput {
@ApiStability.Stable public final class NotAFijiManagedTableException extends Exception {
@ApiStability.Stable public final class FijiEncodingException extends RuntimeException {
/** * Thrown when there is something wrong with the internal Fiji * implementation. Clients should never catch one of these. Please * file a bug report if you ever see one at the * <a target="_top" href="https://jira.fiji.org/">Fiji Issue tracker</a>. */ @ApiAudience.Public @ApiStability.Stable public final class InternalFijiError extends Error { /** * Creates a new <code>InternalFijiError</code> with the specified cause. * * @param cause A throwable cause. */ public InternalFijiError(Throwable cause) { super(cause); } /** * Creates a new <code>InternalFijiError</code> with the specified detail message. * * @param message The exception message. */ public InternalFijiError(String message) { super(message); } }
/** * Fiji analytic functions (mappers, reducers, producer, gatherers, etc.) that output * {@link org.apache.avro.mapred.AvroKey} objects are required to implement this interface * as a means of specifying the Avro writer schema for their output key data. */ @ApiAudience.Public @ApiStability.Stable @Inheritance.Extensible public interface AvroKeyWriter { /** * If the output key class is {@link org.apache.avro.mapred.AvroKey}, the Fiji framework * will call this method to determine what the wrapped datum's writer schema is. * * <p>If this class does not use an AvroKey as its output key class, the return value from * this method will not be used. It may be null.</p> * * @throws IOException If there is an error. * @return The Avro schema of the datum wrapped in the AvroKey output. */ Schema getAvroKeyWriterSchema() throws IOException; }
/** * Fiji analytic functions (mappers, reducers, producer, gatherers, etc.) that output * {@link org.apache.avro.mapred.AvroValue} objects are required to implement this interface * as a means of specifying the Avro writer schema for their output value data. */ @ApiAudience.Public @ApiStability.Stable @Inheritance.Extensible public interface AvroValueWriter { /** * If the output key class is {@link org.apache.avro.mapred.AvroValue}, the Fiji framework * will call this method to determine what the wrapped datum's writer schema is. * * <p>If this class does not use an AvroKey as its output key class, the return value from * this method will not be used. It may be null.</p> * * @throws IOException If there is an error. * @return The Avro schema of the datum wrapped in the AvroValue output. */ Schema getAvroValueWriterSchema() throws IOException; }
/** * Thrown when a client attempts to fetch the next page of data from a Fiji column, but paging is * not enabled on the column. * * <p>To enable paging on a column, use the * {@link com.moz.fiji.schema.FijiDataRequestBuilder.ColumnsDef#withPageSize(int)} * method in your {@link com.moz.fiji.schema.FijiDataRequestBuilder}.</p> */ @ApiAudience.Public @ApiStability.Stable public final class FijiColumnPagingNotEnabledException extends IOException { /** * Creates a new <code>FijiColumnPagingNotEnabledException</code> with the specified * detail message. * * @param message An error message. */ public FijiColumnPagingNotEnabledException(String message) { super(message); } }
/** * Thrown when an error occurs with the configuration or internal operation of Fiji security. * Errors encountered due to a user's lack of permission throw {@link FijiAccessException}. */ @ApiAudience.Public @ApiStability.Stable public final class FijiSecurityException extends RuntimeException { /** * Creates a new <code>FijiSecurityException</code> with the specified detail message. * * @param message The exception message. * @param cause The cause of the exception, which may contain additional information. */ public FijiSecurityException(String message, Throwable cause) { super(message, cause); } /** * Creates a new <code>FijiSecurityException</code> with the specified detail message. * * @param message The exception message. */ public FijiSecurityException(String message) { super(message); } }
/** Thrown when parsing a bogus Fiji URI. */ @ApiAudience.Public @ApiStability.Stable public final class FijiURIException extends RuntimeException { /** * Creates a new <code>FijiURIException</code>. * * @param message Human readable message. */ public FijiURIException(String message) { super(message); } /** * Creates a new <code>FijiURIException</code> for the specified uri and detail message. * * @param uri Bogus URI. * @param message Human readable explanation. */ public FijiURIException(String uri, String message) { super(String.format("Invalid Fiji URI: '%s' : %s", uri, message)); } }
/** Thrown when installing an instance or creating a table that already exists. */ @ApiAudience.Public @ApiStability.Stable public final class FijiAlreadyExistsException extends RuntimeException { /** URI of the entity that already exists. */ private final FijiURI mURI; /** * Initializes a new exception object. * * @param message Human readable message. * @param uri URI of the already existing entity. */ public FijiAlreadyExistsException(String message, FijiURI uri) { super(message); mURI = uri; } /** @return the URI of the already existing entity. */ public FijiURI getURI() { return mURI; } }
/** * Context for gatherers. GathererContexts emit key/value pairs. * * @param <K> Type of the keys to emit. * @param <V> Type of the values to emit. */ @ApiAudience.Public @ApiStability.Stable @Inheritance.Sealed public interface GathererContext<K, V> extends FijiContext { /** * Emits a key/value pair. * * @param key Emit this key. * @param value Emit this value. * @throws IOException on I/O error. */ void write(K key, V value) throws IOException; }
/** * A Map from names to KeyValueStore entries, created by RequiredStores.with(). * * <p>Includes a with() method that allows you to daisy-chain calls * to add multiple stores in a concise fashion.</p> */ @ApiAudience.Public @ApiStability.Stable public static final class StoreMap extends HashMap<String, KeyValueStore<?, ?>> { private static final long serialVersionUID = 1L; /** Package-private constructor. Can only be created by RequiredStores.with(..). */ StoreMap() { } /** * Add the associated name-to-store mapping. * * @param name the name of the single KeyValueStore required. * @param store the default implementation of the single KeyValueStore required. * @return this object. */ public StoreMap with(String name, KeyValueStore<?, ?> store) { put(name, store); return this; } }
/** * Fiji analytic functions (mappers, reducers, producer, gatherers, etc.) that read * {@link org.apache.avro.mapred.AvroValue} objects are required to implement this interface * as a means of specifying the Avro reader schema for their input value data. */ @ApiAudience.Public @ApiStability.Stable @Inheritance.Extensible public interface AvroValueReader { /** * If the input value class is {@link org.apache.avro.mapred.AvroValue}, this method * returns the Avro reader schema of the wrapped datum; otherwise null. * * @throws IOException If there is an error. * @return The Avro reader schema of the datum wrapped in the AvroValue input. */ Schema getAvroValueReaderSchema() throws IOException; }