ffos-fs

0.0.7 • Public • Published

ffos-fs

File System (fs) module for the Firefox OS

Provides file system functions for the Firefox OS and devices supporting device storage.

It tries to mimic node's fs module where possible.

By the very nature of the device storage it only implements a subset of node's fs module.

Usage

Higher level functions

var fs = require('ffos-fs');

Get files within a directory. Returned files are of type File.

fs.readdir(path, callback(error, files) { ... });

Read contents of a file.

options

  • format String | Null default = 'text', can be 'text', 'binary', 'dataURL', 'buffer'
  • encoding String | Null default = null, text encoding if format is 'text'
  • flag String default = 'r', can be 'r' or 'w'
fs.readFile(path, [options], callback(error, data) { ... });

Write contents to a file.
Will create the file if it does not exist and overwrite an existing file.

options

  • encoding String | Null default = 'utf8'
  • mimetype String | Null default = 'text/plain'
  • flag String default = 'w'
fs.writeFile(path, data, [options], callback(error) { ... });

Check if a file exists.
You cannot check for the existance of a directory on Firefox OS.

fs.exists(path, callback(error, exists) { ... });

Remove a file or directory.

fs.unlink(path, callback(error) { ... });

Lower level functions

Open a File handle.

flag can be one of 'r' or 'w'.

fd is either of type File (read) or of type FileHandle (write).

fs.open(path, flag, callback(error, fd) { ... });

Read from a file to a Blob.

fd must be of type FileHandle or File or LockedFile.

blob is the blog that the data will be written to.

offset is the offset in the blob to start writing at.

length is an integer specifying the number of bytes to read.

position is an integer specifying where to begin reading from in the file. If position is null, data will be read from the start.

fs.read(fd, blob, offset, length, position, callback(error, bytesRead, blob) { ... });

Write from a blob to a file Blob.

fd must be of type FileHandle or File or LockedFile.

blob is the blog that the data will be written to.

offset is the offset in the blob to start writing at.

length is an integer specifying the number of bytes to read.

position is an integer specifying where to begin reading from in the file. If position is null, data will be read from the start.

fs.read(fd, blob, offset, length, position, callback(error, bytesRead, blob) { ... });

Mocking the filesystem

It's possible to mock the filesystem to an in-memory filesystem.

fs.mock();

Currently there is no support for the Lower level functions in mock mode.

You can however use:

  • fs.writeFile
  • fs.exists
  • fs.readFile
  • fs.readdir
  • fs.unlink

If you need to prepopulate your mocked filesystem with files just use fs.writeFile to create some files.

Readme

Keywords

Package Sidebar

Install

npm i ffos-fs

Weekly Downloads

6

Version

0.0.7

License

MIT

Last publish

Collaborators

  • ondrej