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 */ 016package org.opengion.hayabusa.report; 017 018import org.opengion.hayabusa.db.DBTableModel; 019import org.opengion.hayabusa.resource.ResourceManager; 020 021import java.io.File; 022 023/** 024 * DBTableModel インターフェース のオブジェクトを雛型ファイルに適用して レポートを作成する為の,共通インターフェースです。 025 * 026 * @og.group 帳票システム 027 * 028 * @version 4.0 029 * @author Kazuhiko Hasegawa 030 * @since JDK5.0, 031 */ 032public interface DBTableReport { 033 034 /** 035 * DBTableModel から 各形式のデータを作成して,PrintWriter に書き出します。 036 * 037 */ 038 void writeReport() ; 039 040 /** 041 * 雛型ファイル名をセットします。 042 * 043 * @og.rev 3.6.0.0 (2004/09/17) メソッド名の変更。setInputFile ⇒ setTemplateFile 044 * @og.rev 3.8.0.0 (2005/06/07) 引数を String ⇒ File に変更 045 * 046 * @param inFile 雛型ファイル名 047 */ 048 void setTemplateFile( File inFile ) ; 049 050 /** 051 * 最初のページのみに使用する雛型ファイル名をセットします。 052 * 053 * @og.rev 3.6.0.0 (2004/09/17) 新規追加 054 * @og.rev 3.8.0.0 (2005/06/07) 引数を String ⇒ File に変更 055 * 056 * @param inFile 最初のページの雛型ファイル名 057 */ 058 void setFirstTemplateFile( File inFile ) ; 059 060 /** 061 * 変換後ファイルを出力するディレクトリ名をセットします。 062 * 063 * @param outDir 出力ディレクトリ名 064 */ 065 void setOutputDir( String outDir ) ; 066 067 /** 068 * 変換後ファイルキーをセットします。 069 * キーとは、拡張子の無い状態までのファイル名です。 070 * 変換後ファイルは、複数発生します。 071 * 実際に出力されるファイル名は、outFile + "_連番.html" となります。 072 * 073 * @param outFile 出力ファイル名の共通部 074 */ 075 void setOutputFileKey( String outFile ) ; 076 077 /** 078 * 帳票起動された要求番号をセットします。 079 * 080 * @og.rev 3.8.5.1 (2006/04/28) 新規追加 081 * 082 * @param ykno 要求番号 083 */ 084 void setYkno( String ykno ) ; 085 086 /** 087 * DBTableModel をセットします。 088 * 089 * @param table DBTableModelオブジェクト 090 */ 091 void setDBTableModel( DBTableModel table ) ; 092 093 /** 094 * 固定部の key 部分を指定します。 095 * カンマで複数指定できます。 096 * 097 * @param headerKeys 固定部のキー配列(可変長引数) 098 */ 099 void setHeaderKeys( String... headerKeys ) ; 100 101 /** 102 * 固定部のkey に対応する値を指定します。 103 * カンマで複数指定で、リクエスト情報でも設定できます。 104 * 105 * @param headerVals 固定部の値配列(可変長引数) 106 */ 107 void setHeaderVals( String... headerVals ) ; 108 109 /** 110 * 繰り返し部の終了後に表示する key 部分を指定します。 111 * カンマで複数指定できます。 112 * 113 * @param footerKeys 繰り返し部の終了後に表示するキー配列(可変長引数) 114 */ 115 void setFooterKeys( String... footerKeys ) ; 116 117 /** 118 * 固定部のkey に対応する値を指定します。 119 * カンマで複数指定で、リクエスト情報でも設定できます。 120 * 121 * @param footerVals 繰り返し部の終了後に表示する値配列(可変長引数) 122 */ 123 void setFooterVals( String... footerVals ) ; 124 125 /** 126 * ボディー部(繰り返し部)がなくなったときに、それ以降を表示するかどうかを指定します。 127 * true では、それ以降を出力しません。 128 * デフォルト "true" (なくなった時点で、出力しない。)です。 129 * 130 * @param pageEndCut 繰り返し部の終了後に継続処理するかどうか (true:処理しない/false:処理する) 131 */ 132 void setPageEndCut( boolean pageEndCut ) ; 133 134 /** 135 * リソースマネージャーをセットします。 136 * これは、言語(ロケール)に応じた DBColumn をあらかじめ設定しておく為に 137 * 必要です。 138 * リソースマネージャーが設定されていない、または、所定のキーの DBColumn が 139 * リソースに存在しない場合は、内部で DBColumn オブジェクトを作成します。 140 * 141 * @og.rev 4.0.0.0 (2005/01/31) lang ⇒ ResourceManager へ変更 142 * 143 * @param resource リソースマネージャー 144 */ 145 void setResourceManager( final ResourceManager resource ); 146 147 /** 148 * 帳票ID をセットします。 149 * この帳票IDを利用して、画像ファイル等のセーブディレクトリを求めます。 150 * 151 * @og.rev 3.6.1.0 (2005/01/05) 新規作成 152 * 153 * @param listId 帳票ID 154 */ 155 void setListId( String listId ) ; 156}