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.fukurou.util;
017
018
019 /**
020 * 個ã?ã®ã‚¨ãƒ©ãƒ¼ãƒ¡ãƒ?‚»ãƒ¼ã‚¸ã‚’æŒã£ã¦ãŠããŸã‚ã®ã‚ªãƒ–ジェクトã§ã™ã?
021 * ã“ã?オブジェクトã?ã€ä¸å¤‰ã‚ªãƒ–ジェクトã§ã™ã?
022 * å†?ƒ¨ã«ã¯ã€è¡Œç•ªå·ã¨IDã¨çµæžœã¨ã€ãƒ¡ãƒ?‚»ãƒ¼ã‚¸ãƒªã‚½ãƒ¼ã‚¹ã§ä½¿ç”¨ã•れる引数をæŒã£ã¦ã?¾ã™ã?
023 * çµæžœã¯ 0:æ£å¸¸ 1:è¦å‘?2:異常 8:EXCEPTION 9:ORACLEエラーã§ã€?
024 * ErrorMessageクラス㮠public static 変数ã§å®šç¾©ã•れã¦ã?‚‹å€¤ã‚’使用ã—ã¾ã™ã?
025 *
026 * @og.group エラー処ç?
027 *
028 * @version 4.0
029 * @author Kazuhiko Hasegawa
030 * @since JDK5.0,
031 */
032 public final class ErrMsg {
033 /** ãƒãƒƒãƒ•ã‚¡ã®åˆæœŸå®¹é‡ã‚’通常より多ã„ç›®ã«è¨å®šã—ã¾ã™ã? {@value} */
034 public static final int BUFFER_MIDDLE = 200; // 5.1.9.0 (2010/08/01) 追�
035
036 private final int no; // 行番å·
037 private final int kekka; // çµæžœ 0:æ£å¸¸ 1:è¦å‘?2:異常 8:EXCEPTION 9:ORACLEエラー
038 private final String id; // メãƒ?‚»ãƒ¼ã‚¸ID
039 private final String[] args ; // メãƒ?‚»ãƒ¼ã‚¸ã®å¼•æ•°é…å?
040 private final String pg; // PGå?3.8.9.5 (2007/09/12)
041 private final String step; // スãƒ?ƒƒãƒ—å 3.8.9.5 (2007/09/12)
042
043 /**
044 * å¿?¦ãªå¼•æ•°ã‚’ã™ã¹ã¦è¨å®šã—ã¦ã€ErrMsg オブジェクトを構築ã—ã¾ã™ã?
045 *
046 * @param no 行番å·
047 * @param kekka çµæžœ 0:æ£å¸¸ 1:è¦å‘?2:異常 8:EXCEPTION 9:ORACLEエラー
048 * @param pg PGå?
049 * @param step STEPå?
050 * @param id メãƒ?‚»ãƒ¼ã‚¸ID
051 * @param inArgs String... メãƒ?‚»ãƒ¼ã‚¸IDã®å¼•æ•°
052 */
053 public ErrMsg( final int no,final int kekka,
054 final String pg,final String step,
055 final String id,final String... inArgs) {
056 this.no = no;
057 this.kekka = kekka;
058 this.id = id;
059 int cnt = inArgs.length;
060 args = new String[cnt];
061 for( int i=0; i<cnt; i++ ) {
062 args[i] = argIn( inArgs[i] );
063 }
064 this.pg = pg; // 3.8.9.5 (2007/09/12)
065 this.step = step; // 3.8.9.5 (2007/09/12)
066 }
067
068 /**
069 * 行番å·ã®ã¿ç•°ãªã‚‹ã?æ–°ã—ã„ ErrMsg オブジェクトを作æ?ã—ã¾ã™ã?
070 *
071 * @param newNo 行番å·
072 *
073 * @return 行番å·ã®ã¿ç•°ãªã‚‹ã?æ–°ã—ã„ ErrMsgオブジェクãƒ?
074 */
075 public ErrMsg copy( final int newNo ) {
076 // return new ErrMsg( newNo,kekka,id,args );
077 return new ErrMsg( newNo,kekka,pg,step,id,args );
078 }
079
080 /**
081 * 行番å·ã‚’è¿”ã—ã¾ã™ã?
082 *
083 * @return 行番å·
084 */
085 public int getNo() { return no; }
086
087 /**
088 * çµæžœã‚’è¿”ã—ã¾ã™ã?
089 *
090 * @return çµæžœ 0:æ£å¸¸ 1:è¦å‘?2:異常 8:EXCEPTION 9:ORACLEエラー
091 */
092 public int getKekka() { return kekka; }
093
094 /**
095 * メãƒ?‚»ãƒ¼ã‚¸IDã‚’è¿”ã—ã¾ã™ã?
096 *
097 * @return メãƒ?‚»ãƒ¼ã‚¸ID
098 */
099 public String getId() { return id; }
100
101 /**
102 * メãƒ?‚»ãƒ¼ã‚¸å¼•æ•°ã‚’è¿”ã—ã¾ã™ã?
103 *
104 * @param no 引数アドレス
105 *
106 * @return メãƒ?‚»ãƒ¼ã‚¸å¼•æ•°
107 */
108 public String getArg( final int no ) { return args[no]; }
109
110 /**
111 * メãƒ?‚»ãƒ¼ã‚¸å¼•æ•°é…å?ã‚’è¿”ã—ã¾ã™ã?
112 *
113 * @return メãƒ?‚»ãƒ¼ã‚¸å¼•æ•°é…å?
114 */
115 public String[] getArgs() { return args.clone(); }
116
117 /**
118 * 引数ã«ã¤ã?¦ã€{#XXXX} æ–?—å?ã®å ´åˆã?#XXXX ã«å¤‰æ›ã—ã¾ã™ã?
119 * ã“ã?ã€{#XXXX} æ–?—å?ã¯ã€ãƒ¡ãƒ?‚»ãƒ¼ã‚¸ãƒªã‚½ãƒ¼ã‚¹ã®å¼•æ•°ã«ã€XXXX ã®
120 * ラベルリソースをé©ç”¨ã•ã›ã‚‹å?åˆã«ä½¿ç”¨ã—ã¾ã™ã?
121 * ã“ã?処ç??ã€ãƒ¡ãƒ?‚»ãƒ¼ã‚¸ãƒªã‚½ãƒ¼ã‚¹ã§ã®å‡¦ç?§äº’æ›æ€§ã‚’確ä¿ã™ã‚‹ç‚ºã§ã™ã?
122 * ãªãŠã?ã“ã?変更ã®ãŸã‚ã«ã€æ™®é€šã«ã€?YYYY ã¨æŒ?®šã—ãŸæ–‡å—å?ã‚‚ã?
123 * ラベルã‚ーã¨ã—ã¦å‡¦ç?•れるよã†ã«ãªã‚Šã¾ã™ã?ã§ã€ã”注æ„ãã?•ã??
124 *
125 * @og.rev 4.0.0.0 (2005/01/31) æ–°è¦ä½œæ?
126 *
127 * @param arg 入力引数
128 *
129 * @return 変æ›å¾Œå¼•æ•°
130 */
131 private String argIn( final String arg ) {
132 if( arg != null && arg.startsWith( "{#" ) ) {
133 return arg.substring( 1,arg.length()-1 ) ;
134 }
135 else {
136 return arg ;
137 }
138 }
139
140 /**
141 * PGåã‚’è¿”ã—ã¾ã™ã?
142 *
143 * @og.rev 3.8.9.5 (2007/09/12) æ–°è¦ä½œæ?
144 *
145 * @return PGå?
146 */
147 public String getPg() { return pg; }
148
149 /**
150 * スãƒ?ƒƒãƒ—åã‚’è¿”ã—ã¾ã™ã?
151 *
152 * @og.rev 3.8.9.5 (2007/09/12) æ–°è¦ä½œæ?
153 *
154 * @return スãƒ?ƒƒãƒ—å
155 */
156 public String getStep() { return step; }
157
158 /**
159 * ãƒ?ƒãƒ?‚°ç”¨ã®ã‚ªãƒ–ジェクトã?å†?ƒ¨è¡¨ç¾ã®æ–?—å?ã‚’è¿”ã—ã¾ã™ã?
160 *
161 * @og.rev 4.0.0.0 (2004/12/31) å†?ƒ¨è¡¨ç¾ã‚’æ–‡å—ã?ã¿ã¨ã™ã‚‹ã€?
162 *
163 * @return å†?ƒ¨è¡¨ç¾ã®æ–?—å?
164 */
165 @Override
166 public String toString() {
167 // StringBuilder buf = new StringBuilder( HybsSystem.BUFFER_MIDDLE );
168 StringBuilder buf = new StringBuilder( BUFFER_MIDDLE );
169 buf.append( "id=[" ).append( id ).append( "] no=[" ).append( no ).append( "]" );
170 buf.append( " kekka=[" ).append( kekka ).append( "] values={" );
171 for( int i=0; i<args.length; i++ ) {
172 if( args[i] != null ) {
173 buf.append( " " ).append( args[i] );
174 }
175 }
176 buf.append( " }" );
177 return buf.toString();
178 }
179 }