diff --git a/src/main/java/osm/surveyor/matchtime/AppParameters.java b/src/main/java/osm/surveyor/matchtime/AppParameters.java index f6e619c..e4ef115 100644 --- a/src/main/java/osm/surveyor/matchtime/AppParameters.java +++ b/src/main/java/osm/surveyor/matchtime/AppParameters.java @@ -11,18 +11,6 @@ public class AppParameters extends Properties { static final String FILE_PATH = "AdjustTime.ini"; - // GPX: 時間的に間隔が開いたGPXログを別のセグメントに分割する。 {ON | OFF} - public static String GPX_GPXSPLIT = "GPX.gpxSplit"; - - // GPX: セグメントの最初の1ノードは無視する。 {ON | OFF} - public static String GPX_NO_FIRST_NODE = "GPX.noFirstNode"; - - // GPX: 生成されたGPXファイル(ファイル名が'_.gpx'で終わるもの)も対象にする。 {ON | OFF} - public static String GPX_REUSE = "GPX.REUSE"; - - // GPX: 基準時刻 {FILE_UPDATE | EXIF_TIME} - public static String GPX_BASETIME = "GPX.BASETIME"; - // GPX: ファイル更新時刻 yyyy:MM:dd HH:mm:ss public static String IMG_TIME = "IMG.TIME"; @@ -32,30 +20,11 @@ // 基準時刻画像(正確な撮影時刻が判明できる画像) public static String IMG_BASE_FILE = "IMG.BASE_FILE"; - // 対象GPXフォルダ:(GPXファイルが格納されているフォルダ) - public static String GPX_SOURCE_FOLDER = "GPX.SOURCE_FOLDER"; - // 出力フォルダ:(変換した画像ファイルとGPXファイルを出力するフォルダ) public static String IMG_OUTPUT_FOLDER = "IMG.OUTPUT_FOLDER"; - // 出力IMG: IMG出力をする {ON | OFF} - public static String IMG_OUTPUT = "IMG.OUTPUT"; - - // 出力IMG: 'out of time'も IMG出力の対象とする {ON | OFF} - //   この場合は、対象IMGフォルダ内のすべてのIMGファイルが出力フォルダに出力される - public static String IMG_OUTPUT_ALL = "IMG.OUTPUT_ALL"; - - // 出力IMG: EXIFを変換する - public static String IMG_OUTPUT_EXIF = "IMG.OUTPUT_EXIF"; - - // 出力GPX: を上書き出力する {ON | OFF} - public static String GPX_OUTPUT_SPEED = "GPX.OUTPUT_SPEED"; - - // 出力GPX: ソースGPXのを無視する {ON | OFF} - public static String GPX_OVERWRITE_MAGVAR = "GPX.OVERWRITE_MAGVAR"; - - // 出力GPX: マーカーを出力する {ON | OFF} - public static String GPX_OUTPUT_WPT = "GPX.OUTPUT_WPT"; + // 出力OverwriteToSource: 入力ファイルに上書きする {ON | OFF} + public static String OUTPUT_OVERWRITE_TO_SOURCE= "IMG.OUTPUT_OVERWRITE_TO_SOURCE"; File file; @@ -97,14 +66,6 @@ } //------------------------------------------------ - // 対象フォルダ:(GPXファイルが格納されているフォルダ) - valueStr = this.getProperty(GPX_SOURCE_FOLDER); - if (valueStr == null) { - update = true; - this.setProperty(GPX_SOURCE_FOLDER, (new File(".")).getAbsolutePath()); - } - - //------------------------------------------------ // 基準時刻画像(正確な撮影時刻が判明できる画像) valueStr = this.getProperty(IMG_BASE_FILE); if (valueStr == null) { @@ -121,96 +82,21 @@ } //------------------------------------------------ - // IMG出力: IMGを出力する - valueStr = this.getProperty(IMG_OUTPUT); + // 出力: 入力ファイルに上書きする {ON | OFF} + valueStr = this.getProperty(OUTPUT_OVERWRITE_TO_SOURCE); if (valueStr == null) { update = true; - valueStr = String.valueOf(true); - } - this.setProperty(IMG_OUTPUT, String.valueOf(valueStr)); - - //------------------------------------------------ - // 出力IMG: 'out of time'も IMG出力の対象とする - valueStr = this.getProperty(IMG_OUTPUT_ALL); - if (valueStr == null) { - update = true; - valueStr = String.valueOf(false); - } - this.setProperty(IMG_OUTPUT_ALL, String.valueOf(valueStr)); - - //------------------------------------------------ - // IMG出力: EXIFを変換する - valueStr = this.getProperty(IMG_OUTPUT_EXIF); - if (valueStr == null) { - update = true; - valueStr = String.valueOf(true); - } - this.setProperty(IMG_OUTPUT_EXIF, String.valueOf(valueStr)); - - //------------------------------------------------ - // GPX出力: 時間的に間隔が開いたGPXログを別のセグメントに分割する。 {ON | OFF} - valueStr = this.getProperty(GPX_GPXSPLIT); - if (valueStr == null) { - update = true; - this.setProperty(GPX_GPXSPLIT, String.valueOf(true)); - } - - //------------------------------------------------ - // GPX出力: セグメントの最初の1ノードは無視する。 {ON | OFF} - valueStr = this.getProperty(GPX_NO_FIRST_NODE); - if (valueStr == null) { - update = true; - this.setProperty(GPX_NO_FIRST_NODE, String.valueOf(true)); - } - - //------------------------------------------------ - // GPX出力: ポイントマーカーを出力する {ON | OFF} - valueStr = this.getProperty(GPX_OUTPUT_WPT); - if (valueStr == null) { - update = true; - this.setProperty(GPX_OUTPUT_WPT, String.valueOf(false)); - } - - //------------------------------------------------ - // GPX出力: ソースGPXのを無視する {ON | OFF} - valueStr = this.getProperty(GPX_OVERWRITE_MAGVAR); - if (valueStr == null) { - update = true; - this.setProperty(GPX_OVERWRITE_MAGVAR, String.valueOf(false)); - } - - //------------------------------------------------ - // GPX出力: を上書き出力する {ON | OFF} - valueStr = this.getProperty(GPX_OUTPUT_SPEED); - if (valueStr == null) { - update = true; - this.setProperty(GPX_OUTPUT_SPEED, String.valueOf(false)); - } - - //------------------------------------------------ - // GPX出力: 生成されたGPXファイル(ファイル名が'_.gpx'で終わるもの)も対象にする。 {ON | OFF} - valueStr = this.getProperty(GPX_REUSE); - if (valueStr == null) { - update = true; - this.setProperty(GPX_REUSE, String.valueOf(false)); - } - - //------------------------------------------------ - // GPX: 基準時刻 {FILE_UPDATE | EXIF} - valueStr = this.getProperty(GPX_BASETIME); - if (valueStr == null) { - update = true; - this.setProperty(GPX_BASETIME, "FILE_UPDATE"); + this.setProperty(OUTPUT_OVERWRITE_TO_SOURCE, String.valueOf(false)); } if (update) { // ・ファイルがなければ新たに作る // ・項目が足りない時は書き足す。 - this.store(new FileOutputStream(this.file), "defuilt settings"); + //this.store(new FileOutputStream(this.file), "defuilt settings"); } } public void store() throws FileNotFoundException, IOException { - this.store(new FileOutputStream(this.file), "by AdjustTime"); + this.store(new FileOutputStream(this.file), "by Restamp"); } } diff --git a/src/main/java/osm/surveyor/matchtime/gui/CardExifPerform.java b/src/main/java/osm/surveyor/matchtime/gui/CardExifPerform.java deleted file mode 100644 index 9b22b17..0000000 --- a/src/main/java/osm/surveyor/matchtime/gui/CardExifPerform.java +++ /dev/null @@ -1,197 +0,0 @@ -package osm.surveyor.matchtime.gui; - -import java.awt.BorderLayout; -import java.awt.event.ActionEvent; -import javax.swing.BoxLayout; -import javax.swing.JButton; -import javax.swing.JLabel; -import javax.swing.JPanel; -import javax.swing.JTabbedPane; -import osm.surveyor.matchtime.AppParameters; -import static osm.surveyor.matchtime.gui.ReStamp.dfjp; -import static osm.surveyor.matchtime.gui.ReStamp.i18n; -import osm.surveyor.util.Exif; - -/** - * 実行パネル - * @author yuu - */ -public class CardExifPerform extends Card implements PanelAction { - ParameterPanelTime arg_basetime; // 画像の基準時刻: - ParameterPanelGpx arg_gpxFile; // GPX file or Folder - ParameterPanelOutput arg_output; // EXIF & 書き出しフォルダ - JButton doButton; // [処理実行]ボタン - - /** - * コンストラクタ - * @param tabbe parent panel - * @param arg_basetime // 開始画像の基準時刻: - * @param arg_gpxFile // GPX file or Folder: - * @param arg_output // EXIF & 書き出しフォルダ - * @param text - * @param pre - * @param next - */ - public CardExifPerform( - JTabbedPane tabbe, - ParameterPanelTime arg_basetime, - ParameterPanelGpx arg_gpxFile, - ParameterPanelOutput arg_output, - String text, - int pre, int next - ) { - super(tabbe, text, pre, next); - this.arg_basetime = arg_basetime; - this.arg_gpxFile = arg_gpxFile; - this.arg_output = arg_output; - - SymAction lSymAction = new SymAction(); - JPanel argsPanel = new JPanel(); - argsPanel.setLayout(new BoxLayout(argsPanel, BoxLayout.PAGE_AXIS)); - - // 5. EXIF変換を行うかどうかを選択してください。 - // - EXIF変換を行う場合には、変換ファイルを出力するフォルダも指定する必要があります。 - // - 出力フォルダには、書き込み権限と、十分な空き容量が必要です。 - JLabel label5 = new JLabel(); - label5.setText( - String.format( - "

5. %s

  • %s
  • %s
", - i18n.getString("label.500"), - i18n.getString("label.501"), - i18n.getString("label.502") - ) - ); - argsPanel.add(packLine(label5, new JPanel())); - - // 出力フォルダ - //argsPanel.add(packLine(new JLabel(i18n.getString("label.530")), new JPanel())); - argsPanel.add(arg_output); - - // チェックボックス "IMGの変換をする" - if (arg_output.outputIMG != null) { - arg_output.outputIMG.addActionListener(lSymAction); - argsPanel.add(arg_output.outputIMG); - } - - // チェックボックス "IMGの変換をする" - if (arg_output.outputIMG_all != null) { - argsPanel.add(arg_output.outputIMG_all); - } - - // チェックボックス "EXIFの変換をする" - if (arg_output.exifON != null) { - argsPanel.add(arg_output.exifON); - } - - // チェックボックス "ポイントマーカーをGPXファイルに出力する" - if (arg_output.gpxOutputWpt != null) { - argsPanel.add(arg_output.gpxOutputWpt); - } - - // チェックボックス "ソースGPXのを無視する" - if (arg_output.gpxOverwriteMagvar != null) { - argsPanel.add(arg_output.gpxOverwriteMagvar); - } - - // チェックボックス "出力GPXに[SPEED]を上書きする" - if (arg_output.gpxOutputSpeed != null) { - argsPanel.add(arg_output.gpxOutputSpeed); - } - - // [処理実行]ボタン - doButton = new JButton( - i18n.getString("button.execute"), - ReStamp.createImageIcon("images/media_playback_start.png") - ); - argsPanel.add(doButton); - - this.mainPanel.add(argsPanel, BorderLayout.CENTER); - - //{{REGISTER_LISTENERS - doButton.addActionListener(lSymAction); - //}} - } - - class SymAction implements java.awt.event.ActionListener { - @Override - public void actionPerformed(java.awt.event.ActionEvent event) { - Object object = event.getSource(); - if (object == doButton) { - doButton_Action(event); - } - else if (object == arg_output.outputIMG) { - outputIMG_Action(event); - } - } - } - - /** - * checkbox[IMG変換]を変更した場合のアクション - * ON ー> IMG出力フォルダのフィールドを有効にする - * OFF -> IMG出力フォルダのフィールドを無効にする - * @param event - */ - void outputIMG_Action (ActionEvent event) { - setEnabled(isEnabled()); - } - - /** - * [実行]ボタンをクリックしたときの動作 - * @param event - */ - @SuppressWarnings("UseSpecificCatch") - void doButton_Action(java.awt.event.ActionEvent event) { - doButton.setEnabled(false); - - ParameterPanelImageFile arg_baseTimeImg = arg_basetime.imageFile; // 基準時刻画像 - ParameterPanelFolder arg_srcFolder = arg_baseTimeImg.paramDir; - - try { - AppParameters params = new AppParameters(); - - String[] argv = new String[0]; - params.setProperty(AppParameters.GPX_NO_FIRST_NODE, String.valueOf(arg_gpxFile.isNoFirstNodeSelected())); - params.setProperty(AppParameters.GPX_REUSE, String.valueOf(arg_gpxFile.isGpxReuseSelected())); - params.setProperty(AppParameters.GPX_SOURCE_FOLDER, arg_gpxFile.getText()); - if ((arg_basetime.exifBase != null) && arg_basetime.exifBase.isSelected()) { - params.setProperty(AppParameters.GPX_BASETIME, "EXIF_TIME"); - } - else { - params.setProperty(AppParameters.GPX_BASETIME, "FILE_UPDATE"); - } - params.setProperty(AppParameters.IMG_SOURCE_FOLDER, arg_srcFolder.getText()); - params.setProperty(AppParameters.IMG_BASE_FILE, arg_baseTimeImg.getText()); - params.setProperty(AppParameters.IMG_TIME, Exif.toUTCString(dfjp.parse(arg_basetime.getText()))); - params.setProperty(AppParameters.IMG_OUTPUT, String.valueOf(arg_output.outputIMG.isSelected())); - params.setProperty(AppParameters.IMG_OUTPUT_ALL, String.valueOf(arg_output.outputIMG_all.isSelected())); - params.setProperty(AppParameters.IMG_OUTPUT_FOLDER, arg_output.getText()); - params.setProperty(AppParameters.IMG_OUTPUT_EXIF, String.valueOf(arg_output.exifON.isSelected())); - params.setProperty(AppParameters.GPX_OVERWRITE_MAGVAR, String.valueOf(arg_output.gpxOverwriteMagvar.isSelected())); - params.setProperty(AppParameters.GPX_OUTPUT_SPEED, String.valueOf(arg_output.gpxOutputSpeed.isSelected())); - params.setProperty(AppParameters.GPX_OUTPUT_WPT, String.valueOf(arg_output.gpxOutputWpt.isSelected())); - params.store(); - } - catch(Exception e) { - e.printStackTrace(); - } - - (new DoDialog(new String[0])).setVisible(true); - - doButton.setEnabled(true); - } - - /** - * 入力条件が満たされているかどうか - * @return - */ - @Override - public boolean isEnable() { - return (arg_basetime.isEnable() && arg_gpxFile.isEnable()); - } - - @Override - @SuppressWarnings("empty-statement") - public void openAction() { - ; // 何もしない - } -} diff --git a/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelGpx.java b/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelGpx.java index 4f53ae0..a381023 100644 --- a/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelGpx.java +++ b/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelGpx.java @@ -7,7 +7,6 @@ import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JFileChooser; -import osm.surveyor.matchtime.AppParameters; @SuppressWarnings("serial") public class ParameterPanelGpx extends ParameterPanel implements ActionListener @@ -66,36 +65,10 @@ return null; } - /** - * "セグメント'trkseg'の最初の1ノードは無視する。" - * @param label テキスト - * @param params プロパティ - */ - public void addNoFirstNode(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_NO_FIRST_NODE).equals("true")) { - selected = true; - } - noFirstNode = new JCheckBox(label, selected); - } - public boolean isNoFirstNodeSelected() { return (noFirstNode != null) && noFirstNode.isSelected(); } - /** - * "生成されたGPXファイル(ファイル名が'_.gpx'で終わるもの)も変換の対象にする" - * @param label テキスト - * @param params プロパティ - */ - public void addGpxReuse(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_REUSE).equals("true")) { - selected = true; - } - gpxReuse = new JCheckBox(label, selected); - } - public boolean isGpxReuseSelected() { return (gpxReuse != null) && gpxReuse.isSelected(); } diff --git a/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelOutput.java b/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelOutput.java index 0101ce1..47994af 100644 --- a/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelOutput.java +++ b/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelOutput.java @@ -7,12 +7,7 @@ @SuppressWarnings("serial") public class ParameterPanelOutput extends ParameterPanelFolder { - JCheckBox outputIMG; // IMGの変換 する/しない - JCheckBox outputIMG_all; // 'out of GPX time'でもIMGの変換をする {ON | OFF} - JCheckBox exifON; // EXIF 書き出しモード / !(EXIFの書き換えはしない) - JCheckBox gpxOutputWpt; // GPXにを書き出す - JCheckBox gpxOverwriteMagvar; // ソースGPXのを無視する - JCheckBox gpxOutputSpeed; // GPXにを書き出す + JCheckBox outputOverwite; // GPX_OVERWRITE_TO_SOURCE /** * コンストラクタ @@ -25,99 +20,35 @@ } /** - * チェックボックス "IMGの変換をする" - * @param label テキスト - * @param params プロパティ - */ - public void addCheckChangeImage(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.IMG_OUTPUT).equals("true")) { - selected = true; - } - outputIMG = new JCheckBox(label, selected); - } - - /** - * チェックボックス "GPXファイル時間外のファイルもコピーする" + * チェックボックス "入力ファイルに上書きする" * @param label * @param params */ - public void addCheckOutofGpxTime(String label, AppParameters params) { + public void addCheckOverwriteToSource(String label, AppParameters params) { boolean selected = false; - if (params.getProperty(AppParameters.IMG_OUTPUT_ALL).equals("true")) { + if (params.getProperty(AppParameters.OUTPUT_OVERWRITE_TO_SOURCE).equals("true")) { selected = true; } - outputIMG_all = new JCheckBox(label, selected); - } - - /** - * チェックボックス "EXIFの変換をする" - * @param label - * @param params - */ - public void addCheckOutputExif(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.IMG_OUTPUT_EXIF).equals("true")) { - selected = true; - } - exifON = new JCheckBox(label, selected); + outputOverwite = new JCheckBox(label, selected); + outputOverwite.setEnabled(true); } /** - * チェックボックス "ポイントマーカー[WPT]をGPXファイルに出力する" - * @param label - * @param params - */ - public void addCheckOutputWpt(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_OUTPUT_WPT).equals("true")) { - selected = true; - } - gpxOutputWpt = new JCheckBox(label, selected); - gpxOutputWpt.setEnabled(true); - } - - /** - * チェックボックス "ソースGPXの<MAGVAR>を無視する" - * @param label - * @param params - */ - public void addCheckIgnoreMagvar(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_OVERWRITE_MAGVAR).equals("true")) { - selected = true; - } - gpxOverwriteMagvar = new JCheckBox(label, selected); - gpxOverwriteMagvar.setEnabled(true); - } - - /** - * チェックボックス "出力GPXに[SPEED]を上書きする" - * @param label - * @param params - */ - public void addCheckOutputSpeed(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_OUTPUT_SPEED).equals("true")) { - selected = true; - } - gpxOutputSpeed = new JCheckBox(label, selected); - gpxOutputSpeed.setEnabled(true); - } - - /** - * checkbox[IMG変換]を変更した場合のアクション + * checkbox[入力ファイルに上書き]を変更した場合のアクション * ON ー> IMG出力フォルダのフィールドを有効にする * OFF -> IMG出力フォルダのフィールドを無効にする * @param event */ - class ChangeImageAction implements java.awt.event.ActionListener { + /* + + class ChangeOverwriteAction implements java.awt.event.ActionListener { @Override public void actionPerformed(java.awt.event.ActionEvent event) { Object object = event.getSource(); - if (object == outputIMG) { + if (object == outputOverwite) { setEnabled(outputIMG.isEnabled()); } } } + */ } \ No newline at end of file diff --git a/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelTime.java b/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelTime.java index 10c4bb0..23652ad 100644 --- a/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelTime.java +++ b/src/main/java/osm/surveyor/matchtime/gui/ParameterPanelTime.java @@ -17,7 +17,6 @@ import org.apache.commons.imaging.formats.jpeg.JpegImageMetadata; import org.apache.commons.imaging.formats.tiff.TiffImageMetadata; import org.apache.commons.imaging.formats.tiff.constants.ExifTagConstants; -import osm.surveyor.matchtime.AppParameters; import osm.surveyor.matchtime.Restamp; import static osm.surveyor.matchtime.gui.ReStamp.dfjp; import osm.surveyor.matchtime.gui.restamp.DialogCorectTime; @@ -30,7 +29,6 @@ SimpleDateFormat sdf = (SimpleDateFormat)DateFormat.getDateTimeInstance(); ParameterPanelImageFile imageFile; // 基準時刻画像 - // 基準時刻の指定グループ (排他選択) public ButtonGroup baseTimeGroup = new ButtonGroup(); public JRadioButton exifBase = null; // EXIF日時を基準にする/ !(ファイル更新日時を基準にする) @@ -68,39 +66,10 @@ return this; } - /** - * 「EXIFの日時を基準にする」 - * @param label テキスト - * @param params プロパティ - */ - public void addExifBase(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_BASETIME).equals("EXIF_TIME")) { - selected = true; - } - exifBase = new JRadioButton(label, selected); - baseTimeGroup.add(exifBase); - } - - /** - * 「File更新日時を基準にする」 - * @param label テキスト - * @param params プロパティ - */ - public void addFileUpdate(String label, AppParameters params) { - boolean selected = false; - if (params.getProperty(AppParameters.GPX_BASETIME).equals("FILE_UPDATE")) { - selected = true; - } - fupdateBase = new JRadioButton(label, selected); - baseTimeGroup.add(fupdateBase); - } - public ParameterPanelImageFile getImageFile() { return this.imageFile; } - /** * [変更...]ボタンのアクション */ diff --git a/src/main/java/osm/surveyor/matchtime/gui/ReStamp.java b/src/main/java/osm/surveyor/matchtime/gui/ReStamp.java index d3727f1..4dd8bc8 100644 --- a/src/main/java/osm/surveyor/matchtime/gui/ReStamp.java +++ b/src/main/java/osm/surveyor/matchtime/gui/ReStamp.java @@ -235,6 +235,9 @@ } } ); + + // 入力フォルダに上書きする + // パネル表示 CardPerformFile card = new CardPerformFile( diff --git a/src/test/java/osm/surveyor/matchtime/AppParametersTest.java b/src/test/java/osm/surveyor/matchtime/AppParametersTest.java deleted file mode 100644 index 2260dd9..0000000 --- a/src/test/java/osm/surveyor/matchtime/AppParametersTest.java +++ /dev/null @@ -1,203 +0,0 @@ -package osm.surveyor.matchtime; - -import osm.surveyor.matchtime.AppParameters; -import static org.hamcrest.CoreMatchers.is; -import static org.junit.Assert.*; - -import java.io.File; -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.io.IOException; -import java.nio.channels.FileChannel; - -import org.junit.After; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.junit.experimental.runners.*; - -@RunWith(Enclosed.class) -public class AppParametersTest { - - public static class 定義ファイルが存在しない場合 { - AppParameters params; - - @Before - public void setUp() throws Exception { - File iniFile = new File("AdjustTime.ini"); - File orgFile = new File("AdjustTime.ini.org"); - - if (orgFile.exists()) { - orgFile.delete(); - } - if (iniFile.exists()) { - iniFile.renameTo(orgFile); - } - } - - @After - public void tearDown() throws Exception { - File iniFile = new File("AdjustTime.ini"); - File orgFile = new File("AdjustTime.ini.org"); - if (iniFile.exists()) { - iniFile.delete(); - } - if (orgFile.exists()) { - orgFile.renameTo(iniFile); - } - } - - @Test - public void IMG_OUTPUT_ALLが定義されていない時() { - try { - params = new AppParameters("src/test/data/AdjustTime.off.ini"); - String valueStr = params.getProperty(AppParameters.IMG_OUTPUT_ALL); - assertThat(valueStr, is("false")); - } - catch (IOException e) { - fail("Exceptionが発生した。"); - } - } - } - - public static class 定義ファイルがtureに定義されているとき { - - @Before - public void setUp() throws Exception { - File iniFile = new File("AdjustTime.ini"); - File orgFile = new File("AdjustTime.ini.org"); - File testFile = new File("src/test/data", "AdjustTime.on.ini"); - - if (orgFile.exists()) { - orgFile.delete(); - } - if (iniFile.exists()) { - iniFile.renameTo(orgFile); - } - - FileInputStream inStream = new FileInputStream(testFile); - FileOutputStream outStream = new FileOutputStream(new File("AdjustTime.ini")); - FileChannel inChannel = inStream.getChannel(); - FileChannel outChannel = outStream.getChannel(); - try { - inChannel.transferTo(0, inChannel.size(),outChannel); - } - finally { - if (inChannel != null) inChannel.close(); - if (outChannel != null) outChannel.close(); - inStream.close(); - outStream.close(); - } - } - - @After - public void tearDown() throws Exception { - File iniFile = new File("AdjustTime.ini"); - File orgFile = new File("AdjustTime.ini.org"); - if (iniFile.exists()) { - iniFile.delete(); - } - if (orgFile.exists()) { - orgFile.renameTo(iniFile); - } - } - - @Test - public void IMG_OUTPUT_ALLがtureに定義されているとき() { - try { - AppParameters params; - params = new AppParameters(); - String valueStr = params.getProperty(AppParameters.IMG_OUTPUT_ALL); - assertThat(valueStr, is("true")); - } - catch (IOException e) { - fail("Exceptionが発生した。"); - } - } - - @Test - public void IMG_OUTPUT_ALLをfalseに書き換える() { - try { - AppParameters params = new AppParameters(); - params.setProperty(AppParameters.IMG_OUTPUT_ALL, "false"); - params.store(); - AppParameters newParams = new AppParameters(); - String valueStr = newParams.getProperty(AppParameters.IMG_OUTPUT_ALL); - assertThat(valueStr, is("false")); - } - catch (IOException e) { - fail("Exceptionが発生した。"); - } - } - } - - public static class 定義ファイルがfalseに定義されているとき { - - @Before - public void setUp() throws Exception { - File iniFile = new File("AdjustTime.ini"); - File orgFile = new File("AdjustTime.ini.org"); - File testFile = new File("src/test/data", "AdjustTime.off.ini"); - - if (orgFile.exists()) { - orgFile.delete(); - } - if (iniFile.exists()) { - iniFile.renameTo(orgFile); - } - - FileInputStream inStream = new FileInputStream(testFile); - FileOutputStream outStream = new FileOutputStream(new File("AdjustTime.ini")); - FileChannel inChannel = inStream.getChannel(); - FileChannel outChannel = outStream.getChannel(); - try { - inChannel.transferTo(0, inChannel.size(),outChannel); - } - finally { - if (inChannel != null) inChannel.close(); - if (outChannel != null) outChannel.close(); - inStream.close(); - outStream.close(); - } - } - - @After - public void tearDown() throws Exception { - File iniFile = new File("AdjustTime.ini"); - File orgFile = new File("AdjustTime.ini.org"); - if (iniFile.exists()) { - iniFile.delete(); - } - if (orgFile.exists()) { - orgFile.renameTo(iniFile); - } - } - - @Test - public void IMG_OUTPUT_ALLがfalseに定義されているとき() { - try { - AppParameters params = new AppParameters(); - String valueStr = params.getProperty(AppParameters.IMG_OUTPUT_ALL); - assertThat(valueStr, is("false")); - } - catch (IOException e) { - fail("Exceptionが発生した。"); - } - } - - @Test - public void IMG_OUTPUT_ALLをtrueに書き換える() { - try { - AppParameters params = new AppParameters(); - params.setProperty(AppParameters.IMG_OUTPUT_ALL, "true"); - params.store(); - AppParameters newParams = new AppParameters(); - String valueStr = newParams.getProperty(AppParameters.IMG_OUTPUT_ALL); - assertThat(valueStr, is("true")); - } - catch (IOException e) { - fail("Exceptionが発生した。"); - } - } - } -}