Switch to: V9V8V7V6V5

Behavior of Dump

VDatabase.Dump() should come in two versions. The first one, which is the current one, takes a FolderItem as the first parameter, should dump the database to a file on the client. This can be implemented I think with no low-level changes; the client plugin downloads the information, generates the XML/SQL, and writes the data to the file passed to Dump.

The second version should take a relative path as the first parameter. Add a setting to the .ini file like

DumpDirectory=Dumps;

that specifies a directory for dump files. Then the parameter should be a string of the form

“subdirectory/subsubdirectory/…/filename”.

If a file at the path already exists, it is overwritten. If a directory at the path exists, some error should be returned (either by exception or error code).

Then VServer needs a way to examine dump directory contents. I don't think FolderItems are a good solution for this. Instead I suggest the following as a VServer method.

Function DumpDirectoryContents() as String()

This function returns a list of (absolute) paths for files and subdirectories in DumpDirectory. Then the caller can check to see whether a file exists to avoid overwriting data.