|
blocxx
|
The purpose of the FileSystem class is to provide an abstraction layer over the platform dependant functionality related to a file system. More...
Namespaces | |
| namespace | Path |
Classes | |
| struct | NullFactory |
Typedefs | |
| typedef GlobalPtr< FileSystemMockObject, NullFactory > | FileSystemMockObject_t |
Variables | |
| FileSystemMockObject_t | g_fileSystemMockObject = { 0, {0, PTHREAD_MUTEX_INITIALIZER} } |
| GlobalString | COMPONENT_NAME = { "blocxx" , 0, {0, PTHREAD_MUTEX_INITIALIZER} } |
The purpose of the FileSystem class is to provide an abstraction layer over the platform dependant functionality related to a file system.
| typedef GlobalPtr<FileSystemMockObject, NullFactory> BLOCXX_NAMESPACE::FileSystem::FileSystemMockObject_t |
Definition at line 236 of file PosixFileSystem.cpp.
Definition at line 601 of file PosixFileSystem.cpp.
References _ACCESS, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Definition at line 611 of file PosixFileSystem.cpp.
References _ACCESS, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Change to the given directory.
| path | The directory to change to |
Definition at line 662 of file PosixFileSystem.cpp.
References _CHDIR, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
| int BLOCXX_NAMESPACE::FileSystem::changeFileOwner | ( | const String & | filename, |
| const UserId & | userId ) |
Change the given file ownership.
| filename | The name of the file to change ownership on. |
| userId | The user id to change ownership to |
Definition at line 244 of file PosixFileSystem.cpp.
References BLOCXX_NAMESPACE::String::c_str(), and BLOCXX_NAMESPACE::operator==().
| int BLOCXX_NAMESPACE::FileSystem::close | ( | const FileHandle & | hdl | ) |
Close file handle.
| hdl | The file handle to close. |
Definition at line 983 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::close().
Create a tempororary file that will be removed when the returned File object is closed.
| dir | The directory to create the temporary file in. |
Definition at line 390 of file PosixFileSystem.cpp.
References BLOCXX_LOG_ERROR, COMPONENT_NAME, g_fileSystemMockObject, BLOCXX_NAMESPACE::AutoPtrVec< X >::get(), BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::SafeCString::strcpy_check().
Referenced by BLOCXX_NAMESPACE::TempFileBuffer::buffer_to_device().
Create the file for the given name.
| path | The name of the file to create. |
Definition at line 275 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
| File BLOCXX_NAMESPACE::FileSystem::createTempFile | ( | String & | filePath, |
| const String & | dir = String() ) |
Create a tempororary file in an optional directory.
| filePath | Output parameter that will contain the name of the temporary file on return. It is the responsibility of the caller to delete this file when it is no longer needed. |
| dir | The directory to create the temporary file in. |
Definition at line 345 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, BLOCXX_NAMESPACE::AutoPtrVec< X >::get(), BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::SafeCString::strcpy_check().
Referenced by BLOCXX_NAMESPACE::TempFileBuffer::buffer_to_device().
Definition at line 577 of file PosixFileSystem.cpp.
References _ACCESS, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::ServerSocketImpl::doListenUDS(), and BLOCXX_NAMESPACE::FileAppender::doProcessLogMessage().
| UInt64 BLOCXX_NAMESPACE::FileSystem::fileSize | ( | FileHandle | fh | ) |
Get the size of a file from the file handle.
| fh | Handle of the desired file. |
Definition at line 937 of file PosixFileSystem.cpp.
References BLOCXX_THROW_ERRNO_MSG, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::size().
| int BLOCXX_NAMESPACE::FileSystem::flush | ( | FileHandle & | hdl | ) |
Flush any buffered data to the file if buffering supported.
| hdl | The file handle to flush the buffer on. |
Definition at line 997 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::flush().
| bool BLOCXX_NAMESPACE::FileSystem::getDirectoryContents | ( | const String & | path, |
| StringArray & | dirEntries ) |
Get the names of the files (and directories) in the given directory.
| path | The name of the directory to get the contents of. |
| dirEntries | The directory contents will be placed in this array. |
Definition at line 726 of file PosixFileSystem.cpp.
References BLOCXX_FILENAME_SEPARATOR, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Read and return the contents of a text file.
If the file contains a null character ('\0') then only previous data will be returned.
| filename | The name of the file to read |
| FileSystemException | if the file doesn't exist or reading fails for any reason. |
Definition at line 1010 of file PosixFileSystem.cpp.
References BLOCXX_THROW, BLOCXX_NAMESPACE::String::c_str(), g_fileSystemMockObject, BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::OStringStream::toString().
Referenced by getFileLines().
| StringArray BLOCXX_NAMESPACE::FileSystem::getFileLines | ( | const String & | filename | ) |
Read and return the lines of a test file.
If the file contains a null character ('\0') then only previous data will be returned.
| filename | The name of the file to read |
| FileSystemException | if the file doesn't exist or reading fails for any reason. |
Definition at line 1027 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, getFileContents(), and BLOCXX_NAMESPACE::String::tokenize().
Get the size of the file in bytes.
| path | The name of the file to get the size for. |
| size | Put the size of the file in this variable. |
Definition at line 682 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Definition at line 638 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Tests if a file is executable.
This method is not available on platforms that do not have support for executable file attributes
Definition at line 589 of file PosixFileSystem.cpp.
References _ACCESS, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Tests if a file is a symbolic link.
This method is not available on platforms that do not have support for symbolic links
Definition at line 622 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Create a directory.
| path | The name of the directory to create. |
| mode | specifies the permissions to use. |
Definition at line 672 of file PosixFileSystem.cpp.
References _MKDIR, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Open a file for read/write and return an File object that can be used for reading and writing.
Definition at line 256 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::TempFileEnumerationImplBase::readSize().
Opens the file for the given name to append data or create if it does not exist.
| path | The name of the file to create. |
Definition at line 318 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::MultiProcessFileAppender::doProcessLogMessage(), and BLOCXX_NAMESPACE::MultiProcessFileAppender::MultiProcessFileAppender().
Opens or creates the file for the given name.
| path | The name of the file to create. |
Definition at line 299 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::ServerSocketImpl::doListenUDS(), and BLOCXX_NAMESPACE::MultiProcessFileAppender::MultiProcessFileAppender().
| size_t BLOCXX_NAMESPACE::FileSystem::read | ( | const FileHandle & | hdl, |
| void * | bfr, | ||
| size_t | numberOfBytes, | ||
| Int64 | offset = -1L ) |
Read data from file.
| hdl | The file handle to perform the read operation on. |
| bfr | The location where the read operation will place what is read. |
| numberOfBytes | The number of bytes to read. |
| offset | The offset to seek to in the file before the read operation is done. -1 will use the current offset. |
Definition at line 786 of file PosixFileSystem.cpp.
References BLOCXX_THROW, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::read().
Read the value of a symbolic link.
| path | Path to the symbolic link |
| FileSystemException | ENOTDIR, ENOENT, EACCES, ELOOP, EINVAL, EIO, EFAULT, ENOMEM |
Definition at line 1037 of file PosixFileSystem.cpp.
References BLOCXX_THROW_ERRNO_MSG, g_fileSystemMockObject, MAXPATHLEN, BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::FileSystem::Path::realPath().
Remove the given directory.
| path | The name of the directory to remove |
Definition at line 706 of file PosixFileSystem.cpp.
References _RMDIR, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Remove the given file.
| path | The name of the file to remove. |
Definition at line 716 of file PosixFileSystem.cpp.
References _UNLINK, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::ServerSocketImpl::close(), BLOCXX_NAMESPACE::ServerSocketImpl::doListenUDS(), BLOCXX_NAMESPACE::FileAppender::doProcessLogMessage(), BLOCXX_NAMESPACE::MultiProcessFileAppender::doProcessLogMessage(), and BLOCXX_NAMESPACE::TempFileBuffer::~TempFileBuffer().
| bool BLOCXX_NAMESPACE::FileSystem::renameFile | ( | const String & | oldFileName, |
| const String & | newFileName ) |
Rename the given file to the new name.
| oldFileName | The name of the file to rename |
| newFileName | The new name for the oldFileName |
Definition at line 775 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::FileAppender::doProcessLogMessage(), and BLOCXX_NAMESPACE::MultiProcessFileAppender::doProcessLogMessage().
| void BLOCXX_NAMESPACE::FileSystem::rewind | ( | const FileHandle & | hdl | ) |
Position the file pointer associated with the given file handle to the beginning of the file.
| hdl | The file handle to use in the rewind operation. |
Definition at line 969 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::rewind().
| Int64 BLOCXX_NAMESPACE::FileSystem::seek | ( | const FileHandle & | hdl, |
| Int64 | offset, | ||
| int | whence ) |
Seek to a given offset within the file.
| hdl | The file handle to use in the seek operation. |
| offset | The offset to seek to relative to the whence parm. |
| whence | Can be one of the follwing values: SEEK_SET - Seek relative to the beginning of the file. SEEK_CUR - Seek relative to the current position. SEEK_END - Seek relative to the end of the file (bwd). |
Definition at line 878 of file PosixFileSystem.cpp.
References BLOCXX_THROW, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::seek().
| Int64 BLOCXX_NAMESPACE::FileSystem::tell | ( | const FileHandle & | hdl | ) |
| hdl | The file handle to use in the tell operation. |
Definition at line 915 of file PosixFileSystem.cpp.
References g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::tell().
| size_t BLOCXX_NAMESPACE::FileSystem::write | ( | FileHandle | hdl, |
| const void * | bfr, | ||
| size_t | numberOfBytes, | ||
| Int64 | offset = -1L ) |
Write data to a file.
| hdl | The file handle to perform the write operation on. |
| bfr | The locaction to get the contents to write. |
| numberOfBytes | The number of bytes to write. |
| offset | The offset to seek to in the file before the write operation is done. -1 will use the current offset. |
Definition at line 832 of file PosixFileSystem.cpp.
References BLOCXX_THROW, g_fileSystemMockObject, and BLOCXX_NAMESPACE::operator==().
Referenced by BLOCXX_NAMESPACE::File::write().
| GlobalString BLOCXX_NAMESPACE::FileSystem::COMPONENT_NAME = { "blocxx" , 0, {0, PTHREAD_MUTEX_INITIALIZER} } |
Definition at line 239 of file PosixFileSystem.cpp.
Referenced by createAutoDeleteTempFile().
| FileSystemMockObject_t BLOCXX_NAMESPACE::FileSystem::g_fileSystemMockObject = { 0, {0, PTHREAD_MUTEX_INITIALIZER} } |
Definition at line 237 of file PosixFileSystem.cpp.
Referenced by BLOCXX_NAMESPACE::FileSystem::Path::basename(), canRead(), canWrite(), changeDirectory(), close(), createAutoDeleteTempFile(), createFile(), createTempFile(), BLOCXX_NAMESPACE::FileSystem::Path::dirname(), exists(), fileSize(), flush(), BLOCXX_NAMESPACE::FileSystem::Path::getCurrentWorkingDirectory(), getDirectoryContents(), getFileContents(), getFileLines(), getFileSize(), isDirectory(), isExecutable(), isLink(), makeDirectory(), openFile(), openForAppendOrCreateFile(), openOrCreateFile(), read(), readSymbolicLink(), BLOCXX_NAMESPACE::FileSystem::Path::realPath(), removeDirectory(), removeFile(), renameFile(), rewind(), seek(), tell(), and write().