# Interface: com.pnfsoftware.jeb.core.dao.IFileStore

Definition of a binary file store: a store where artifacts are byte arrays uniquely identified by a key.

## Method: get
- parameter: `key`, type: `java.lang.String`
- return type: `byte[]`

Description: Retrieve the contents of a file from the store.
parameter: key: file key
return: file data, null on error

## Method: getStoreLocation
- return type: `java.lang.String`

Description: Get the store location. Example: a root folder, a base url.
return: the optional store location; may be null

## Method: has
- parameter: `key`, type: `java.lang.String`
- return type: `boolean`

Description: Verify if the given file is contained in the store.
parameter: key: file key
return: presence indicator

## Method: list
- return type: `java.util.List<java.lang.String>`

Description: List all the files in this store.
return: a list of file keys

## Method: put
- parameter: `key`, type: `java.lang.String`
- parameter: `data`, type: `byte[]`
- return type: `java.lang.String`

Description: Store a new file in the store under the given key.
parameter: key: file key, null to let the implementor create a new key
parameter: data: file data
return: the file key, null on error

## Method: put
- parameter: `data`, type: `byte[]`
- return type: `java.lang.String`

Description: Store a new file in the store under a store\-decided key.
parameter: data: file data
return: the file key, null on error

## Method: remove
- parameter: `key`, type: `java.lang.String`
- return type: `boolean`

Description: Remove a file from the store.
parameter: key: file key
return: success indicator

