1 using com.andoutomo.kybernetes.view;
\r
2 using com.andoutomo.kybernetes.control;
\r
4 namespace com.andoutomo.kybernetes.command
\r
6 abstract class AbCommand
\r
8 protected abstract bool execute();
\r
11 protected abstract string turnMessage();
\r
12 protected abstract string turnErrorMessage();
\r
13 protected abstract string turnSplitErrorMessage();
\r
15 protected BaseForm form;
\r
16 protected CommandArg argument;
\r
21 /// 各継承先クラスで指定された、splitArguments及び
\r
24 /// <param name="_args">呼び出す前に指定された引数(コマンドラインからなので、それを受け取る)</param>
\r
25 /// <param name="_form">フォーム情報。ここからフォームを操作できるようにします。</param>
\r
26 /// <returns></returns>
\r
27 internal bool run(CommandArg _args,BaseForm _form)
\r
29 KybernetesLogger.Log.debug("run start on " + this.GetType().ToString());
\r
30 if (_args.getSplitResult() == false)
\r
32 KybernetesLogger.Log.debug("split failed at " + _args.GetType().ToString());
\r
33 message = turnSplitErrorMessage();
\r
37 this.argument = _args;
\r
42 message = turnMessage();
\r
43 KybernetesLogger.Log.debug("run success on " + this.GetType().ToString());
\r
44 KybernetesLogger.Log.debug("message:" + message);
\r
49 message = turnErrorMessage();
\r
50 KybernetesLogger.Log.debug("run failure on " + this.GetType().ToString());
\r
51 KybernetesLogger.Log.debug("message:" + message);
\r
57 private string message;
\r
61 /// 処理完了後のメッセージを呼び出し元に返す。
\r
63 /// <returns>メッセージ</returns>
\r
64 internal string getMessage()
\r
69 protected ErrorType errorType
\r
75 protected string DefaultErrorMessage
\r
79 string errorMessage;
\r
81 case ErrorType.DataNotFound:
\r
82 errorMessage = "対象データが見つかりません。";
\r
84 case ErrorType.Unexpected:
\r
86 errorMessage = "予期せぬエラーが発生いたしました。";
\r
90 return errorMessage;
\r
94 protected string DefaultSplitErrorMessage
\r
96 get { return "無効なパラメータです。"; }
\r
98 protected string DefaultNormalMessage
\r
100 get { return "> ";}
\r
104 internal enum ErrorType
\r