# Class ImmutableBatchCommand

java.lang.Object
com.databricks.jdbc.api.impl.batch.ImmutableBatchCommand

All Implemented Interfaces:
  `BatchCommand`

@ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable @CheckReturnValue public final class ImmutableBatchCommand extends Object implements BatchCommand
Immutable implementation of `BatchCommand`.

Use the builder to create immutable instances: `ImmutableBatchCommand.builder()`.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static final class`
`ImmutableBatchCommand.Builder`
Builds instances of type `ImmutableBatchCommand`.

## Method Summary

Modifier and Type
Method
Description
`static ImmutableBatchCommand.Builder`
`builder()`
Creates a builder for `ImmutableBatchCommand`.
`static ImmutableBatchCommand`
`copyOf(BatchCommand instance)`
Creates an immutable copy of a `BatchCommand` value.
`boolean`
`equals(Object another)`
This instance is equal to all instances of `ImmutableBatchCommand` that have equal attribute values.
`String`
`getSql()`
Returns the SQL command string.
`int`
`hashCode()`
Computes a hash code from attributes: `sql`.
`String`
`toString()`
Prints the immutable value `BatchCommand` with attribute values.
`final ImmutableBatchCommand`
`withSql(String value)`
Copy the current immutable object by setting a value for the `sql` attribute.

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Method Details

### getSql

public String getSql()
Returns the SQL command string.

Specified by:
  `getSql` in interface `BatchCommand`

### withSql

public final ImmutableBatchCommand withSql(String value)
Copy the current immutable object by setting a value for the `sql` attribute. An equals check used to prevent copying of the same value by returning `this`.

Parameters:
  `value` - A new value for sql
Returns:
  A modified copy of the `this` object

### equals

public boolean equals(@Nullable Object another)
This instance is equal to all instances of `ImmutableBatchCommand` that have equal attribute values.

Overrides:
  `equals` in class `Object`
Returns:
  `true` if `this` is equal to `another` instance

### hashCode

public int hashCode()
Computes a hash code from attributes: `sql`.

Overrides:
  `hashCode` in class `Object`
Returns:
  hashCode value

### toString

public String toString()
Prints the immutable value `BatchCommand` with attribute values.

Overrides:
  `toString` in class `Object`
Returns:
  A string representation of the value

### copyOf

public static ImmutableBatchCommand copyOf(BatchCommand instance)
Creates an immutable copy of a `BatchCommand` value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.

Parameters:
  `instance` - The instance to copy
Returns:
  A copied immutable BatchCommand instance

### builder

public static ImmutableBatchCommand.Builder builder()
Creates a builder for `ImmutableBatchCommand`.

     ImmutableBatchCommand.builder()
        .sql(String) // required sql
        .build();

Returns:
  A new ImmutableBatchCommand builder