org.apache.poi.util

## Class DefaultTempFileCreationStrategy

- java.lang.Object
- - org.apache.poi.util.DefaultTempFileCreationStrategy

- All Implemented Interfaces:
    TempFileCreationStrategy

      public class DefaultTempFileCreationStrategy
      extends java.lang.Object
      implements TempFileCreationStrategy

  Default implementation of the `TempFileCreationStrategy` used by `TempFile`: Files are collected into one directory and by default are deleted on exit from the VM. Files may be manually deleted by user prior to JVM exit. Files can be kept by defining the system property `KEEP_FILES`. Each file is registered for deletion with the JVM and the temporary directory is not deleted after the JVM exits. Files that are created in the poifiles directory outside the control of DefaultTempFileCreationStrategy are not deleted. See `TempFileCreationStrategy` for better strategies for long-running processes or limited temporary storage.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static java.lang.String` | `KEEP_FILES` To keep files after JVM exit, set the `-Dpoi.keep.tmp.files` JVM property

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `DefaultTempFileCreationStrategy()` Creates the strategy so that it creates the temporary files in the default directory.
    `DefaultTempFileCreationStrategy(java.io.File dir)` Creates the strategy allowing to set the

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.io.File` | `createTempDirectory(java.lang.String prefix)` Creates a new and empty temporary directory.
    `java.io.File` | `createTempFile(java.lang.String prefix, java.lang.String suffix)` Creates a new and empty temporary file.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### KEEP_FILES

          public static final java.lang.String KEEP_FILES

      To keep files after JVM exit, set the `-Dpoi.keep.tmp.files` JVM property
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### DefaultTempFileCreationStrategy

          public DefaultTempFileCreationStrategy()

      Creates the strategy so that it creates the temporary files in the default directory.
      See Also:
        `File.createTempFile(String, String)`

    - #### DefaultTempFileCreationStrategy

          public DefaultTempFileCreationStrategy(java.io.File dir)

      Creates the strategy allowing to set the
      Parameters:
        `dir` - The directory where the temporary files will be created (`null` to use the default directory).
      See Also:
        `File.createTempFile(String, String, File)`

  - ### Method Detail

    - #### createTempFile

          public java.io.File createTempFile(java.lang.String prefix,
                                             java.lang.String suffix)
                                      throws java.io.IOException

      Description copied from interface: `TempFileCreationStrategy`
      Creates a new and empty temporary file.
      Specified by:
        `createTempFile` in interface `TempFileCreationStrategy`
      Parameters:
        `prefix` - The prefix to be used to generate the name of the temporary file.
        `suffix` - The suffix to be used to generate the name of the temporary file.
      Returns:
        The path to the newly created and empty temporary file.
      Throws:
        `java.io.IOException` - If no temporary file could be created.

    - #### createTempDirectory

          public java.io.File createTempDirectory(java.lang.String prefix)
                                           throws java.io.IOException

      Description copied from interface: `TempFileCreationStrategy`
      Creates a new and empty temporary directory.
      Specified by:
        `createTempDirectory` in interface `TempFileCreationStrategy`
      Parameters:
        `prefix` - The directory name to be used to generate the name of the temporary directory.
      Returns:
        The path to the newly created and empty temporary directory.
      Throws:
        `java.io.IOException` - If no temporary directory could be created.

Copyright 2020 The Apache Software Foundation or its licensors, as applicable.