Public Types | Public Member Functions | Static Public Member Functions

fawkes::File Class Reference

File utility methods. More...

#include <utils/system/file.h>

List of all members.

Public Types

enum  FileOpenMethod { OVERWRITE, APPEND, ADD_SUFFIX }
 

What to do when a file with the same name already exists.

More...

Public Member Functions

 File (const char *filename, FileOpenMethod method=APPEND)
 Constructor.
 ~File ()
 Destructor.
FILE * stream () const
 Get access to the file stream.
const char * filename () const
 Get the file's name.

Static Public Member Functions

static bool exists (const char *filename)
 Check if a file exists.
static bool is_regular (const char *filename)
 Check if a file is a regular file.

Detailed Description

File utility methods.

Allows for opening a file and provides utilities to check if a file exists or whether it is a regular file (and not a symbolic link/directory).

Author:
Tim Niemueller
Daniel Beck

Definition at line 38 of file file.h.


Member Enumeration Documentation

What to do when a file with the same name already exists.

Enumerator:
OVERWRITE 

overwrite the existing file

APPEND 

append data at the end of the existing file

ADD_SUFFIX 

add a suffix (starting with ".1") to the given filename

Definition at line 44 of file file.h.


Constructor & Destructor Documentation

fawkes::File::File ( const char *  filename,
FileOpenMethod  method = APPEND 
)

Constructor.

Independent of the FileOpenMethod files are created with permissions 660

Parameters:
filename the filename
method the method determines what is done if a file with the specified name already exists

Definition at line 71 of file file.cpp.

References ADD_SUFFIX, APPEND, exists(), and OVERWRITE.

fawkes::File::~File (  ) 

Destructor.

Definition at line 117 of file file.cpp.


Member Function Documentation

bool fawkes::File::exists ( const char *  filename  )  [static]

Check if a file exists.

Parameters:
filename the name of the file to check
Returns:
true, if the file exists, false otherwise

Definition at line 149 of file file.cpp.

Referenced by File().

const char * fawkes::File::filename (  )  const

Get the file's name.

Returns:
a pointer to a char array where the filename is stored

Definition at line 138 of file file.cpp.

bool fawkes::File::is_regular ( const char *  filename  )  [static]

Check if a file is a regular file.

Parameters:
filename the name of the file to check
Returns:
true, if the given path points to a regular file, false otherwise

Definition at line 160 of file file.cpp.

Referenced by fawkes::ModuleDL::open().

FILE * fawkes::File::stream (  )  const

The documentation for this class was generated from the following files: