/*
* Copyright 2004-2019 H2 Group. Multiple-Licensed under the MPL 2.0,
* and the EPL 1.0 (http://h2database.com/html/license.html).
* Initial Developer: H2 Group
*/
package org.h2.util;
Metadata of a column.
Notice: equals(Object) and hashCode() use only name field.
/**
* Metadata of a column.
*
* <p>
* Notice: {@linkplain #equals(Object)} and {@linkplain #hashCode()} use only
* {@linkplain #name} field.
* </p>
*/
public final class SimpleColumnInfo {
Name of the column.
/**
* Name of the column.
*/
public final String name;
Type of the column, see Types
. /**
* Type of the column, see {@link java.sql.Types}.
*/
public final int type;
Type name of the column.
/**
* Type name of the column.
*/
public final String typeName;
Precision of the column
/**
* Precision of the column
*/
public final int precision;
Scale of the column.
/**
* Scale of the column.
*/
public final int scale;
Creates metadata.
Params: - name –
name of the column
- type – type of the column, see
Types
- typeName –
type name of the column
- precision –
precision of the column
- scale –
scale of the column
/**
* Creates metadata.
*
* @param name
* name of the column
* @param type
* type of the column, see {@link java.sql.Types}
* @param typeName
* type name of the column
* @param precision
* precision of the column
* @param scale
* scale of the column
*/
public SimpleColumnInfo(String name, int type, String typeName, int precision, int scale) {
this.name = name;
this.type = type;
this.typeName = typeName;
this.precision = precision;
this.scale = scale;
}
@Override
public boolean equals(Object obj) {
if (this == obj) {
return true;
}
if (obj == null || getClass() != obj.getClass()) {
return false;
}
SimpleColumnInfo other = (SimpleColumnInfo) obj;
return name.equals(other.name);
}
@Override
public int hashCode() {
return name.hashCode();
}
}