/*
 * このソースコードは blanco Frameworkによって自動生成されています。
 * キーに関する情報を格納します
 */
package blanco.dbmetadata.valueobject;

/**
 * キーに関する情報を格納します。java.sql.DatabaseMetaData.getImportedKeys 、java.sql.DatabaseMetaData.getExportedKeys 、 java.sql.DatabaseMetaData.getPrimaryKeys の戻り値を格納します。
 */
public class BlancoDbMetaDataKeyStructure {
    /**
     * フィールド [PKTABLE_CAT]
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表カタログ。
     */
    private String fPktableCat;

    /**
     * フィールド [PKTABLE_SCHEM]
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表スキーマ。
     */
    private String fPktableSchem;

    /**
     * フィールド [PKTABLE_NAME]
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表名。
     */
    private String fPktableName;

    /**
     * フィールド [PKCOLUMN_NAME]
     *
     * 項目の型 [java.lang.String]<br>
     * PKCOLUMN_NAME、またはCOLUMN_NAME: 主キーの列名。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。COLUMN_NAMEが格納されます。
     */
    private String fPkcolumnName;

    /**
     * フィールド [FKTABLE_CAT]
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表カタログ。
     */
    private String fFktableCat;

    /**
     * フィールド [FKTABLE_SCHEM]
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表スキーマ。
     */
    private String fFktableSchem;

    /**
     * フィールド [FKTABLE_NAME]
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表名。
     */
    private String fFktableName;

    /**
     * フィールド [FKCOLUMN_NAME]
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの列名。
     */
    private String fFkcolumnName;

    /**
     * フィールド [KEY_SEQ]
     *
     * 項目の型 [short]<br>
     * KEY_SEQ: キーのなかの連番。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。
     */
    private short fKeySeq;

    /**
     * フィールド [UPDATE_RULE]
     *
     * 項目の型 [short]<br>
     */
    private short fUpdateRule;

    /**
     * フィールド [DELETE_RULE]
     *
     * 項目の型 [short]<br>
     */
    private short fDeleteRule;

    /**
     * フィールド [FK_NAME]
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キー名。
     */
    private String fFkName;

    /**
     * フィールド [PK_NAME]
     *
     * 項目の型 [java.lang.String]<br>
     * PK_NAME: 主キー名。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。
     */
    private String fPkName;

    /**
     * フィールド [DEFERRABILITY]
     *
     * 項目の型 [short]<br>
     */
    private short fDeferrability;

    /**
     * フィールド [PKTABLE_CAT]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表カタログ。
     *
     * @param argPktableCat フィールド[PKTABLE_CAT]に格納したい値
     */
    public void setPktableCat(final String argPktableCat) {
        fPktableCat = argPktableCat;
    }

    /**
     * フィールド[PKTABLE_CAT]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表カタログ。
     *
     * @return フィールド[PKTABLE_CAT]に格納されている値
     */
    public String getPktableCat() {
        return fPktableCat;
    }

    /**
     * フィールド [PKTABLE_SCHEM]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表スキーマ。
     *
     * @param argPktableSchem フィールド[PKTABLE_SCHEM]に格納したい値
     */
    public void setPktableSchem(final String argPktableSchem) {
        fPktableSchem = argPktableSchem;
    }

    /**
     * フィールド[PKTABLE_SCHEM]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表スキーマ。
     *
     * @return フィールド[PKTABLE_SCHEM]に格納されている値
     */
    public String getPktableSchem() {
        return fPktableSchem;
    }

    /**
     * フィールド [PKTABLE_NAME]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表名。
     *
     * @param argPktableName フィールド[PKTABLE_NAME]に格納したい値
     */
    public void setPktableName(final String argPktableName) {
        fPktableName = argPktableName;
    }

    /**
     * フィールド[PKTABLE_NAME]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 主キーの表名。
     *
     * @return フィールド[PKTABLE_NAME]に格納されている値
     */
    public String getPktableName() {
        return fPktableName;
    }

