vtkPTSFileSystem: Allow to browse both local and remote locations
The filesystem microservice can now browse both local and remote locations by passing an extra location
parameter.
location
can be:
- Client (i.e. local)
- Data Service
- Render Service
- Server = Data Service (for now, can become IO Service in the future)
The relevant values are really Client
and Server
but we add separate service destinations in case we need it in the future (also communication is really between client and services not client and server).
To avoid having to re-implement all filesystem operations for both local and remote locations we introduce a new vtkLocalFileSystemProvider
which inherits from vtkRemoteFileSystemProvider
. vtkLocalFileSystemProvider
allows to keep the code duplication low by treating it as remote i.e. we create communicate with it though vtkPacket
s but the actual operation are performed by the client thread. That way any new operation of vtkRemoteFileSystemProvider
will automatically work for vtkLocalFileSystemProvider
.
closes #46 (closed)