Add /v1/payments/auth endpoint

This commit is contained in:
Curt Brune
2020-10-08 07:51:01 -07:00
committed by GitHub
parent da16dfd528
commit 39c09733d3
6 changed files with 148 additions and 2 deletions

View File

@@ -0,0 +1,30 @@
package org.whispersystems.textsecuregcm.controllers;
import com.codahale.metrics.annotation.Timed;
import io.dropwizard.auth.Auth;
import org.whispersystems.textsecuregcm.auth.ExternalServiceCredentialGenerator;
import org.whispersystems.textsecuregcm.auth.ExternalServiceCredentials;
import org.whispersystems.textsecuregcm.storage.Account;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
@Path("/v1/payments")
public class PaymentsController {
private final ExternalServiceCredentialGenerator paymentsServiceCredentialGenerator;
public PaymentsController(ExternalServiceCredentialGenerator paymentsServiceCredentialGenerator) {
this.paymentsServiceCredentialGenerator = paymentsServiceCredentialGenerator;
}
@Timed
@GET
@Path("/auth")
@Produces(MediaType.APPLICATION_JSON)
public ExternalServiceCredentials getAuth(@Auth Account account) {
return paymentsServiceCredentialGenerator.generateFor(account.getUuid().toString());
}
}