class StoreGraphService {

    public LocalDateTime getLastGraphStoreDate(MetadataCollections metadataCollections) throws StoreGraphException {
        try {
            DataCategory dataCategory = getDataCategory(metadataCollections);

            Iterator<OfferLog> offerLogIterator = restoreBackupService.getListing(VitamConfiguration.getDefaultStrategy(), dataCategory, null,
                null, Order.DESC, LAST_GRAPHSTORE_OFFERLOG_BATCH_SIZE);

            if (!offerLogIterator.hasNext()) {
                // Case where no offer log found. Means that no timestamp zip file saved yet in the offer
                return INITIAL_START_DATE;
            }

            return LocalDateTime.from(formatter.parse(offerLogIterator.next().getFileName().split(UNDERSCORE, 2)[1]));

        } catch (Exception e) {
            throw new StoreGraphException(e);
        }
    }

    @VisibleForTesting public  StoreGraphService(
        VitamRepositoryProvider vitamRepositoryProvider,
        RestoreBackupService restoreBackupService,
        WorkspaceClientFactory workspaceClientFactory,
        StorageClientFactory storageClientFactory);
    public  StoreGraphService(VitamRepositoryProvider vitamRepositoryProvider);

}