All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.swisspush.reststorage.Storage Maven / Gradle / Ivy

There is a newer version: 3.1.8
Show newest version
package org.swisspush.reststorage;

import io.vertx.core.Handler;
import org.swisspush.reststorage.util.LockMode;

import java.util.List;
import java.util.Optional;

public interface Storage {

    /**
     * Gets the current percentage of the actual memory usage. Possible values are in range 0.0 to 100.0
     *
     * @return the current percentage of the actual memory usage
     */
    Optional getCurrentMemoryUsage();

    void get(String path, String etag, int offset, int count, Handler handler);

    void storageExpand(String path, String etag, List subResources, Handler handler);

    void put(String path, String etag, boolean merge, long expire, Handler handler);

    void put(String path, String etag, boolean merge, long expire, String lockOwner, LockMode lockMode, long lockExpire, Handler handler);

    void put(String path, String etag, boolean merge, long expire, String lockOwner, LockMode lockMode, long lockExpire, boolean storeCompressed, Handler handler);

    void delete(String path, String lockOwner, LockMode lockMode, long lockExpire, boolean confirmCollectionDelete, boolean deleteRecursive, Handler handler);

    void cleanup(Handler handler, String cleanupResourcesAmount);

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy