Skip to content

v3.0.6973.0-Beta

Choose a tag to compare

@ITHitBuild ITHitBuild released this 26 May 17:15
· 74 commits to master since this release
  • Virtual File System sample for macOS now supports all file management functionality: remote storage to user file system sync, user file system to remote storage sync, files creation, hydration/dehydration,  deletion, copy, move, etc.
  • Virtual File System sample for Windows refactored and simplified to provide only minimum code required to create a file system with synchronization, on-demand loading, hydration/dehydration.
  • Virtual Drive sample is provided with advanced functionality: Microsoft Office files editing, automatic Microsoft Office documents locking, custom columns/states in Windows File Manger.
  • Virtual File System sample performance improved. The sample folder listing is tested with up to 35K files in a single folder. File hydration is tested up to 30GB per file.
  • New locking interfaces are provided. ILock interface is provided in ITHit.FileSystem.Windows module. EngineWindows.AutoLock property is provided to enable automatic Microsoft Office documents locking.
  • IEngine.FilterAsync() method is provided to avoid synchronization of specified files (typically Microsoft Office temp files) to the remote storage and back.
  • Rename and delete operations can now automatically confirm the operation if no exception is thrown inside the method implementation or reject operation in case of exception.
  • The IEngine.GetFileSystemItemAsync() method now provides FileSystemItemType parameter, indicating if a file or a folder is requested.
  • EngineWindows class now processes hydration/dehydration as well as files and folder creation. No need to create a separate file system monitoring thread.
  • PlaceholderItem class now provides HydrationRequired() and DehydrationRequired() methods.
  • EngineWindows now provides the public StopAsync() method.
  • IFile & IFolder now provides WriteAsync() method.
  • IFolder now provides CreateFileAsync() and CreateFolderAsync() methods.
  • IFile.TransferDataAsync() method is replaced by IFile.ReadAsync() with a stream parameter.
  • IClientNotifications and IClientNotificationsWindows interfaces as well as EngineWindows.ClientNotifications() method is provided. To be called if the file system was not running to process operations and sent to remote storage.
  • IServerNotifications interface and IEngine.ServerNotifications() method is provided for notifying the user file system about changes in the remote storage.
  • If custom data is not specified in FileSystemItemMetadata.CustomData when creating a placeholder, the Win32Exception is thrown "Cloud Operation is invalid". Now, this bug is fixed.
  • Custom columns data was erased when setting the file icon. Now custom data is stored in the external file in the data folder, separately for each file. Custom columns implementation is moved to a new Virtual Drive sample.
  • Files and folders are now only marked as modified when file content is modified or the folder is moved. The StorageProviderSyncRootInfo.InSyncPolicy is now set to StorageProviderInSyncPolicy.Default in Registrar class in samples.
  • New files are now converted to a placeholder only after successful file upload in the sample code.
  • File comparison changed in Virtual Drive and User File System samples. Instead of ETag-LastModifiedDate now file hashes are computed.