In ParaView, all “resource” are reprsented as pqServerResource, which can be converted to an URI and is stored in the settings of ParaView so that they can be presented in the “recently used resources” menu.
The current URI scheme is as follows:
scheme://host:port/path/to/file:DATA:VAL
eg:
cs://localhost:11111/path/to/cow.vtp
There is one exception though, “session” resource, which are only used for paraview state files and where the URI is as follows:
session:/path/to/statefile.pvsm#cs://localhost:11111;PARAVIEW_STATE_FILE:1
The usage of PARAVIEW_STATE_FILE
is perfectly justified as a state file is not loaded like a data file and require special processing.
The session
scheme however seems not justified. It uselessly increase the complexity of each code reading the URI of a resource and does not seems required. It would be perfectly fine to have instead:
cs://localhost:11111/path/to/statefile.pvsm;PARAVIEW_STATE_FILE:1
There is already a working branch for this, however, it would mean a small breaking change.
C++ Method deprecation is possible however, with the new implementation, someone recovering the URI of the resource and expecting a session
scheme would never get it.
This is a fairly minimal breaking change, but I want to make sure this is fine for everyone before going ahead.
FYI, this change in the end will add the serverName in the URI, allowing to have resource by serverName instead of by host and port.