2 package saccubus.properties;
5 import java.util.Properties;
11 public class InputCommentSetting extends InputFileSetting<Boolean> {
14 private static final String PROP_SAVE_COMMENT = "SaveCommentFile";
15 /** 変換後にコメントファイルを削除する. */
16 private static final String PROP_DEL_COMMENT_AFTER_CONV = "DeleteCommentAfterConv";
17 /** コメント取得数は自動で調整する. */
18 private static final String PROP_FIX_COMMENT_NUM = "FixCommentSize";
20 private static final String PROP_BACK_COMMENT = "BackComment";
21 /** フォルダ/ファイル保存選択ラジオボタン. */
22 private static final String PROP_COMMENT_FIX_FILE_NAME = "CommentFixFileName";
24 private static final String PROP_COMMENT_FOLDER = "CommentFixFileNameFolder";
26 private static final String PROP_COMMENT_FILE = "CommentFile";
27 private final boolean selfAdjustNumOfComment;
28 private final int numOfComment;
30 public InputCommentSetting(boolean download, boolean autoNaming, File folder, File file, boolean deleteAfterConvert,
31 boolean adjust, int numOfCom) {
32 super(Boolean.valueOf(download), autoNaming, folder, file, deleteAfterConvert);
33 this.selfAdjustNumOfComment = adjust;
34 this.numOfComment = numOfCom;
37 public void save(Properties prop) {
38 prop.setProperty(PROP_SAVE_COMMENT, getProcessKind().toString());
39 prop.setProperty(PROP_DEL_COMMENT_AFTER_CONV, Boolean.toString(isDeleteAfterConvert()));
40 prop.setProperty(PROP_FIX_COMMENT_NUM, Boolean.toString(isSelfAdjustNumOfComment()));
41 prop.setProperty(PROP_BACK_COMMENT, Integer.toString(getNumOfComment()));
42 prop.setProperty(PROP_COMMENT_FIX_FILE_NAME, Boolean.toString(isAutoNaming()));
43 prop.setProperty(PROP_COMMENT_FOLDER, getFolder().getPath());
44 prop.setProperty(PROP_COMMENT_FILE, getFile().getPath());
48 public static InputCommentSetting load(Properties prop) {
49 boolean download = Boolean.parseBoolean(prop.getProperty(PROP_SAVE_COMMENT, "true"));
50 boolean delete = Boolean.parseBoolean(prop.getProperty(PROP_DEL_COMMENT_AFTER_CONV, "false"));
51 boolean adjustNumOfComment = Boolean.parseBoolean(prop.getProperty(PROP_FIX_COMMENT_NUM, "true"));
52 String numOfComment = prop.getProperty(PROP_BACK_COMMENT, "500");
53 boolean autoNaming = Boolean.parseBoolean(prop.getProperty(PROP_COMMENT_FIX_FILE_NAME, "true"));
54 String folder = prop.getProperty(PROP_COMMENT_FOLDER, "[out]comment");
55 String file = prop.getProperty(PROP_COMMENT_FILE, "comment.xml");
57 return new InputCommentSetting(download, autoNaming, new File(folder), new File(file), delete,
59 Integer.parseInt(numOfComment));
62 public final boolean isSelfAdjustNumOfComment() {
63 return selfAdjustNumOfComment;
66 public final int getNumOfComment() {