com.github.jinahya.sql.database.metadata.bind.PrimaryKey Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of database-metadata-bind Show documentation
Show all versions of database-metadata-bind Show documentation
Class for binding results of java.sql.DatabaseMetaData
/*
* Copyright 2013 Jin Kwon .
*
* Licensed 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
*
* http://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.
*/
package com.github.jinahya.sql.database.metadata.bind;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
import org.apache.commons.lang3.builder.CompareToBuilder;
/**
* An entity class for binding the result of
* {@link java.sql.DatabaseMetaData#getPrimaryKeys(java.lang.String, java.lang.String, java.lang.String)}.
*
* @author Jin Kwon <jinahya_at_gmail.com>
*/
@XmlRootElement
@XmlType(
propOrder = {
"columnName", "keySeq", "pkName"
}
)
public class PrimaryKey extends AbstractChild
implements Comparable {
// by COLUMN_NAME.
@Override
public int compareTo(final PrimaryKey o) {
return new CompareToBuilder()
.append(columnName, o.getColumnName())
.build();
}
// ---------------------------------------------------------------- tableCat
public String getTableCat() {
return tableCat;
}
public void setTableCat(final String tableCat) {
this.tableCat = tableCat;
}
// -------------------------------------------------------------- tableSchem
public String getTableSchem() {
return tableSchem;
}
public void setTableSchem(final String tableSchem) {
this.tableSchem = tableSchem;
}
// --------------------------------------------------------------- tableName
public String getTableName() {
return tableName;
}
public void setTableName(final String tableName) {
this.tableName = tableName;
}
// -------------------------------------------------------------- columnName
public String getColumnName() {
return columnName;
}
public void setColumnName(final String columnName) {
this.columnName = columnName;
}
// ------------------------------------------------------------------ keySeq
public short getKeySeq() {
return keySeq;
}
public void setKeySeq(final short keySeq) {
this.keySeq = keySeq;
}
// ------------------------------------------------------------------ pkName
public String getPkName() {
return pkName;
}
public void setPkName(final String pkName) {
this.pkName = pkName;
}
// ------------------------------------------------------------------- table
// just for class diagram
private Table getTable() {
return getParent();
}
// public void setTable(final Table table) {
//
// setParent(table);
// }
// -------------------------------------------------------------------------
@Label("TABLE_CAT")
@NillableBySpecification
@XmlAttribute
private String tableCat;
@Label("TABLE_SCHEM")
@NillableBySpecification
@XmlAttribute
private String tableSchem;
@Label("TABLE_NAME")
@XmlAttribute
private String tableName;
@Label("COLUMN_NAME")
@XmlElement(required = true)
private String columnName;
@Label("KEY_SEQ")
@XmlElement(required = true)
private short keySeq;
@Label("PK_NAME")
@NillableBySpecification
@XmlElement(nillable = true, required = true)
private String pkName;
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy