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

com.palantir.atlasdb.timelock.api.ConjureTimelockService Maven / Gradle / Ivy

There is a newer version: 0.1152.0
Show newest version
package com.palantir.atlasdb.timelock.api;

import com.palantir.conjure.java.lib.internal.ClientEndpoint;
import com.palantir.lock.v2.LeaderTime;
import com.palantir.logsafe.Safe;
import com.palantir.tokens.auth.AuthHeader;
import javax.annotation.processing.Generated;
import javax.ws.rs.Consumes;
import javax.ws.rs.HeaderParam;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;

@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
@Path("/")
@Generated("com.palantir.conjure.java.services.JerseyServiceGenerator")
public interface ConjureTimelockService {
    @POST
    @Path("tl/st/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/st/{namespace}")
    ConjureStartTransactionsResponse startTransactions(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureStartTransactionsRequest request);

    @POST
    @Path("tl/ts/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/ts/{namespace}")
    ConjureGetFreshTimestampsResponse getFreshTimestamps(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureGetFreshTimestampsRequest request);

    @POST
    @Path("tl/t2/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/t2/{namespace}")
    ConjureGetFreshTimestampsResponseV2 getFreshTimestampsV2(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureGetFreshTimestampsRequestV2 request);

    @POST
    @Path("tl/ts1/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/ts1/{namespace}")
    ConjureSingleTimestamp getFreshTimestamp(
            @HeaderParam("Authorization") AuthHeader authHeader, @Safe @PathParam("namespace") String namespace);

    @POST
    @Path("tl/lt/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/lt/{namespace}")
    LeaderTime leaderTime(
            @HeaderParam("Authorization") AuthHeader authHeader, @Safe @PathParam("namespace") String namespace);

    @POST
    @Path("tl/l/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/l/{namespace}")
    ConjureLockResponse lock(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureLockRequest request);

    @POST
    @Path("tl/wl/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/wl/{namespace}")
    ConjureWaitForLocksResponse waitForLocks(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureLockRequest request);

    @POST
    @Path("tl/rl/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/rl/{namespace}")
    ConjureRefreshLocksResponse refreshLocks(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureRefreshLocksRequest request);

    @POST
    @Path("tl/rl2/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/rl2/{namespace}")
    ConjureRefreshLocksResponseV2 refreshLocksV2(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureRefreshLocksRequestV2 request);

    @POST
    @Path("tl/ul/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/ul/{namespace}")
    ConjureUnlockResponse unlock(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureUnlockRequest request);

    @POST
    @Path("tl/ul2/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/ul2/{namespace}")
    ConjureUnlockResponseV2 unlockV2(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            ConjureUnlockRequestV2 request);

    /**
     * Batched endpoint for acquiring commit timestamps (a list of fresh timestamps) and the list of all lock watch
     * events since the last known version up to after the commit timestamps have been issued.
     */
    @POST
    @Path("tl/gct/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/gct/{namespace}")
    GetCommitTimestampsResponse getCommitTimestamps(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            GetCommitTimestampsRequest request);

    @POST
    @Path("tl/g1ct/{namespace}")
    @ClientEndpoint(method = "POST", path = "/tl/g1ct/{namespace}")
    GetCommitTimestampResponse getCommitTimestamp(
            @HeaderParam("Authorization") AuthHeader authHeader,
            @Safe @PathParam("namespace") String namespace,
            GetCommitTimestampRequest request);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy