diff options
author | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-02-03 12:12:35 +0000 |
---|---|---|
committer | Jens-Heiner Rechtien <hr@openoffice.org> | 2004-02-03 12:12:35 +0000 |
commit | 4c0987ee7c3ada99c2afc4f231e1d32bf9309814 (patch) | |
tree | 9dcd52bba003e9844fe40b2112d03a1312908f34 /sal | |
parent | 59a8a69fe5a09831b71fc224b45c1cee941675ef (diff) |
INTEGRATION: CWS sal05 (1.27.64); FILE MERGED
2004/01/26 14:19:11 tra 1.27.64.4: #104528#updates after code inspection
2004/01/08 10:10:25 tra 1.27.64.3: small update of osl_createDirectoryPath documentation
2004/01/05 11:12:57 tra 1.27.64.2: RESYNC: (1.27-1.28); FILE MERGED
2003/11/21 16:00:35 tra 1.27.64.1: #104528#osl_createDirectoryPath introduced
Diffstat (limited to 'sal')
-rw-r--r-- | sal/inc/osl/file.h | 84 |
1 files changed, 82 insertions, 2 deletions
diff --git a/sal/inc/osl/file.h b/sal/inc/osl/file.h index 8ccd4662ba46..d4df12949d5e 100644 --- a/sal/inc/osl/file.h +++ b/sal/inc/osl/file.h @@ -2,9 +2,9 @@ * * $RCSfile: file.h,v $ * - * $Revision: 1.28 $ + * $Revision: 1.29 $ * - * last change: $Author: vg $ $Date: 2003-12-17 17:07:29 $ + * last change: $Author: hr $ $Date: 2004-02-03 13:12:35 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -1067,6 +1067,86 @@ oslFileError SAL_CALL osl_createDirectory( rtl_uString* pustrDirectoryURL ); oslFileError SAL_CALL osl_removeDirectory( rtl_uString* pustrDirectoryURL ); +/** Function pointer representing a function that will be called by osl_createDirectoryPath + if a directory has been created. + + To avoid unpredictable results the callee must not access the directory whose + creation is just notified. + + @param pData + [in] User specified data given in osl_createDirectoryPath. + + @param aDirectoryUrl + [in] The absolute file URL of the directory that was just created by + osl_createDirectoryPath. + + @see osl_createDirectoryPath +*/ +typedef void (SAL_CALL *oslDirectoryCreationCallbackFunc)(void* pData, rtl_uString* aDirectoryUrl); + +/** Create a directory path. + + The osl_createDirectoryPath function creates a specified directory path. + All nonexisting sub directories will be created. + <p><strong>PLEASE NOTE:</strong> You cannot rely on getting the error code + osl_File_E_EXIST for existing directories. Programming against this error + code is in general a strong indication of a wrong usage of osl_createDirectoryPath.</p> + + @param aDirectoryUrl + [in] The absolute file URL of the directory path to create. + A relative file URL will not be accepted. + + @param aDirectoryCreationFunc + [in] Pointer to a function that will be called synchronously + for each sub directory that was created. The value of this + parameter may be NULL, in this case notifications will not be + sent. + + @param pData + [in] User specified data to be passed to the directory creation + callback function. The value of this parameter may be arbitrary + and will not be interpreted by osl_createDirectoryPath. + + @return + <dl> + <dt>osl_File_E_None</dt> + <dd>On success</dd> + <dt>osl_File_E_INVAL</dt> + <dd>The format of the parameters was not valid</dd> + <dt>osl_File_E_ACCES</dt> + <dd>Permission denied</dd> + <dt>osl_File_E_EXIST</dt> + <dd>The final node of the specified directory path already exist</dd> + <dt>osl_File_E_NAMETOOLONG</dt> + <dd>The name of the specified directory path exceeds the maximum allowed length</dd> + <dt>osl_File_E_NOTDIR</dt> + <dd>A component of the specified directory path already exist as file in any part of the directory path</dd> + <dt>osl_File_E_ROFS</dt> + <dd>Read-only file system</dd> + <dt>osl_File_E_NOSPC</dt> + <dd>No space left on device</dd> + <dt>osl_File_E_DQUOT</dt> + <dd>Quota exceeded</dd> + <dt>osl_File_E_FAULT</dt> + <dd>Bad address</dd> + <dt>osl_File_E_IO</dt> + <dd>I/O error</dd> + <dt>osl_File_E_LOOP</dt> + <dd>Too many symbolic links encountered</dd> + <dt>osl_File_E_NOLINK</dt> + <dd>Link has been severed</dd> + <dt>osl_File_E_invalidError</dt> + <dd>An unknown error occurred</dd> + </dl> + + @see oslDirectoryCreationFunc + @see oslFileError + @see osl_createDirectory +*/ +oslFileError SAL_CALL osl_createDirectoryPath( + rtl_uString* aDirectoryUrl, + oslDirectoryCreationCallbackFunc aDirectoryCreationCallbackFunc, + void* pData); /** Remove a regular file. |