Class FileDataStoreFactory

java.lang.Object
com.google.api.client.util.store.AbstractDataStoreFactory
com.google.api.client.util.store.FileDataStoreFactory
All Implemented Interfaces:
DataStoreFactory

public class FileDataStoreFactory extends AbstractDataStoreFactory
Thread-safe file implementation of a credential store.

For security purposes, the file's permissions are set to be accessible only by the file's owner. Note that Java 1.5 does not support manipulating file permissions, and must be done manually or using the JNI.

Since:
1.16
  • Field Details

    • LOGGER

      private static final Logger LOGGER
    • dataDirectory

      private final File dataDirectory
      Directory to store data.
  • Constructor Details

    • FileDataStoreFactory

      public FileDataStoreFactory(File dataDirectory) throws IOException
      Parameters:
      dataDirectory - data directory
      Throws:
      IOException
  • Method Details

    • getDataDirectory

      public final File getDataDirectory()
      Returns the data directory.
    • createDataStore

      protected <V extends Serializable> DataStore<V> createDataStore(String id) throws IOException
      Description copied from class: AbstractDataStoreFactory
      Returns a new instance of a type-specific data store based on the given unique ID.

      The DataStore.getId() must match the id parameter from this method.

      Specified by:
      createDataStore in class AbstractDataStoreFactory
      Type Parameters:
      V - serializable type of the mapped value
      Parameters:
      id - unique ID to refer to typed data store
      Throws:
      IOException
    • setPermissionsToOwnerOnly

      static void setPermissionsToOwnerOnly(File file) throws IOException
      Attempts to set the given file's permissions such that it can only be read, written, and executed by the file's owner.
      Parameters:
      file - the file's permissions to modify
      Throws:
      IOException