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 java.util.concurrent.ConcurrentMap;                                                      // 6.4.3.3 (2016/03/04)
019
020import org.opengion.hayabusa.db.DBTableModel;
021
022/**
023 * RFID発行処理のためのBPELサービスを起動するためのインターフェースです。
024 *
025 * @og.group 帳票システム
026 *
027 * @version  4.0
028 * @author   Hiroki Nakamura
029 * @since    JDK5.0,
030 */
031public interface RFIDPrintPointService {
032
033        /**
034         * 帳票起動された要求番号をセットします。
035         *
036         * @param   ykno 要求NO
037         */
038        void setYkno( String ykno ) ;
039
040        /**
041         * システムIDをセットします。
042         *
043         * @param   systemId システムID
044         */
045        void setSystemId( String systemId ) ;
046
047        /**
048         * 実行方法をセットします。
049         *
050         * @param   fgrun 実行方法
051         */
052        void setFgrun( String fgrun ) ;
053
054        /**
055         * 帳票デーモンが実行されているホスト名をセットします。
056         *
057         * @param   hostName ホスト名
058         */
059        void setHostName( String hostName ) ;
060
061        /**
062         * プリンター名をセットします。
063         *
064         * @param   printerName プリンタ名
065         */
066        void setPrinterName( String printerName ) ;
067
068        /**
069         * DBTableModel をセットします。
070         *
071         * @param       table   DBTableModelオブジェクト
072         */
073        void setTable( DBTableModel table ) ;
074
075        /**
076         * RFIDのレイアウトデータをセットします。
077         * キーはカラム名です。
078         * 値はGE58で定義された出力区分及びパラメーターの配列です。
079         * 配列の各インデックス番号の意味は、RFIDPrintRequestを参照して下さい。
080         *
081         * @og.rev 6.4.3.1 (2016/02/12) 実態を、HashMap → ConcurrentHashMap に置き換えたので、key,val ともに not null 制限です。
082         * @og.rev 6.4.3.3 (2016/03/04) ConcurrentHashMap を受け取ることを明確にするため、I/FをConcurrentMapに変更します。
083         *
084         * @param   layout RFIDレイアウト
085         */
086        void setLayout( ConcurrentMap<String, String[]> layout ) ;
087
088        /**
089         * REPORT_RFID_SERVICE_CLASSから起動するプログラムのディレクトリをセットします。
090         *
091         * @og.rev 4.3.3.0 (2008/10/01) 板金RFID対応
092         * @param       dir     PG起動ディレクトリ
093         */
094        void setPrgDir( String dir );
095
096        /**
097         * REPORT_RFID_SERVICE_CLASSから起動するプログラムをセットします。
098         *
099         * @og.rev 4.3.3.0 (2008/10/01) 板金RFID対応
100         * @param       file    PGファイル名
101         */
102        void setPrgFile( String file );
103
104        /**
105         * ファイル出力時のディレクトリを指定します。
106         *
107         * @og.rev 4.3.3.0 (2008/10/01) 板金RFID対応
108         * @param       dir     出力ディレクトリ
109         */
110        void setOutDir( String dir );
111
112        /**
113         * プリンタIDをセットします。
114         *
115         * @og.rev 5.4.3.0 (2011/12/26) _DEFAULT対応
116         * @param       id      プリンタID
117         */
118        void setPrtId( String id );
119
120        /**
121         * プリンターポート名をセットします。
122         *
123         * @og.rev 5.4.3.1 (2011/12/27)
124         * @param       port    ポート名
125         */
126        void setPortnm( String port ) ;
127
128        /**
129         * 帳票IDをセットします。
130         *
131         * @og.rev 5.4.3.4 (2012/01/12)
132         * @param       id      帳票ID
133         */
134        void setListId( String id ) ;
135
136        /**
137         * レイアウトファイルをセットします。
138         *
139         * @og.rev 5.4.3.9 (2012/01/25) 追加要望
140         * @param       file    レイアウトファイル
141         */
142        void setLayoutFile( String file );
143
144        /**
145         * 現在の印刷状況を返します。
146         *
147         * @og.rev 4.3.3.0 (2008/10/01) 板金RFID対応
148         *
149         * @return      完成フラグ
150         */
151        String getFgkan();
152
153        /**
154         * エラーメッセージを返します。
155         *
156         * @og.rev 4.3.3.0 (2008/10/01) 板金RFID対応
157         *
158         * @return      エラーメッセージ
159         */
160        String getErrMsg();
161
162        /**
163         * RFID発行処理を実行します。
164         *
165         * @og.rev 4.3.3.0 (2008/10/01) 板金RFID voidからbooleanに変更
166         *
167         * @return      実行結果[true:正常/false:異常]
168         */
169        // void execute() ;
170        boolean execute() ;
171}