    /**
     * フィールド [PKCOLUMN_NAME]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * PKCOLUMN_NAME、またはCOLUMN_NAME: 主キーの列名。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。COLUMN_NAMEが格納されます。
     *
     * @param argPkcolumnName フィールド[PKCOLUMN_NAME]に格納したい値
     */
    public void setPkcolumnName(final String argPkcolumnName) {
        fPkcolumnName = argPkcolumnName;
    }

    /**
     * フィールド[PKCOLUMN_NAME]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * PKCOLUMN_NAME、またはCOLUMN_NAME: 主キーの列名。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。COLUMN_NAMEが格納されます。
     *
     * @return フィールド[PKCOLUMN_NAME]に格納されている値
     */
    public String getPkcolumnName() {
        return fPkcolumnName;
    }

    /**
     * フィールド [FKTABLE_CAT]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表カタログ。
     *
     * @param argFktableCat フィールド[FKTABLE_CAT]に格納したい値
     */
    public void setFktableCat(final String argFktableCat) {
        fFktableCat = argFktableCat;
    }

    /**
     * フィールド[FKTABLE_CAT]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表カタログ。
     *
     * @return フィールド[FKTABLE_CAT]に格納されている値
     */
    public String getFktableCat() {
        return fFktableCat;
    }

    /**
     * フィールド [FKTABLE_SCHEM]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表スキーマ。
     *
     * @param argFktableSchem フィールド[FKTABLE_SCHEM]に格納したい値
     */
    public void setFktableSchem(final String argFktableSchem) {
        fFktableSchem = argFktableSchem;
    }

    /**
     * フィールド[FKTABLE_SCHEM]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表スキーマ。
     *
     * @return フィールド[FKTABLE_SCHEM]に格納されている値
     */
    public String getFktableSchem() {
        return fFktableSchem;
    }

    /**
     * フィールド [FKTABLE_NAME]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表名。
     *
     * @param argFktableName フィールド[FKTABLE_NAME]に格納したい値
     */
    public void setFktableName(final String argFktableName) {
        fFktableName = argFktableName;
    }

    /**
     * フィールド[FKTABLE_NAME]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの表名。
     *
     * @return フィールド[FKTABLE_NAME]に格納されている値
     */
    public String getFktableName() {
        return fFktableName;
    }

    /**
     * フィールド [FKCOLUMN_NAME]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの列名。
     *
     * @param argFkcolumnName フィールド[FKCOLUMN_NAME]に格納したい値
     */
    public void setFkcolumnName(final String argFkcolumnName) {
        fFkcolumnName = argFkcolumnName;
    }

    /**
     * フィールド[FKCOLUMN_NAME]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キーの列名。
     *
     * @return フィールド[FKCOLUMN_NAME]に格納されている値
     */
    public String getFkcolumnName() {
        return fFkcolumnName;
    }

    /**
     * フィールド [KEY_SEQ]のセッターメソッド
     *
     * 項目の型 [short]<br>
     * KEY_SEQ: キーのなかの連番。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。
     *
     * @param argKeySeq フィールド[KEY_SEQ]に格納したい値
     */
    public void setKeySeq(final short argKeySeq) {
        fKeySeq = argKeySeq;
    }

    /**
     * フィールド[KEY_SEQ]のゲッターメソッド
     *
     * 項目の型 [short]<br>
     * KEY_SEQ: キーのなかの連番。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。
     *
     * @return フィールド[KEY_SEQ]に格納されている値
     */
    public short getKeySeq() {
        return fKeySeq;
    }

    /**
     * フィールド [UPDATE_RULE]のセッターメソッド
     *
     * 項目の型 [short]<br>
     *
     * @param argUpdateRule フィールド[UPDATE_RULE]に格納したい値
     */
    public void setUpdateRule(final short argUpdateRule) {
        fUpdateRule = argUpdateRule;
    }

