diff --git a/java/adapter/jdbc/src/main/java/org/apache/arrow/adapter/jdbc/Constants.java b/java/adapter/jdbc/src/main/java/org/apache/arrow/adapter/jdbc/Constants.java index c6aa018c831e..aaadacb54367 100644 --- a/java/adapter/jdbc/src/main/java/org/apache/arrow/adapter/jdbc/Constants.java +++ b/java/adapter/jdbc/src/main/java/org/apache/arrow/adapter/jdbc/Constants.java @@ -17,7 +17,11 @@ package org.apache.arrow.adapter.jdbc; +/** + * String constants used for metadata returned on Vectors. + */ public class Constants { + private Constants() {} public static final String SQL_CATALOG_NAME_KEY = "SQL_CATALOG_NAME"; public static final String SQL_TABLE_NAME_KEY = "SQL_TABLE_NAME"; diff --git a/java/dev/checkstyle/checkstyle.xml b/java/dev/checkstyle/checkstyle.xml index a388485369f9..023756c3b45f 100644 --- a/java/dev/checkstyle/checkstyle.xml +++ b/java/dev/checkstyle/checkstyle.xml @@ -241,6 +241,15 @@ + + + + + + + + + + + diff --git a/java/flight/src/main/java/org/apache/arrow/flight/Action.java b/java/flight/src/main/java/org/apache/arrow/flight/Action.java index f8922cf41165..fe7a9ce91774 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/Action.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/Action.java @@ -21,6 +21,11 @@ import com.google.protobuf.ByteString; +/** + * An opaque action for the service to perform. + * + *

This is a POJO wrapper around the message of the same name in Flight.proto. + */ public class Action { private final String type; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/ArrowMessage.java b/java/flight/src/main/java/org/apache/arrow/flight/ArrowMessage.java index 187437a90a54..31fdd134f6db 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/ArrowMessage.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/ArrowMessage.java @@ -77,6 +77,7 @@ class ArrowMessage implements AutoCloseable { private static Marshaller NO_BODY_MARSHALLER = ProtoUtils.marshaller(FlightData.getDefaultInstance()); + /** Types of messages that can be sent. */ public static enum HeaderType { NONE, SCHEMA, diff --git a/java/flight/src/main/java/org/apache/arrow/flight/CallOptions.java b/java/flight/src/main/java/org/apache/arrow/flight/CallOptions.java index 946434bf4c5b..aaf5691fae35 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/CallOptions.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/CallOptions.java @@ -53,6 +53,9 @@ public > T wrapStub(T stub) { } } + /** + * CallOptions specific to GRPC stubs. + */ interface GrpcCallOption extends CallOption { > T wrapStub(T stub); } diff --git a/java/flight/src/main/java/org/apache/arrow/flight/Criteria.java b/java/flight/src/main/java/org/apache/arrow/flight/Criteria.java index bd59a1c153aa..91eecdb26d1e 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/Criteria.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/Criteria.java @@ -21,6 +21,11 @@ import com.google.protobuf.ByteString; +/** + * An opaque object that can be used to filter a list of streams available from a server. + * + *

This is a POJO wrapper around the protobuf Criteria message. + */ public class Criteria { public static Criteria ALL = new Criteria((byte[]) null); diff --git a/java/flight/src/main/java/org/apache/arrow/flight/FlightClient.java b/java/flight/src/main/java/org/apache/arrow/flight/FlightClient.java index e74c0eefb69c..aa3d029633d4 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/FlightClient.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/FlightClient.java @@ -306,6 +306,9 @@ public PutResult getResult() { } } + /** + * Interface for subscribers to a stream returned by the server. + */ public interface ClientStreamListener { public void putNext(); diff --git a/java/flight/src/main/java/org/apache/arrow/flight/FlightConstants.java b/java/flight/src/main/java/org/apache/arrow/flight/FlightConstants.java index d694fcdc017f..2ea8cc7e3443 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/FlightConstants.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/FlightConstants.java @@ -17,8 +17,11 @@ package org.apache.arrow.flight; +/** + * String constants relevant to flight implementations. + */ public interface FlightConstants { - public static final String SERVICE = "arrow.flight.protocol.FlightService"; + String SERVICE = "arrow.flight.protocol.FlightService"; } diff --git a/java/flight/src/main/java/org/apache/arrow/flight/FlightDescriptor.java b/java/flight/src/main/java/org/apache/arrow/flight/FlightDescriptor.java index 3ed6ba257fdb..ac2fff3511d8 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/FlightDescriptor.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/FlightDescriptor.java @@ -27,6 +27,11 @@ import com.google.common.collect.ImmutableList; import com.google.protobuf.ByteString; +/** + * An identifier for a particular set of data. This can either be an opaque command that generates + * the data or a static "path" to the data. This is a POJO wrapper around the protobuf message with + * the same name. + */ public class FlightDescriptor { private boolean isCmd; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/FlightProducer.java b/java/flight/src/main/java/org/apache/arrow/flight/FlightProducer.java index e6d805695415..9c3cc2b59c77 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/FlightProducer.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/FlightProducer.java @@ -27,25 +27,28 @@ */ public interface FlightProducer { - public void getStream(CallContext context, Ticket ticket, + void getStream(CallContext context, Ticket ticket, ServerStreamListener listener); - public void listFlights(CallContext context, Criteria criteria, + void listFlights(CallContext context, Criteria criteria, StreamListener listener); - public FlightInfo getFlightInfo(CallContext context, + FlightInfo getFlightInfo(CallContext context, FlightDescriptor descriptor); - public Callable acceptPut(CallContext context, + Callable acceptPut(CallContext context, FlightStream flightStream); - public void doAction(CallContext context, Action action, + void doAction(CallContext context, Action action, StreamListener listener); - public void listActions(CallContext context, + void listActions(CallContext context, StreamListener listener); - public interface ServerStreamListener { + /** + * Listener for creating a stream on the server side. + */ + interface ServerStreamListener { boolean isCancelled(); @@ -61,7 +64,12 @@ public interface ServerStreamListener { } - public interface StreamListener { + /** + * Callbacks for pushing objects to a receiver. + * + * @param Type of the values in the stream. + */ + interface StreamListener { void onNext(T val); diff --git a/java/flight/src/main/java/org/apache/arrow/flight/FlightServer.java b/java/flight/src/main/java/org/apache/arrow/flight/FlightServer.java index 0812a04637d4..eaea0441b2c5 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/FlightServer.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/FlightServer.java @@ -39,6 +39,10 @@ import io.netty.channel.EventLoopGroup; import io.netty.channel.ServerChannel; +/** + * Generic server of flight data that is customized via construction with delegate classes for the + * actual logic. The server currently uses GRPC as its transport mechanism. + */ public class FlightServer implements AutoCloseable { private static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(FlightServer.class); diff --git a/java/flight/src/main/java/org/apache/arrow/flight/FlightService.java b/java/flight/src/main/java/org/apache/arrow/flight/FlightService.java index 34f9d2a05a03..b5c22efb224a 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/FlightService.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/FlightService.java @@ -43,6 +43,9 @@ import io.grpc.stub.ServerCallStreamObserver; import io.grpc.stub.StreamObserver; +/** + * GRPC service implementation for a flight server. + */ class FlightService extends FlightServiceImplBase { private static final Logger logger = LoggerFactory.getLogger(FlightService.class); @@ -188,6 +191,9 @@ public void getFlightInfo(Flight.FlightDescriptor request, StreamObserver asObserver() { return new Observer(); } + /** + * Provides a callback to cancel a process that is in progress. + */ public interface Cancellable { void cancel(String message, Throwable exception); } + /** + * Provides a interface to request more items from a stream producer. + */ public interface Requestor { /** - * Requests count more messages from the reuqestor. + * Requests count more messages from the instance of this object. */ void request(int count); } diff --git a/java/flight/src/main/java/org/apache/arrow/flight/GenericOperation.java b/java/flight/src/main/java/org/apache/arrow/flight/GenericOperation.java index 63d558498a44..03a1e92af12c 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/GenericOperation.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/GenericOperation.java @@ -17,6 +17,9 @@ package org.apache.arrow.flight; +/** + * Unused?. + */ class GenericOperation { private final String type; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/NoOpFlightProducer.java b/java/flight/src/main/java/org/apache/arrow/flight/NoOpFlightProducer.java index be11b5446db9..0e6e373e6544 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/NoOpFlightProducer.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/NoOpFlightProducer.java @@ -21,6 +21,9 @@ import org.apache.arrow.flight.impl.Flight.PutResult; +/** + * A {@link FlightProducer} that throws on all operations. + */ public class NoOpFlightProducer implements FlightProducer { @Override diff --git a/java/flight/src/main/java/org/apache/arrow/flight/Result.java b/java/flight/src/main/java/org/apache/arrow/flight/Result.java index 346bfce460d8..bd3ad4e27bfa 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/Result.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/Result.java @@ -21,6 +21,11 @@ import com.google.protobuf.ByteString; +/** + * Opaque result returned after executing an action. + * + *

POJO wrapper around the Flight protocol buffer message sharing the same name. + */ public class Result { private final byte[] body; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/AuthConstants.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/AuthConstants.java index 8176a90f14a4..ac55872e5b18 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/AuthConstants.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/AuthConstants.java @@ -24,6 +24,9 @@ import io.grpc.Metadata.Key; import io.grpc.MethodDescriptor; +/** + * Constants used in authorization of flight connections. + */ public final class AuthConstants { public static final String HANDSHAKE_DESCRIPTOR_NAME = MethodDescriptor diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/BasicServerAuthHandler.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/BasicServerAuthHandler.java index dc9b1a0e716c..0a515838d722 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/BasicServerAuthHandler.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/BasicServerAuthHandler.java @@ -40,6 +40,9 @@ public BasicServerAuthHandler(BasicAuthValidator authValidator) { this.authValidator = authValidator; } + /** + * Interface that this handler delegates for determining if credentials are valid. + */ public interface BasicAuthValidator { public byte[] getToken(String username, String password) throws Exception; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthInterceptor.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthInterceptor.java index 38d5fdbf3406..3d28b7ba7e7c 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthInterceptor.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthInterceptor.java @@ -25,6 +25,9 @@ import io.grpc.Metadata; import io.grpc.MethodDescriptor; +/** + * GRPC client intercepter that handles authentication with the server. + */ public class ClientAuthInterceptor implements ClientInterceptor { private volatile ClientAuthHandler authHandler = null; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthWrapper.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthWrapper.java index 77f7f4630717..f916c9217d0d 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthWrapper.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/ClientAuthWrapper.java @@ -30,6 +30,9 @@ import io.grpc.stub.StreamObserver; +/** + * Utility class for performing authorization over using a GRPC stub. + */ public class ClientAuthWrapper { /** diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthHandler.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthHandler.java index 5f93dd662a64..a19126b6ae9d 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthHandler.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthHandler.java @@ -20,6 +20,9 @@ import java.util.Iterator; import java.util.Optional; +/** + * Interface for Server side authentication handlers. + */ public interface ServerAuthHandler { /** @@ -37,11 +40,15 @@ public interface ServerAuthHandler { */ boolean authenticate(ServerAuthSender outgoing, Iterator incoming); - public interface ServerAuthSender { + /** + * Interface for an server implementations to send back authentication messages + * back to the client. + */ + interface ServerAuthSender { - public void send(byte[] payload); + void send(byte[] payload); - public void onError(String message, Throwable cause); + void onError(String message, Throwable cause); } diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthInterceptor.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthInterceptor.java index 7ea5c0c23f09..0d5e18fe671b 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthInterceptor.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthInterceptor.java @@ -28,6 +28,9 @@ import io.grpc.ServerInterceptor; import io.grpc.Status; +/** + * GRPC Interceptor for performing authentication. + */ public class ServerAuthInterceptor implements ServerInterceptor { private final ServerAuthHandler authHandler; diff --git a/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthWrapper.java b/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthWrapper.java index d07ac945d383..f0c5dae757a8 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthWrapper.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/auth/ServerAuthWrapper.java @@ -31,6 +31,9 @@ import io.grpc.Status; import io.grpc.stub.StreamObserver; +/** + * Contains utility methods for integrating authorization into a GRPC stream. + */ public class ServerAuthWrapper { /** diff --git a/java/flight/src/main/java/org/apache/arrow/flight/example/integration/IntegrationTestServer.java b/java/flight/src/main/java/org/apache/arrow/flight/example/integration/IntegrationTestServer.java index cfeaadb3da0b..5db2957784da 100644 --- a/java/flight/src/main/java/org/apache/arrow/flight/example/integration/IntegrationTestServer.java +++ b/java/flight/src/main/java/org/apache/arrow/flight/example/integration/IntegrationTestServer.java @@ -28,6 +28,9 @@ import org.apache.commons.cli.Options; import org.apache.commons.cli.ParseException; +/** + * Flight server for integration testing. + */ class IntegrationTestServer { private static final org.slf4j.Logger LOGGER = org.slf4j.LoggerFactory.getLogger(IntegrationTestServer.class); private final Options options; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/DecimalTypeUtil.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/DecimalTypeUtil.java index 0a052795f9db..f6b76f981887 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/DecimalTypeUtil.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/DecimalTypeUtil.java @@ -19,8 +19,15 @@ import org.apache.arrow.vector.types.pojo.ArrowType.Decimal; +/** + * Utility methods for working with {@link Decimal} values. + */ public class DecimalTypeUtil { + private DecimalTypeUtil() {} + /** + * Enum for supported mathematical operations. + */ public enum OperationType { ADD, SUBTRACT, diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt16.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt16.java index c079c738b9a0..d03280fd5eb9 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt16.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt16.java @@ -21,7 +21,7 @@ import io.netty.buffer.ArrowBuf; -/* +/** * Selection vector with records of arrow type INT16. */ public class SelectionVectorInt16 extends SelectionVector { diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt32.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt32.java index a86834a7836d..36c26dc103f4 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt32.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/evaluator/SelectionVectorInt32.java @@ -21,7 +21,7 @@ import io.netty.buffer.ArrowBuf; -/* +/** * Selection vector with records of arrow type INT32. */ public class SelectionVectorInt32 extends SelectionVector { diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/EvaluatorClosedException.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/EvaluatorClosedException.java index 4654999e3338..d3fb8b60df0b 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/EvaluatorClosedException.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/EvaluatorClosedException.java @@ -17,6 +17,7 @@ package org.apache.arrow.gandiva.exceptions; +/** Indicates an attempted call to methods on a closed evaluator. */ public class EvaluatorClosedException extends GandivaException { public EvaluatorClosedException() { super("Cannot invoke methods on evaluator after closing it"); diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/GandivaException.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/GandivaException.java index 5389a0b952ed..e7fce58a38da 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/GandivaException.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/exceptions/GandivaException.java @@ -17,6 +17,7 @@ package org.apache.arrow.gandiva.exceptions; +/** Base class for all specialized exceptions this package uses. */ public class GandivaException extends Exception { public GandivaException(String msg) { diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/AndNode.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/AndNode.java index efa5bf238836..ecc577fa78d4 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/AndNode.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/AndNode.java @@ -22,6 +22,9 @@ import org.apache.arrow.gandiva.exceptions.GandivaException; import org.apache.arrow.gandiva.ipc.GandivaTypes; +/** + * Node representing a logical And expression. + */ class AndNode implements TreeNode { private final List children; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/ArrowTypeHelper.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/ArrowTypeHelper.java index 06cbd4621c63..47d4eb74c868 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/ArrowTypeHelper.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/ArrowTypeHelper.java @@ -27,7 +27,12 @@ import org.apache.arrow.vector.types.pojo.Field; import org.apache.arrow.vector.types.pojo.Schema; +/** + * Utility methods to convert between Arrow and Gandiva types. + */ public class ArrowTypeHelper { + private ArrowTypeHelper() {} + static final int WIDTH_8 = 8; static final int WIDTH_16 = 16; static final int WIDTH_32 = 32; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/FunctionNode.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/FunctionNode.java index bffa3f673694..ead1e146d5d8 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/FunctionNode.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/FunctionNode.java @@ -23,6 +23,9 @@ import org.apache.arrow.gandiva.ipc.GandivaTypes; import org.apache.arrow.vector.types.pojo.ArrowType; +/** + * Node representing an arbitrary function in an expression. + */ class FunctionNode implements TreeNode { private final String function; private final List children; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/IfNode.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/IfNode.java index 544123e53410..19f9095fb762 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/IfNode.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/IfNode.java @@ -21,6 +21,9 @@ import org.apache.arrow.gandiva.ipc.GandivaTypes; import org.apache.arrow.vector.types.pojo.ArrowType; +/** + * Node representing a if-then-else block expression. + */ class IfNode implements TreeNode { private final TreeNode condition; private final TreeNode thenNode; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/NullNode.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/NullNode.java index cc37cbbeed35..a8e7d6f82e52 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/NullNode.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/NullNode.java @@ -21,6 +21,7 @@ import org.apache.arrow.gandiva.ipc.GandivaTypes; import org.apache.arrow.vector.types.pojo.ArrowType; +/** An expression indicating a null value. */ class NullNode implements TreeNode { private final ArrowType type; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/OrNode.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/OrNode.java index 6649b90cb4ff..2dbdfed7c7a6 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/OrNode.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/OrNode.java @@ -22,6 +22,9 @@ import org.apache.arrow.gandiva.exceptions.GandivaException; import org.apache.arrow.gandiva.ipc.GandivaTypes; +/** + * Represents a logical OR Node. + */ class OrNode implements TreeNode { private final List children; diff --git a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/TreeBuilder.java b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/TreeBuilder.java index a220c547e44a..5d8f21fffbc5 100644 --- a/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/TreeBuilder.java +++ b/java/gandiva/src/main/java/org/apache/arrow/gandiva/expression/TreeBuilder.java @@ -23,7 +23,12 @@ import org.apache.arrow.vector.types.pojo.ArrowType; import org.apache.arrow.vector.types.pojo.Field; +/** + * Contains helper functions for constructing expression trees. + */ public class TreeBuilder { + private TreeBuilder() {} + /** * Helper functions to create literal constants. */ diff --git a/java/memory/src/main/java/org/apache/arrow/memory/BaseAllocator.java b/java/memory/src/main/java/org/apache/arrow/memory/BaseAllocator.java index b11678e8bb9a..6bbe37f01d79 100644 --- a/java/memory/src/main/java/org/apache/arrow/memory/BaseAllocator.java +++ b/java/memory/src/main/java/org/apache/arrow/memory/BaseAllocator.java @@ -20,7 +20,6 @@ import java.util.Arrays; import java.util.IdentityHashMap; import java.util.Set; -import java.util.concurrent.atomic.AtomicInteger; import org.apache.arrow.memory.util.AssertionUtil; import org.apache.arrow.memory.util.HistoricalLog; @@ -681,6 +680,9 @@ private void dumpBuffers(final StringBuilder sb, final Set ledgerS } } + /** + * Enum for logging verbosity. + */ public static enum Verbosity { BASIC(false, false), // only include basic information LOG(true, false), // include basic diff --git a/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferNOOP.java b/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferNOOP.java index 7c0997d53960..964a2c428f38 100644 --- a/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferNOOP.java +++ b/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferNOOP.java @@ -19,6 +19,9 @@ import io.netty.buffer.ArrowBuf; +/** + * An {@link OwnershipTransferResult} indicating no transfer needed. + */ public class OwnershipTransferNOOP implements OwnershipTransferResult { private final ArrowBuf buffer; diff --git a/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferResult.java b/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferResult.java index 19255bdb5045..c94393a9a710 100644 --- a/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferResult.java +++ b/java/memory/src/main/java/org/apache/arrow/memory/OwnershipTransferResult.java @@ -19,6 +19,9 @@ import io.netty.buffer.ArrowBuf; +/** + * The result of transferring an {@link ArrowBuf} between {@linkplain BufferAllocator}s. + */ public interface OwnershipTransferResult { boolean getAllocationFit(); diff --git a/java/memory/src/main/java/org/apache/arrow/memory/ValueWithKeyIncluded.java b/java/memory/src/main/java/org/apache/arrow/memory/ValueWithKeyIncluded.java index 20ab77031b8b..cb23c2eaa276 100644 --- a/java/memory/src/main/java/org/apache/arrow/memory/ValueWithKeyIncluded.java +++ b/java/memory/src/main/java/org/apache/arrow/memory/ValueWithKeyIncluded.java @@ -20,6 +20,8 @@ /** * Helper Iface to generify a value to be included in the map where * key is part of the value. + * + * @param The type of the key. */ public interface ValueWithKeyIncluded { K getKey(); diff --git a/java/memory/src/main/java/org/apache/arrow/memory/util/AssertionUtil.java b/java/memory/src/main/java/org/apache/arrow/memory/util/AssertionUtil.java index 7135f860f821..5e5b331faeb7 100644 --- a/java/memory/src/main/java/org/apache/arrow/memory/util/AssertionUtil.java +++ b/java/memory/src/main/java/org/apache/arrow/memory/util/AssertionUtil.java @@ -17,6 +17,9 @@ package org.apache.arrow.memory.util; +/** + * Utility class to that provides {@link #ASSERT_ENABLED} constant to determine if assertions are enabled. + */ public class AssertionUtil { public static final boolean ASSERT_ENABLED; diff --git a/java/memory/src/main/java/org/apache/arrow/util/VisibleForTesting.java b/java/memory/src/main/java/org/apache/arrow/util/VisibleForTesting.java index ab46800994d1..59414caa7760 100644 --- a/java/memory/src/main/java/org/apache/arrow/util/VisibleForTesting.java +++ b/java/memory/src/main/java/org/apache/arrow/util/VisibleForTesting.java @@ -17,5 +17,10 @@ package org.apache.arrow.util; +/** + * Annotation to indicate an class member or class is visible + * only for the purposes of testing and otherwise should not + * be referenced by other classes. + */ public @interface VisibleForTesting { } diff --git a/java/plasma/src/main/java/org/apache/arrow/plasma/ObjectStoreLink.java b/java/plasma/src/main/java/org/apache/arrow/plasma/ObjectStoreLink.java index 520549b8d333..ba339da845ef 100644 --- a/java/plasma/src/main/java/org/apache/arrow/plasma/ObjectStoreLink.java +++ b/java/plasma/src/main/java/org/apache/arrow/plasma/ObjectStoreLink.java @@ -27,6 +27,9 @@ */ public interface ObjectStoreLink { + /** + * Tuple for data and metadata stored in Plasma. + */ class ObjectStoreData { public ObjectStoreData(byte[] metadata, byte[] data) { diff --git a/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/DuplicateObjectException.java b/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/DuplicateObjectException.java index 464d54d6d5b1..cb735282cea5 100644 --- a/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/DuplicateObjectException.java +++ b/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/DuplicateObjectException.java @@ -17,6 +17,9 @@ package org.apache.arrow.plasma.exceptions; +/** + * Thrown when attempting to place an object into the store for an ID that already exists. + */ public class DuplicateObjectException extends RuntimeException { public DuplicateObjectException(String objectId) { diff --git a/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaClientException.java b/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaClientException.java index 0608ad7178d4..ff9d96b17243 100644 --- a/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaClientException.java +++ b/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaClientException.java @@ -17,6 +17,9 @@ package org.apache.arrow.plasma.exceptions; +/** + * Generic exception thrown by the plasma client (for example on failure to connect). + */ public class PlasmaClientException extends RuntimeException { public PlasmaClientException(String message) { diff --git a/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaOutOfMemoryException.java b/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaOutOfMemoryException.java index 831a4caf6280..fd323fa70c99 100644 --- a/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaOutOfMemoryException.java +++ b/java/plasma/src/main/java/org/apache/arrow/plasma/exceptions/PlasmaOutOfMemoryException.java @@ -17,6 +17,9 @@ package org.apache.arrow.plasma.exceptions; +/** + * Indicates no more memory is available in Plasma. + */ public class PlasmaOutOfMemoryException extends RuntimeException { public PlasmaOutOfMemoryException() { diff --git a/java/tools/src/main/java/org/apache/arrow/tools/EchoServer.java b/java/tools/src/main/java/org/apache/arrow/tools/EchoServer.java index 477211f640fd..b10507386027 100644 --- a/java/tools/src/main/java/org/apache/arrow/tools/EchoServer.java +++ b/java/tools/src/main/java/org/apache/arrow/tools/EchoServer.java @@ -98,6 +98,9 @@ public void close() throws IOException { serverSocket.close(); } + /** + * Handler for each client connection to the server. + */ public static class ClientConnection implements AutoCloseable { public final Socket socket; diff --git a/java/tools/src/main/java/org/apache/arrow/tools/FileRoundtrip.java b/java/tools/src/main/java/org/apache/arrow/tools/FileRoundtrip.java index 921690eaedb8..c49b04c85584 100644 --- a/java/tools/src/main/java/org/apache/arrow/tools/FileRoundtrip.java +++ b/java/tools/src/main/java/org/apache/arrow/tools/FileRoundtrip.java @@ -37,6 +37,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +/** + * Application that verifies data can be round-tripped through a file. + */ public class FileRoundtrip { private static final Logger LOGGER = LoggerFactory.getLogger(FileRoundtrip.class); private final Options options; diff --git a/java/tools/src/main/java/org/apache/arrow/tools/Integration.java b/java/tools/src/main/java/org/apache/arrow/tools/Integration.java index 559b7eafa64a..cd374a97d710 100644 --- a/java/tools/src/main/java/org/apache/arrow/tools/Integration.java +++ b/java/tools/src/main/java/org/apache/arrow/tools/Integration.java @@ -127,6 +127,9 @@ private Command toCommand(String commandName) { } } + /** + * Commands (actions) the application can perform. + */ enum Command { ARROW_TO_JSON(true, false) { @Override diff --git a/java/vector/src/main/java/org/apache/arrow/util/Collections2.java b/java/vector/src/main/java/org/apache/arrow/util/Collections2.java index 9ea499479f11..fc48b4a37f15 100644 --- a/java/vector/src/main/java/org/apache/arrow/util/Collections2.java +++ b/java/vector/src/main/java/org/apache/arrow/util/Collections2.java @@ -29,6 +29,9 @@ import java.util.stream.Collectors; import java.util.stream.StreamSupport; +/** + * Utility methods for manipulating {@link java.util.Collections} and their subclasses/implementations. + */ public class Collections2 { private Collections2() {} diff --git a/java/vector/src/main/java/org/apache/arrow/vector/AddOrGetResult.java b/java/vector/src/main/java/org/apache/arrow/vector/AddOrGetResult.java index df38641b47a4..30aadfbcabde 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/AddOrGetResult.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/AddOrGetResult.java @@ -19,7 +19,11 @@ import org.apache.arrow.util.Preconditions; -/** Tuple class containing a vector and whether is was created. */ +/** + * Tuple class containing a vector and whether is was created. + * + * @param The type of vector the result is for. + */ public class AddOrGetResult { private final V vector; private final boolean created; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/BaseValueVector.java b/java/vector/src/main/java/org/apache/arrow/vector/BaseValueVector.java index 2b62807cd409..e60aeea15fd1 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/BaseValueVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/BaseValueVector.java @@ -139,6 +139,9 @@ long computeCombinedBufferSize(int valueCount, int typeWidth) { return BaseAllocator.nextPowerOfTwo(bufferSize); } + /** + * Container for primitive vectors (1 for the validity bit-mask and one to hold the values). + */ class DataAndValidityBuffers { private ArrowBuf dataBuf; private ArrowBuf validityBuf; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/BufferLayout.java b/java/vector/src/main/java/org/apache/arrow/vector/BufferLayout.java index 160c233e3552..d50568b98771 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/BufferLayout.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/BufferLayout.java @@ -26,6 +26,9 @@ */ public class BufferLayout { + /** + * Enumeration of the different logical types a buffer can have. + */ public enum BufferType { DATA("DATA"), OFFSET("OFFSET"), diff --git a/java/vector/src/main/java/org/apache/arrow/vector/FixedWidthVector.java b/java/vector/src/main/java/org/apache/arrow/vector/FixedWidthVector.java index 0eba58cb5385..d70ae29e5848 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/FixedWidthVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/FixedWidthVector.java @@ -18,6 +18,9 @@ package org.apache.arrow.vector; +/** + * Interface for all fixed width {@link ValueVector} (e.g. integer, fixed size binary, etc). + */ public interface FixedWidthVector extends ValueVector { /** diff --git a/java/vector/src/main/java/org/apache/arrow/vector/SchemaChangeCallBack.java b/java/vector/src/main/java/org/apache/arrow/vector/SchemaChangeCallBack.java index dcdc66b3e8cf..b61e4a160fc0 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/SchemaChangeCallBack.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/SchemaChangeCallBack.java @@ -20,6 +20,10 @@ import org.apache.arrow.vector.util.CallBack; +/** + * Callback for when the Schema for the Vector changes (generally happens when a vector is promoted to a union type + * from a single value type). + */ public class SchemaChangeCallBack implements CallBack { private boolean schemaChanged = false; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/TimeStampVector.java b/java/vector/src/main/java/org/apache/arrow/vector/TimeStampVector.java index 5f66ddc3f0ec..d4aa9d8c68ac 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/TimeStampVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/TimeStampVector.java @@ -193,6 +193,9 @@ public static long get(final ArrowBuf buffer, final int index) { *----------------------------------------------------------------*/ + /** + * {@link TransferPair} for {@link TimeStampVector}. + */ public class TransferImpl implements TransferPair { TimeStampVector to; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/VariableWidthVector.java b/java/vector/src/main/java/org/apache/arrow/vector/VariableWidthVector.java index fe1fcfba41fc..758d596b81cb 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/VariableWidthVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/VariableWidthVector.java @@ -17,6 +17,9 @@ package org.apache.arrow.vector; +/** + * Interface vectors that contain variable width members (e.g. Strings, Lists, etc). + */ public interface VariableWidthVector extends ValueVector, DensityAwareVector { /** diff --git a/java/vector/src/main/java/org/apache/arrow/vector/VectorDefinitionSetter.java b/java/vector/src/main/java/org/apache/arrow/vector/VectorDefinitionSetter.java index a0eb23f949ed..39804ee41702 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/VectorDefinitionSetter.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/VectorDefinitionSetter.java @@ -17,7 +17,10 @@ package org.apache.arrow.vector; +/** + * Interface for setting a specific index values as defined/valid on a vector. + */ public interface VectorDefinitionSetter { - public void setIndexDefined(int index); + void setIndexDefined(int index); } diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ZeroVector.java b/java/vector/src/main/java/org/apache/arrow/vector/ZeroVector.java index aad7080f0035..37784ede1d1f 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ZeroVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ZeroVector.java @@ -37,6 +37,9 @@ import io.netty.buffer.ArrowBuf; +/** + * A zero length vector of any type. + */ public class ZeroVector implements FieldVector { public static final ZeroVector INSTANCE = new ZeroVector(); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/NonNullableStructVector.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/NonNullableStructVector.java index b6aa7b8e9ff7..1ca315a843c7 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/NonNullableStructVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/NonNullableStructVector.java @@ -186,6 +186,9 @@ public TransferPair getTransferPair(String ref, BufferAllocator allocator) { return new StructTransferPair(this, new NonNullableStructVector(ref, allocator, fieldType, callBack), false); } + /** + * {@link TransferPair} for this this class. + */ protected static class StructTransferPair implements TransferPair { private final TransferPair[] pairs; private final NonNullableStructVector from; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/Positionable.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/Positionable.java index 82c612680985..d1985c10a4b0 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/Positionable.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/Positionable.java @@ -17,6 +17,11 @@ package org.apache.arrow.vector.complex; +/** + * Get and set position in a particular data structure. + * + */ +@SuppressWarnings("unused") // Used in when instantiating freemarker templates. public interface Positionable { public int getPosition(); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/PromotableVector.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/PromotableVector.java index a3595bde76ba..6c8cba55a52e 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/PromotableVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/PromotableVector.java @@ -23,6 +23,9 @@ import org.apache.arrow.vector.types.pojo.DictionaryEncoding; import org.apache.arrow.vector.types.pojo.FieldType; +/** + * Vector that can store multiple {@linkplain FieldType} vectors as children. + */ public interface PromotableVector { AddOrGetResult addOrGetVector(FieldType type); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/RepeatedVariableWidthVectorLike.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/RepeatedVariableWidthVectorLike.java index 6c5045167ade..5f5324138c50 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/RepeatedVariableWidthVectorLike.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/RepeatedVariableWidthVectorLike.java @@ -17,6 +17,10 @@ package org.apache.arrow.vector.complex; +/** + * A {@link org.apache.arrow.vector.ValueVector} mix-in that can be used in conjunction with + * variable {@link RepeatedValueVector} subtypes (e.g. Strings, Lists, etc). + */ public interface RepeatedVariableWidthVectorLike { /** * Allocate a new memory space for this vector. Must be called prior to using the ValueVector. diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/StructVector.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/StructVector.java index c7f95f81976f..03cb359d4786 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/StructVector.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/StructVector.java @@ -164,6 +164,9 @@ public TransferPair getTransferPair(String ref, BufferAllocator allocator, CallB return new NullableStructTransferPair(this, new StructVector(ref, allocator, fieldType, callBack), false); } + /** + * {@link TransferPair} for this (nullable) {@link StructVector}. + */ protected class NullableStructTransferPair extends StructTransferPair { private StructVector target; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/VectorWithOrdinal.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/VectorWithOrdinal.java index 9104532fec9e..fa00f4b630fc 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/VectorWithOrdinal.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/VectorWithOrdinal.java @@ -19,6 +19,10 @@ import org.apache.arrow.vector.ValueVector; +/** + * Tuple of a {@link ValueVector} and an index into a data structure containing the {@link ValueVector}. + * Useful for composite types to determine the index of a child. + */ public class VectorWithOrdinal { public final ValueVector vector; public final int ordinal; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseReader.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseReader.java index 9080b54df2f5..b5cb8b3b99c9 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseReader.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseReader.java @@ -24,7 +24,11 @@ import org.apache.arrow.vector.complex.writer.FieldWriter; import org.apache.arrow.vector.holders.UnionHolder; - +/** + * Base class providing common functionality for {@link FieldReader} implementations. + * + *

This includes tracking the current index and throwing implementations of optional methods. + */ abstract class AbstractBaseReader implements FieldReader { static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(AbstractBaseReader.class); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseWriter.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseWriter.java index 8236f88e3faf..cc3c5deed505 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseWriter.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/AbstractBaseWriter.java @@ -20,6 +20,11 @@ import org.apache.arrow.vector.complex.writer.FieldWriter; +/** + * Base class providing common functionality for {@link FieldWriter} implementations. + * + *

Currently this only includes index tracking. + */ abstract class AbstractBaseWriter implements FieldWriter { //private static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(AbstractBaseWriter.class); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructReaderImpl.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructReaderImpl.java index d1c5b248826e..5c098f627a15 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructReaderImpl.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructReaderImpl.java @@ -22,6 +22,10 @@ import org.apache.arrow.vector.complex.writer.BaseWriter.StructWriter; import org.apache.arrow.vector.types.pojo.Field; +/** + * An {@link org.apache.arrow.vector.complex.reader.FieldReader} for + * reading nullable struct vectors. + */ public class NullableStructReaderImpl extends SingleStructReaderImpl { private StructVector nullableStructVector; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructWriterFactory.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructWriterFactory.java index e5f6c55f2cd6..458aa7b61014 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructWriterFactory.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/NullableStructWriterFactory.java @@ -19,6 +19,10 @@ import org.apache.arrow.vector.complex.StructVector; +/** + * A factory for {@link NullableStructWriter} instances. The factory allows for configuring if field + * names should be considered case sensitive. + */ public class NullableStructWriterFactory { private final boolean caseSensitive; private static final NullableStructWriterFactory nullableStructWriterFactory = diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/SingleStructReaderImpl.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/SingleStructReaderImpl.java index 26427ab2bc3b..3590e40cef74 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/SingleStructReaderImpl.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/SingleStructReaderImpl.java @@ -28,6 +28,9 @@ import org.apache.arrow.vector.types.Types.MinorType; import org.apache.arrow.vector.types.pojo.Field; +/** + * {@link FieldReader} for a single {@link org.apache.arrow.vector.complex.NonNullableStructVector}. + */ @SuppressWarnings("unused") public class SingleStructReaderImpl extends AbstractFieldReader { diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/UnionListReader.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/UnionListReader.java index 711583c2a4bb..a8c185aef6bc 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/UnionListReader.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/impl/UnionListReader.java @@ -26,6 +26,9 @@ import org.apache.arrow.vector.types.Types.MinorType; import org.apache.arrow.vector.types.pojo.Field; +/** + * {@link FieldReader} for list of union types. + */ public class UnionListReader extends AbstractFieldReader { private ListVector vector; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/reader/FieldReader.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/reader/FieldReader.java index dd8466be3c95..d16992f37b22 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/reader/FieldReader.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/reader/FieldReader.java @@ -24,5 +24,9 @@ import org.apache.arrow.vector.complex.reader.BaseReader.StructReader; +/** + * Composite of all Reader types (e.g. {@link StructReader}, {@link ScalarReader}, etc). Each reader type + * is in essence a way of iterating over a {@link ValueVector}. + */ public interface FieldReader extends StructReader, ListReader, ScalarReader, RepeatedStructReader, RepeatedListReader { } diff --git a/java/vector/src/main/java/org/apache/arrow/vector/complex/writer/FieldWriter.java b/java/vector/src/main/java/org/apache/arrow/vector/complex/writer/FieldWriter.java index aa4f422dab56..bf05a0ace30f 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/complex/writer/FieldWriter.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/complex/writer/FieldWriter.java @@ -21,6 +21,10 @@ import org.apache.arrow.vector.complex.writer.BaseWriter.ScalarWriter; import org.apache.arrow.vector.complex.writer.BaseWriter.StructWriter; +/** + * Composite of all writer types. Writers are convenience classes for incrementally + * adding values to {@linkplain org.apache.arrow.vector.ValueVector}s. + */ public interface FieldWriter extends StructWriter, ListWriter, ScalarWriter { void allocate(); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java b/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java index 0f2faf7c2aab..1c2a0aced176 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryEncoder.java @@ -30,6 +30,11 @@ import org.apache.arrow.vector.types.pojo.FieldType; import org.apache.arrow.vector.util.TransferPair; +/** + * Encoder/decoder for Dictionary encoded {@link ValueVector}. Dictionary encoding produces an + * integer {@link ValueVector}. Each entry in the Vector is index into the dictionary which can hold + * values of any type. + */ public class DictionaryEncoder { // TODO recursively examine fields? diff --git a/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryProvider.java b/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryProvider.java index 5a2727e486a6..e99fd1c38244 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryProvider.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/dictionary/DictionaryProvider.java @@ -29,6 +29,9 @@ public interface DictionaryProvider { /** Return the dictionary for the given ID. */ public Dictionary lookup(long id); + /** + * Implementation of {@link DictionaryProvider} that is backed by a hash-map. + */ public static class MapDictionaryProvider implements DictionaryProvider { private final Map map; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/holders/ComplexHolder.java b/java/vector/src/main/java/org/apache/arrow/vector/holders/ComplexHolder.java index 024cf873f384..b4cb4882f39b 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/holders/ComplexHolder.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/holders/ComplexHolder.java @@ -19,6 +19,9 @@ import org.apache.arrow.vector.complex.reader.FieldReader; +/** + * Represents a single value of a complex type (e.g. Union, Struct). + */ public class ComplexHolder implements ValueHolder { public FieldReader reader; public int isSet; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedListHolder.java b/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedListHolder.java index a881be481119..fc17704f01d8 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedListHolder.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedListHolder.java @@ -17,6 +17,9 @@ package org.apache.arrow.vector.holders; +/** + * {@link ValueHolder} for a nested {@link org.apache.arrow.vector.complex.ListVector}. + */ public final class RepeatedListHolder implements ValueHolder { public int start; public int end; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedStructHolder.java b/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedStructHolder.java index 71e4d009dad1..32c590a8af29 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedStructHolder.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/holders/RepeatedStructHolder.java @@ -17,6 +17,9 @@ package org.apache.arrow.vector.holders; +/** + * {@link ValueHolder} for a list of structs. + */ public final class RepeatedStructHolder implements ValueHolder { public int start; public int end; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/holders/UnionHolder.java b/java/vector/src/main/java/org/apache/arrow/vector/holders/UnionHolder.java index 4bf3890598db..e67a0e941da9 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/holders/UnionHolder.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/holders/UnionHolder.java @@ -20,6 +20,9 @@ import org.apache.arrow.vector.complex.reader.FieldReader; import org.apache.arrow.vector.types.Types.MinorType; +/** + * {@link ValueHolder} for Union Vectors. + */ public class UnionHolder implements ValueHolder { public FieldReader reader; public int isSet; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowFileWriter.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowFileWriter.java index 29a52140c2f3..7a9727aaf77f 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowFileWriter.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowFileWriter.java @@ -32,6 +32,9 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; +/** + * {@link ArrowWriter} that writes out a Arrow files (https://arrow.apache.org/docs/format/IPC.html#file-format). + */ public class ArrowFileWriter extends ArrowWriter { private static final Logger LOGGER = LoggerFactory.getLogger(ArrowFileWriter.class); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowMagic.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowMagic.java index fd3973025493..9c399669affc 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowMagic.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/ArrowMagic.java @@ -21,7 +21,11 @@ import java.nio.charset.StandardCharsets; import java.util.Arrays; +/** + * Magic header/footer helpers for {@link ArrowFileWriter} and {@link ArrowFileReader} formatted files. + */ class ArrowMagic { + private ArrowMagic(){} private static final byte[] MAGIC = "ARROW1".getBytes(StandardCharsets.UTF_8); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/InvalidArrowFileException.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/InvalidArrowFileException.java index 97bde246753c..e234058e6851 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/InvalidArrowFileException.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/InvalidArrowFileException.java @@ -17,6 +17,9 @@ package org.apache.arrow.vector.ipc; +/** + * Exception indicating a problem with an Arrow File (https://arrow.apache.org/docs/format/IPC.html#file-format). + */ public class InvalidArrowFileException extends RuntimeException { private static final long serialVersionUID = 1L; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/JsonFileWriter.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/JsonFileWriter.java index ddf13bc736e2..937550cf44ba 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/JsonFileWriter.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/JsonFileWriter.java @@ -82,6 +82,9 @@ */ public class JsonFileWriter implements AutoCloseable { + /** + * Configuration POJO for writing JSON files. + */ public static final class JSONWriteConfig { private final boolean pretty; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/ReadChannel.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/ReadChannel.java index bfceb635e78c..3c3069e8b03b 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/ReadChannel.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/ReadChannel.java @@ -26,6 +26,9 @@ import io.netty.buffer.ArrowBuf; +/** + * Adapter around {@link ReadableByteChannel} that reads into {@linkplain ArrowBuf}s. + */ public class ReadChannel implements AutoCloseable { private static final Logger LOGGER = LoggerFactory.getLogger(ReadChannel.class); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/SeekableReadChannel.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/SeekableReadChannel.java index d8e5337a01a9..4b6e0ed76e52 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/SeekableReadChannel.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/SeekableReadChannel.java @@ -20,6 +20,10 @@ import java.io.IOException; import java.nio.channels.SeekableByteChannel; +/** + * An {@link ReadChannel} that supports seeking to a + * random position. + */ public class SeekableReadChannel extends ReadChannel { private final SeekableByteChannel in; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowDictionaryBatch.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowDictionaryBatch.java index b73287cd26d1..a466db8bf9be 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowDictionaryBatch.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowDictionaryBatch.java @@ -21,6 +21,10 @@ import com.google.flatbuffers.FlatBufferBuilder; +/** + * POJO wrapper around a Dictionary Batch IPC messages + * (https://arrow.apache.org/docs/format/IPC.html#dictionary-batches) + */ public class ArrowDictionaryBatch implements ArrowMessage { private final long dictionaryId; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowMessage.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowMessage.java index f4f61b1191a3..45c697aceca3 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowMessage.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowMessage.java @@ -17,15 +17,23 @@ package org.apache.arrow.vector.ipc.message; +/** + * Interface for Arrow IPC messages (https://arrow.apache.org/docs/format/IPC.html). + */ public interface ArrowMessage extends FBSerializable, AutoCloseable { - public int computeBodyLength(); + int computeBodyLength(); - public T accepts(ArrowMessageVisitor visitor); + T accepts(ArrowMessageVisitor visitor); - public static interface ArrowMessageVisitor { - public T visit(ArrowDictionaryBatch message); + /** + * Visitor interface for implementations of {@link ArrowMessage}. + * + * @param The type of value to return after visiting. + */ + static interface ArrowMessageVisitor { + T visit(ArrowDictionaryBatch message); - public T visit(ArrowRecordBatch message); + T visit(ArrowRecordBatch message); } } diff --git a/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowRecordBatch.java b/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowRecordBatch.java index ce7aefc3c2e0..1d69abd895ee 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowRecordBatch.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/ipc/message/ArrowRecordBatch.java @@ -32,6 +32,9 @@ import io.netty.buffer.ArrowBuf; +/** + * POJO representation of an RecordBatch IPC message (https://arrow.apache.org/docs/format/IPC.html). + */ public class ArrowRecordBatch implements ArrowMessage { private static final Logger LOGGER = LoggerFactory.getLogger(ArrowRecordBatch.class); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/DateUnit.java b/java/vector/src/main/java/org/apache/arrow/vector/types/DateUnit.java index 28a32345cca2..8fce12e83aa5 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/DateUnit.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/DateUnit.java @@ -17,8 +17,13 @@ package org.apache.arrow.vector.types; +/** + * Resolutions that dates can be stored at. + */ public enum DateUnit { + /** Days since epoch. */ DAY(org.apache.arrow.flatbuf.DateUnit.DAY), + /** Milliseconds since epoch. */ MILLISECOND(org.apache.arrow.flatbuf.DateUnit.MILLISECOND); private static final DateUnit[] valuesByFlatbufId = new DateUnit[DateUnit.values().length]; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/FloatingPointPrecision.java b/java/vector/src/main/java/org/apache/arrow/vector/types/FloatingPointPrecision.java index 39069b25fb70..c52fc1243d99 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/FloatingPointPrecision.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/FloatingPointPrecision.java @@ -19,9 +19,15 @@ import org.apache.arrow.flatbuf.Precision; +/** + * Precisions of primitive floating point numbers. + */ public enum FloatingPointPrecision { + /** 16-bit (not a standard java type). */ HALF(Precision.HALF), + /** 32-bit (i.e. float in java). */ SINGLE(Precision.SINGLE), + /** 64-bit (i.e. double in java). */ DOUBLE(Precision.DOUBLE); private static final FloatingPointPrecision[] valuesByFlatbufId = diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/IntervalUnit.java b/java/vector/src/main/java/org/apache/arrow/vector/types/IntervalUnit.java index 68abf4dbabdc..66a51a471ab0 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/IntervalUnit.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/IntervalUnit.java @@ -17,8 +17,13 @@ package org.apache.arrow.vector.types; +/** + * Resolutions for Interval Vectors. + */ public enum IntervalUnit { + /** Values are stored as number of months (which can be converted into years and months via division). */ YEAR_MONTH(org.apache.arrow.flatbuf.IntervalUnit.YEAR_MONTH), + /** Values are stored as some number of days and some number of milliseconds within that day. */ DAY_TIME(org.apache.arrow.flatbuf.IntervalUnit.DAY_TIME); private static final IntervalUnit[] valuesByFlatbufId = new IntervalUnit[IntervalUnit.values().length]; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/TimeUnit.java b/java/vector/src/main/java/org/apache/arrow/vector/types/TimeUnit.java index ee0e67e5a656..dcaebba48886 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/TimeUnit.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/TimeUnit.java @@ -17,6 +17,9 @@ package org.apache.arrow.vector.types; +/** + * Resolutions that times can be stored with. + */ public enum TimeUnit { SECOND(org.apache.arrow.flatbuf.TimeUnit.SECOND), MILLISECOND(org.apache.arrow.flatbuf.TimeUnit.MILLISECOND), diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/Types.java b/java/vector/src/main/java/org/apache/arrow/vector/types/Types.java index c0180a0463ca..f8ec4ca8f835 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/Types.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/Types.java @@ -122,6 +122,9 @@ /** An enumeration of all logical types supported by this library. */ public class Types { + /** + * The actual enumeration of types. + */ public enum MinorType { NULL(Null.INSTANCE) { @Override diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/UnionMode.java b/java/vector/src/main/java/org/apache/arrow/vector/types/UnionMode.java index d365bf82574a..18ceaf020b2c 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/UnionMode.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/UnionMode.java @@ -17,8 +17,20 @@ package org.apache.arrow.vector.types; +/** + * Different memory layouts for Union Vectors. + */ public enum UnionMode { + /** + * Each child vector is the same length as the overall vector, and there is one 8-bit integer buffer to indicate + * the index of a child vector to use at any given position. + */ Sparse(org.apache.arrow.flatbuf.UnionMode.Sparse), + /** + * Each child vector is of variable width. The parent vector contains both an child index vector (like in + * {@link #Sparse}) and in addition a slot index buffer to determine the offset into the child vector indicated + * by the index vector. + */ Dense(org.apache.arrow.flatbuf.UnionMode.Dense); private static final UnionMode[] valuesByFlatbufId = new UnionMode[UnionMode.values().length]; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/types/pojo/FieldType.java b/java/vector/src/main/java/org/apache/arrow/vector/types/pojo/FieldType.java index d3a6eb4a34aa..cf33e56b25a1 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/types/pojo/FieldType.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/types/pojo/FieldType.java @@ -27,6 +27,10 @@ import org.apache.arrow.vector.types.Types.MinorType; import org.apache.arrow.vector.util.CallBack; +/** + * POJO representation of an Arrow field type. It consists of a logical type, nullability and whether the field + * (column) is dictionary encoded. + */ public class FieldType { public static FieldType nullable(ArrowType type) { diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/ByteFunctionHelpers.java b/java/vector/src/main/java/org/apache/arrow/vector/util/ByteFunctionHelpers.java index bbe6d1c907b2..d3179c16fd9f 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/ByteFunctionHelpers.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/ByteFunctionHelpers.java @@ -22,9 +22,14 @@ import io.netty.buffer.ArrowBuf; import io.netty.util.internal.PlatformDependent; +/** + * Utility methods for memory comparison at a byte level. + */ public class ByteFunctionHelpers { static final org.slf4j.Logger logger = org.slf4j.LoggerFactory.getLogger(ByteFunctionHelpers.class); + private ByteFunctionHelpers() {} + /** * Helper function to check for equality of bytes in two ArrowBufs. * diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/CallBack.java b/java/vector/src/main/java/org/apache/arrow/vector/util/CallBack.java index c565d63d19e4..ddeca59b06f3 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/CallBack.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/CallBack.java @@ -17,7 +17,9 @@ package org.apache.arrow.vector.util; - +/** + * Generic callback interface to be notified of events on value vectors. + */ public interface CallBack { - public void doWork(); + void doWork(); } diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/DecimalUtility.java b/java/vector/src/main/java/org/apache/arrow/vector/util/DecimalUtility.java index 00c6b5d60a52..0f00e7230502 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/DecimalUtility.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/DecimalUtility.java @@ -23,6 +23,9 @@ import io.netty.buffer.ArrowBuf; +/** + * Utility methods for configurable precision Decimal values (e.g. {@link BigDecimal}). + */ public class DecimalUtility { private DecimalUtility() {} diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/DictionaryUtility.java b/java/vector/src/main/java/org/apache/arrow/vector/util/DictionaryUtility.java index f2d1663ac011..f3f47b236142 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/DictionaryUtility.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/DictionaryUtility.java @@ -31,8 +31,11 @@ import org.apache.arrow.vector.types.pojo.Field; import org.apache.arrow.vector.types.pojo.FieldType; - +/** + * Utility methods for working with Dictionaries used in Dictionary encodings. + */ public class DictionaryUtility { + private DictionaryUtility() {} /** * Convert field and child fields that have a dictionary encoding to message format, so fields diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringArrayList.java b/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringArrayList.java index 96327e7fa3ac..2ca71ec63d5a 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringArrayList.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringArrayList.java @@ -22,6 +22,12 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +/** + * Extension of {@link ArrayList} that {@link #toString()} method returns the serialized JSON + * version of its members (or throws an exception if they can't be converted to JSON). + * + * @param Type of value held in the list. + */ public class JsonStringArrayList extends ArrayList { private static ObjectMapper mapper; diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringHashMap.java b/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringHashMap.java index 542bb6d17e09..f41ae4ee27a9 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringHashMap.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/JsonStringHashMap.java @@ -22,9 +22,12 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; -/* +/** * Simple class that extends the regular java.util.HashMap but overrides the * toString() method of the HashMap class to produce a JSON string instead + * + * @param The type of the key for the map. + * @param The type of the value for the map. */ public class JsonStringHashMap extends LinkedHashMap { diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/SchemaChangeRuntimeException.java b/java/vector/src/main/java/org/apache/arrow/vector/util/SchemaChangeRuntimeException.java index c9e225776d5d..c29eb6ad3731 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/SchemaChangeRuntimeException.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/SchemaChangeRuntimeException.java @@ -18,6 +18,9 @@ package org.apache.arrow.vector.util; +/** + * Thrown when child vectors (e.g. in lists) don't match the expected type. + */ public class SchemaChangeRuntimeException extends RuntimeException { public SchemaChangeRuntimeException() { super(); diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/Text.java b/java/vector/src/main/java/org/apache/arrow/vector/util/Text.java index ef444fe40a3b..d020985956e7 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/Text.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/Text.java @@ -668,6 +668,9 @@ public static int utf8Length(String string) { return size; } + /** + * JSON serializer for {@link Text}. + */ public static class TextSerializer extends StdSerializer { public TextSerializer() { diff --git a/java/vector/src/main/java/org/apache/arrow/vector/util/TransferPair.java b/java/vector/src/main/java/org/apache/arrow/vector/util/TransferPair.java index 99e16d2a3b23..ca3876c7b86d 100644 --- a/java/vector/src/main/java/org/apache/arrow/vector/util/TransferPair.java +++ b/java/vector/src/main/java/org/apache/arrow/vector/util/TransferPair.java @@ -19,12 +19,15 @@ import org.apache.arrow.vector.ValueVector; +/** + * Interface for copying values between a pair of two vectors of the same type. + */ public interface TransferPair { - public void transfer(); + void transfer(); - public void splitAndTransfer(int startIndex, int length); + void splitAndTransfer(int startIndex, int length); - public ValueVector getTo(); + ValueVector getTo(); - public void copyValueSafe(int from, int to); + void copyValueSafe(int from, int to); }