title: How can I 'freeze' a dataset in a Datasnap server?
body: <p>For a dataset which takes a very long time to open (it is a stored procedure), I would like to implement some kind of caching on the Datasnap server.</p>
  
  <p>So if this dataset is loaded the first time and transferred to the client (TClientDataSet), it should not be closed and reopened for the following requests unless the server restarts or a "reload" procedure on the server is called.</p>
  
  <p>So after the first open, every new client would only receive a copy (clone) of the dataset without refreshing / reloading the server side dataset.</p>
  
  <p>For a simple implementation of this dataset 'cache' the Datasnap server datamodule must not be created per session (because for each new session, the server side dataset would be closed until the client sends the request to open the DatasetProvider). Maybe I can find a solution to clone the dataset also for session datamodules but my basic question is:</p>
  
  <p><strong>Is there a way to override methods in the DatasetProvider so that the client can still open, but not close the server-side dataset?</strong></p>