001    /*
002     * Copyright (c) 2009 The openGion Project.
003     *
004     * Licensed under the Apache License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     *
008     *     http://www.apache.org/licenses/LICENSE-2.0
009     *
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
013     * either express or implied. See the License for the specific language
014     * governing permissions and limitations under the License.
015     */
016    package org.opengion.hayabusa.db;
017    
018    /**
019     * ãƒ??タベã?ス登録時に、固定å?カラãƒ??設定を行うæƒ??を管ç�?�™るクラスですã?
020     * 具体的にはã€?
021     *     更新フラグ  FGUPD
022     *     作æ?日æ™?   DYSET
023     *     作æ??°?§    PGSET
024     *     作æ?社員    USRSET
025     *     更新日æ™?   DYUPD
026     *     更新?°?§    PGUPD
027     *     更新社員    USRUPD
028     * などのæƒ??をã?INSERT、UPDATE の状況に応じて提供しますã?
029     * 具体的には、サブクラスでの実è£?�«なりますã?
030     * 初期設定条件として、テーブル名ã?ユーザーID,画面ID を受け取りますã?
031     * 登録時刻は、このオブジェクトが生æ?された時間を通常は使用しますã?
032     * ãƒ??ブル名を渡すã?は、ワークなど、テーブル単位に処ç�?�™るカラãƒ?�Œ
033     * 異なるã?で、それへの対応ですã?
034     * 処ç�?�Œ簡ç´?Œ–できるように、ルールを規定すべきですã?
035     *
036     * @og.rev 4.1.2.0 (2008/03/12) 新規追åŠ?
037     * @og.group ãƒ??タ登録
038     *
039     * @version  4.0
040     * @author   Kazuhiko Hasegawa
041     * @since    JDK5.0,
042     */
043    public interface DBConstValue {
044    
045            /**
046             * 初期化情報を設定しますã?
047             *
048             * @param       table   ãƒ??ブルå�?
049             * @param       user    ユーザーID
050             * @param       gamen   画面ID
051             */
052            void init( String table, String user, String gamen ) ;
053    
054            /**
055             * INSERT する場合ã?キー配å?を返しますã?
056             *
057             * æŒ?®šã?値がなければã€?•·さゼロ配å?を返しますã?
058             *
059             * @return      キー配å?(非null)
060             */
061            String[] getInsertKeys() ;
062    
063            /**
064             * INSERT する場合ã?値配å?を返しますã?
065             *
066             * æŒ?®šã?値がなければã€?•·さゼロ配å?を返しますã?
067             *
068             * @return      値配å?(非null)
069             */
070            String[] getInsertVals() ;
071    
072            /**
073             * UPDATE する場合ã?キー配å?を返しますã?
074             *
075             * æŒ?®šã?値がなければã€?•·さゼロ配å?を返しますã?
076             *
077             * @return      キー配å?(非null)
078             */
079            String[] getUpdateKeys() ;
080    
081            /**
082             * UPDATE する場合ã?値配å?を返しますã?
083             *
084             * æŒ?®šã?値がなければã€?•·さゼロ配å?を返しますã?
085             *
086             * @return      値配å?(非null)
087             */
088            String[] getUpdateVals() ;
089    
090            /**
091             * DELETE(論理削除) する場合ã?キー配å?を返しますã?
092             *
093             * æŒ?®šã?値がなければã€?•·さゼロ配å?を返しますã?
094             *
095             * @return      キー配å?(非null)
096             */
097            String[] getLogicalDeleteKeys() ;
098    
099            /**
100             * DELETE(論理削除) する場合ã?値配å?を返しますã?
101             *
102             * æŒ?®šã?値がなければã€?•·さゼロ配å?を返しますã?
103             *
104             * @return      値配å?(非null)
105             */
106            String[] getLogicalDeleteVals() ;
107    }