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

org.zalando.riptide.failsafe.BackupRequest Maven / Gradle / Ivy

The newest version!
package org.zalando.riptide.failsafe;

import dev.failsafe.Policy;
import dev.failsafe.PolicyConfig;
import dev.failsafe.spi.PolicyExecutor;
import lombok.Getter;
import org.apiguardian.api.API;

import java.util.concurrent.TimeUnit;

import static org.apiguardian.api.API.Status.EXPERIMENTAL;

@API(status = EXPERIMENTAL)
@Getter
public final class BackupRequest implements Policy {

    private final long delay;
    private final TimeUnit unit;
    private final PolicyConfig config = new PolicyConfig() {
    };

    public BackupRequest(long delay, TimeUnit unit) {
        this.delay = delay;
        this.unit = unit;
    }

    @Override
    public PolicyExecutor toExecutor(int policyIndex) {
        return create(policyIndex);
    }

    private PolicyExecutor create(int policyIndex) {
        return new BackupRequestExecutor<>(this, policyIndex);
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy