presto-raptor-legacy/src/main/java/io/prestosql/plugin/raptor/legacy/backup/BackupModule.java/BackupModule/createBackupStore
class BackupModule:    @Provides
    @Singleton
    private static Optional<BackupStore> createBackupStore(
            @Nullable BackupStore store,
            LifeCycleManager lifeCycleManager,
            MBeanExporter exporter,
            RaptorConnectorId connectorId,
            BackupConfig config)
            throws Exception
    {
        if (store == null) {
            return Optional.empty();
        }

        BackupStore proxy = new TimeoutBackupStore(
                store,
                connectorId.toString(),
                config.getTimeout(),
                config.getTimeoutThreads());

        lifeCycleManager.addInstance(proxy);

        BackupStore managed = new ManagedBackupStore(proxy);
        exporter.exportWithGeneratedName(managed, BackupStore.class, connectorId.toString());

        return Optional.of(managed);
    }