Apache Jclouds, лучший способ удалить BLOB-объектов из Blobstore старше даты

Привет, я пытаюсь реализовать метод removeValuesUnusedLongerThan(long minimumAge, TimeUnit unit)это означает, что я хочу удалить каждый неиспользованный BLOB-объект старше, чем минимальный, внутри моего контейнера S3 Но я не могу найти какой метод использовать в моем объекте BlobStore для достижения этой цели.

Предоставляет ли JClouds такую ​​функцию?

1 ответ

Решение

jclouds не предоставляет для этого служебного метода, но вы можете сделать свой собственный:

String marker = null;
while (true) {
    PageSet<StorageMetadata> set = blobStore.list(containerName,
            new ListContainerOptions().afterMarker(marker);
    for (StorageMetadata sm : set) {
        if (sm.getCreateDate() < expiryDate) {
            blobStore.removeBlob(containerName, sm.getName());
        }
    }
    marker = set.getNextMarker();
    if (marker == null) {
        break;
    }
}
Другие вопросы по тегам