protected IDataStore newDataStore() {
    StoreSettings storeSettings = getStoreSettings();
    Bytes maxSizePerSession = storeSettings.getMaxSizePerSession();
    File fileStoreFolder = storeSettings.getFileStoreFolder();

    return new DiskDataStore(application.getName(), fileStoreFolder, maxSizePerSession);
  }
  @Override
  public IPageManager get(IPageManagerContext pageManagerContext) {
    IDataStore dataStore = newDataStore();

    StoreSettings storeSettings = getStoreSettings();

    if (dataStore.canBeAsynchronous()) {
      int capacity = storeSettings.getAsynchronousQueueCapacity();
      dataStore = new AsynchronousDataStore(dataStore, capacity);
    }

    IPageStore pageStore = newPageStore(dataStore);
    return new PageStoreManager(application.getName(), pageStore, pageManagerContext);
  }