Example usage for org.openqa.selenium.io TemporaryFilesystem deleteTemporaryFiles

List of usage examples for org.openqa.selenium.io TemporaryFilesystem deleteTemporaryFiles

Introduction

In this page you can find the example usage for org.openqa.selenium.io TemporaryFilesystem deleteTemporaryFiles.

Prototype

public void deleteTemporaryFiles() 

Source Link

Document

Perform the operation that a shutdown hook would have.

Usage

From source file:com.opera.core.systems.preferences.OperaFilePreferences.java

License:Apache License

/**
 * Constructs a new representation of Opera's preferences based on the given preference file.
 *
 * @param preferenceFile an INI style preference file
 *//* w w  w.ja  va  2s.com*/
public OperaFilePreferences(File preferenceFile) {
    this.preferenceFile = preferenceFile;

    // Create new preference file if it doesn't exist
    if (!preferenceFile.exists()) {
        try {
            if (!preferenceFile.createNewFile()) {
                throw new IOException("File exists");
            }
        } catch (IOException e) {
            throw new WebDriverException("Unable to create new preference file: " + e.getMessage());
        }

        return;
    }

    // Due to the sucky nature of Opera's invalid preference files, we are forced to remove the
    // first line of the file.
    //
    // opera.ini looks much like this:
    //
    //   <BOM>
    //   Opera Preferences version 2.1
    //   ; Do not edit this file while Opera is running
    //   ; This file is stored in UTF-8 encoding
    //
    //   [User Prefs]
    //   Language Files Directory=
    //
    //     &c.

    TemporaryFilesystem fs = null;
    File temporaryPreferenceFile;
    Ini ini;

    try {
        fs = TemporaryFilesystem.getDefaultTmpFS();
        temporaryPreferenceFile = new File(fs.createTempDir("operadriver", "preferences").getAbsolutePath()
                + File.separator + "opera.ini");

        BufferedReader reader = new BufferedReader(new FileReader(preferenceFile));
        BufferedWriter writer = new BufferedWriter(new FileWriter(temporaryPreferenceFile));

        String newLine = System.getProperty("line.separator");
        String currentLine;
        while ((currentLine = reader.readLine()) != null) {
            if (!currentLine.contains("Opera Preferences version")) {
                writer.write(currentLine + newLine);
            }
        }

        // Make sure channels are closed so that last line is flushed
        reader.close();
        writer.close();

        // Read new preference file
        ini = new Ini(temporaryPreferenceFile);
    } catch (FileNotFoundException e) {
        throw new WebDriverException("Unknown file: " + preferenceFile.getAbsolutePath());
    } catch (IOException e) {
        throw new WebDriverException("Unable to read file: " + preferenceFile.getPath());
    } finally {
        if (fs != null) {
            fs.deleteTemporaryFiles();
        }
    }

    // Add each preference entry
    for (Map.Entry<String, Profile.Section> section : ini.entrySet()) {
        for (Map.Entry<String, String> entry : section.getValue().entrySet()) {
            set(section.getValue().getName(), entry.getKey(), entry.getValue());
        }
    }
}

From source file:com.screenslicer.core.scrape.Scrape.java

License:Open Source License

public static void forceQuit() {
    try {/*from   w  ww. j a  v  a 2 s  . c  o m*/
        if (driver != null) {
            ((FirefoxDriver) driver).kill();
            Util.driverSleepStartup();
        }
    } catch (Throwable t) {
        Log.exception(t);
    }
    try {
        TemporaryFilesystem tempFS = TemporaryFilesystem.getDefaultTmpFS();
        tempFS.deleteTemporaryFiles();
    } catch (Throwable t) {
        Log.exception(t);
    }
}