X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fws%2Fsifts%2FSiftsSettings.java;h=88aaed43963203035c4968cb8984fdd26df1eeb0;hb=f6a84063f10ea1ae9898310c541961cd1d53dd8a;hp=5554658e69413fb40c430b8afe605e9d7457c3c5;hpb=d9b79c023346253c10dc907d1e75f509823266c4;p=jalview.git diff --git a/src/jalview/ws/sifts/SiftsSettings.java b/src/jalview/ws/sifts/SiftsSettings.java index 5554658..88aaed4 100644 --- a/src/jalview/ws/sifts/SiftsSettings.java +++ b/src/jalview/ws/sifts/SiftsSettings.java @@ -1,28 +1,98 @@ +/* + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty + * of MERCHANTABILITY or FITNESS FOR A PARTICULAR + * PURPOSE. See the GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.ws.sifts; -public class SiftsSettings +import jalview.bin.ApplicationSingletonProvider; +import jalview.bin.ApplicationSingletonProvider.ApplicationSingletonI; + +import java.util.Objects; + +public class SiftsSettings implements ApplicationSingletonI { - private static boolean mapWithSifts = false; - private static String siftDownloadDirectory; + /** + * public only for testng + * + * @return + */ + public static SiftsSettings getInstance() + { + return (SiftsSettings) ApplicationSingletonProvider + .getInstance(SiftsSettings.class); + } + + private SiftsSettings() + { + // singleton; use getInstance() + } + + private boolean mapWithSifts = false; + + private String siftDownloadDirectory; + + private int cacheThresholdInDays; + + private int failSafePIDThreshold; public static boolean isMapWithSifts() { - return mapWithSifts; + return getInstance().mapWithSifts; } public static void setMapWithSifts(boolean mapWithSifts) { - SiftsSettings.mapWithSifts = mapWithSifts; + getInstance().mapWithSifts = mapWithSifts; } public static String getSiftDownloadDirectory() { - return siftDownloadDirectory; + return getInstance().siftDownloadDirectory; } public static void setSiftDownloadDirectory(String siftDownloadDirectory) { - SiftsSettings.siftDownloadDirectory = siftDownloadDirectory; + getInstance().siftDownloadDirectory = siftDownloadDirectory; + } + + public static int getCacheThresholdInDays() + { + return getInstance().cacheThresholdInDays; + } + + public static void setCacheThresholdInDays(String cacheThresholdInDays) + { + Objects.requireNonNull(cacheThresholdInDays); + getInstance().cacheThresholdInDays = Integer + .valueOf(cacheThresholdInDays); + } + + public static int getFailSafePIDThreshold() + { + return getInstance().failSafePIDThreshold; + } + + public static void setFailSafePIDThreshold(String failSafePIDThreshold) + { + Objects.requireNonNull(failSafePIDThreshold); + getInstance().failSafePIDThreshold = Integer + .valueOf(failSafePIDThreshold); } }