public static void main(String[] args) { String validBrowsers = "chrome|firefox|opera|edge|phantomjs|iexplorer|selenium_server_standalone"; if (args.length <= 0) { logCliError(validBrowsers); } else { String arg = args[0]; if (arg.equalsIgnoreCase("server")) { startServer(args); } else if (arg.equalsIgnoreCase("clear-preferences")) { new Preferences(new Config()).clear(); } else { resolveLocal(validBrowsers, arg); } } }
public boolean checkKeyInPreferences(String key) { String valueFromPreferences = getValueFromPreferences(key); boolean valueInPreferences = valueFromPreferences != null && !valueFromPreferences.isEmpty(); if (valueInPreferences) { long expirationTime = getExpirationTimeFromPreferences(key); String expirationDate = formatTime(expirationTime); valueInPreferences &= checkValidity(key, valueFromPreferences, expirationTime); if (valueInPreferences) { log.debug("Preference found {}={} (valid until {})", key, valueFromPreferences, expirationDate); } } return valueInPreferences; }
private boolean checkValidity(String key, String value, long expirationTime) { long now = new Date().getTime(); boolean isValid = value != null && expirationTime != 0 && expirationTime > now; if (!isValid) { String expirationDate = formatTime(expirationTime); log.debug("Removing preference {}={} (expired on {})", key, value, expirationDate); clearFromPreferences(key); } return isValid; }
public void putValueInPreferencesIfEmpty(String key, String value) { if (getValueFromPreferences(key) == null) { prefs.put(key, value); long expirationTime = new Date().getTime() + SECONDS.toMillis(config.getTtl()); prefs.putLong(getExpirationKey(key), expirationTime); if (log.isDebugEnabled()) { log.debug("Storing preference {}={} (valid until {})", key, value, formatTime(expirationTime)); } } }
private String detectDriverVersionFromBrowser() { String version = ""; Optional<String> optionalBrowserVersion = config().isAvoidAutoVersion() ? empty() : getBrowserVersion(); if (optionalBrowserVersion.isPresent()) { String browserVersion = optionalBrowserVersion.get(); log.trace("Detected {} version {}", getDriverManagerType(), browserVersion); preferenceKey = getDriverManagerType().name().toLowerCase() + browserVersion; if (usePreferences() && preferences.checkKeyInPreferences(preferenceKey)) { // Get driver version from preferences version = preferences.getValueFromPreferences(preferenceKey); } else { // Get driver version from properties version = getVersionForInstalledBrowser(browserVersion); } if (!isNullOrEmpty(version)) { log.info( "Using {} {} (since {} {} is installed in your machine)", getDriverName(), version, getDriverManagerType(), browserVersion); } } return version; }
private long getExpirationTimeFromPreferences(String key) { return prefs.getLong(getExpirationKey(key), 0); }
private void storeVersionToDownload(String version) { if (!version.isEmpty()) { if (version.startsWith(".")) { version = version.substring(1); } versionToDownload = version; if (isLatest && usePreferences() && !isNullOrEmpty(preferenceKey)) { preferences.putValueInPreferencesIfEmpty(preferenceKey, version); } } }
public void clearPreferences() { instanceMap.get(getDriverManagerType()).preferences.clear(); }
public void putValueInPreferencesIfEmpty(String key, String value) { if (getValueFromPreferences(key) == null) { prefs.put(key, value); long expirationTime = new Date().getTime() + SECONDS.toMillis(config.getTtl()); prefs.putLong(getExpirationKey(key), expirationTime); if (log.isDebugEnabled()) { log.debug("Storing preference {}={} (valid until {})", key, value, formatTime(expirationTime)); } } }
private String detectDriverVersionFromBrowser() { String version = ""; Optional<String> optionalBrowserVersion = config().isAvoidAutoVersion() ? empty() : getBrowserVersion(); if (optionalBrowserVersion.isPresent()) { String browserVersion = optionalBrowserVersion.get(); log.trace("Detected {} version {}", getDriverManagerType(), browserVersion); preferenceKey = getDriverManagerType().name().toLowerCase() + browserVersion; if (usePreferences() && preferences.checkKeyInPreferences(preferenceKey)) { // Get driver version from preferences version = preferences.getValueFromPreferences(preferenceKey); } else { // Get driver version from properties version = getVersionForInstalledBrowser(browserVersion); } if (!isNullOrEmpty(version)) { log.info( "Using {} {} (since {} {} is installed in your machine)", getDriverName(), version, getDriverManagerType(), browserVersion); } } return version; }
private void clearFromPreferences(String key) { prefs.remove(key); prefs.remove(getExpirationKey(key)); }
private void storeVersionToDownload(String version) { if (!version.isEmpty()) { if (version.startsWith(".")) { version = version.substring(1); } versionToDownload = version; if (isLatest && usePreferences() && !isNullOrEmpty(preferenceKey)) { preferences.putValueInPreferencesIfEmpty(preferenceKey, version); } } }
public void clearPreferences() { instanceMap.get(getDriverManagerType()).preferences.clear(); }
public boolean checkKeyInPreferences(String key) { String valueFromPreferences = getValueFromPreferences(key); boolean valueInPreferences = valueFromPreferences != null && !valueFromPreferences.isEmpty(); if (valueInPreferences) { long expirationTime = getExpirationTimeFromPreferences(key); String expirationDate = formatTime(expirationTime); valueInPreferences &= checkValidity(key, valueFromPreferences, expirationTime); if (valueInPreferences) { log.debug("Preference found {}={} (valid until {})", key, valueFromPreferences, expirationDate); } } return valueInPreferences; }
private boolean checkValidity(String key, String value, long expirationTime) { long now = new Date().getTime(); boolean isValid = value != null && expirationTime != 0 && expirationTime > now; if (!isValid) { String expirationDate = formatTime(expirationTime); log.debug("Removing preference {}={} (expired on {})", key, value, expirationDate); clearFromPreferences(key); } return isValid; }
public static void main(String[] args) { String validBrowsers = "chrome|firefox|opera|edge|phantomjs|iexplorer|selenium_server_standalone"; if (args.length <= 0) { logCliError(validBrowsers); } else { String arg = args[0]; if (arg.equalsIgnoreCase("server")) { startServer(args); } else if (arg.equalsIgnoreCase("clear-preferences")) { new Preferences(new Config()).clear(); } else { resolveLocal(validBrowsers, arg); } } }
private long getExpirationTimeFromPreferences(String key) { return prefs.getLong(getExpirationKey(key), 0); }
private void clearFromPreferences(String key) { prefs.remove(key); prefs.remove(getExpirationKey(key)); }