    /**
     * フィールド[UPDATE_RULE]のゲッターメソッド
     *
     * 項目の型 [short]<br>
     *
     * @return フィールド[UPDATE_RULE]に格納されている値
     */
    public short getUpdateRule() {
        return fUpdateRule;
    }

    /**
     * フィールド [DELETE_RULE]のセッターメソッド
     *
     * 項目の型 [short]<br>
     *
     * @param argDeleteRule フィールド[DELETE_RULE]に格納したい値
     */
    public void setDeleteRule(final short argDeleteRule) {
        fDeleteRule = argDeleteRule;
    }

    /**
     * フィールド[DELETE_RULE]のゲッターメソッド
     *
     * 項目の型 [short]<br>
     *
     * @return フィールド[DELETE_RULE]に格納されている値
     */
    public short getDeleteRule() {
        return fDeleteRule;
    }

    /**
     * フィールド [FK_NAME]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キー名。
     *
     * @param argFkName フィールド[FK_NAME]に格納したい値
     */
    public void setFkName(final String argFkName) {
        fFkName = argFkName;
    }

    /**
     * フィールド[FK_NAME]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * 外部キー名。
     *
     * @return フィールド[FK_NAME]に格納されている値
     */
    public String getFkName() {
        return fFkName;
    }

    /**
     * フィールド [PK_NAME]のセッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * PK_NAME: 主キー名。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。
     *
     * @param argPkName フィールド[PK_NAME]に格納したい値
     */
    public void setPkName(final String argPkName) {
        fPkName = argPkName;
    }

    /**
     * フィールド[PK_NAME]のゲッターメソッド
     *
     * 項目の型 [java.lang.String]<br>
     * PK_NAME: 主キー名。java.sql.DatabaseMetaData.getPrimaryKeys で利用されています。
     *
     * @return フィールド[PK_NAME]に格納されている値
     */
    public String getPkName() {
        return fPkName;
    }

    /**
     * フィールド [DEFERRABILITY]のセッターメソッド
     *
     * 項目の型 [short]<br>
     *
     * @param argDeferrability フィールド[DEFERRABILITY]に格納したい値
     */
    public void setDeferrability(final short argDeferrability) {
        fDeferrability = argDeferrability;
    }

    /**
     * フィールド[DEFERRABILITY]のゲッターメソッド
     *
     * 項目の型 [short]<br>
     *
     * @return フィールド[DEFERRABILITY]に格納されている値
     */
    public short getDeferrability() {
        return fDeferrability;
    }

    /**
     * このバリューオブジェクトの文字列表現を取得します。
     *
     * オブジェクトのシャロー範囲でしかtoStringされない点に注意して利用してください。
     *
     * @return バリューオブジェクトの文字列表現。
     */
    public String toString() {
        final StringBuffer buf = new StringBuffer();
        buf.append("blanco.dbmetadata.valueobject.BlancoDbMetaDataKeyStructure[");
        buf.append("PKTABLE_CAT=" + fPktableCat);
        buf.append(",PKTABLE_SCHEM=" + fPktableSchem);
        buf.append(",PKTABLE_NAME=" + fPktableName);
        buf.append(",PKCOLUMN_NAME=" + fPkcolumnName);
        buf.append(",FKTABLE_CAT=" + fFktableCat);
        buf.append(",FKTABLE_SCHEM=" + fFktableSchem);
        buf.append(",FKTABLE_NAME=" + fFktableName);
        buf.append(",FKCOLUMN_NAME=" + fFkcolumnName);
        buf.append(",KEY_SEQ=" + fKeySeq);
        buf.append(",UPDATE_RULE=" + fUpdateRule);
        buf.append(",DELETE_RULE=" + fDeleteRule);
        buf.append(",FK_NAME=" + fFkName);
        buf.append(",PK_NAME=" + fPkName);
        buf.append(",DEFERRABILITY=" + fDeferrability);
        buf.append("]");
        return buf.toString();
    }
}
