Obtener los datos de un plan de uso en AWS mediante el usagePlanId (Solucionado)

Higarigaoka - Odaiba, Sin comentarios

Hola,

Si necesitan obtener los datos de un plan de uso mediante código (en este caso Java) y solo les aparece para hacerlo con CLI (interfaz de línea de comandos de AWS), pueden utilizar el siguiente código, eso sí, deben pasarle el ID del plan de uso del cual desean obtener los datos.


A nivel del build.gradle va esto:

dependencies {

implementation 'com.amazonaws:aws-lambda-java-core:1.2.0'
/**
* AWS
*/
compile group: 'com.amazonaws', name: 'aws-java-sdk-dynamodb', version: '1.11.789'

compile group: 'software.amazon.awssdk', name: 'core', version: '2.0.0-preview-9'

compile group: 'software.amazon.awssdk', name: 'api-gateway', version: '2.0.0-preview-9'

compile group: 'software.amazon.awssdk', name: 'cognitoidp', version: '2.0.0-preview-9'

compile group: 'com.amazonaws', name: 'aws-java-sdk-ec2', version: '1.11.923'


compile group: 'com.amazonaws', name: 'aws-java-sdk-api-gateway', version: '1.11.923'
compile "org.slf4j:slf4j-simple:1.6.1"

}

A nivel de la clase propia del método, va esto:
import com.amazonaws.regions.Regions;
import com.amazonaws.services.apigateway.AmazonApiGateway;
import com.amazonaws.services.apigateway.AmazonApiGatewayClientBuilder;
import software.amazon.awssdk.core.AwsRequestOverrideConfig;
import software.amazon.awssdk.services.apigateway.APIGatewayClient;
import software.amazon.awssdk.services.apigateway.model.GetApiKeysRequest;
import software.amazon.awssdk.services.apigateway.model.GetApiKeysResponse;
import java.util.logging.Level;
import java.util.logging.Logger;

private static final java.util.logging.Logger log = Logger.getLogger("NombreClaseDelCodigo");

/**
* Metodo encargado de obtener los datos de un plan de uso en especifico mediante el id del plan de uso.
*
* @param strPlanID Define el Id del plan de uso a consultar.
*/
public void obtenerDatosDelPlanDeUso(String strPlanID) {

try {

/*
* instancia del cliente de Amazon
*/
AmazonApiGateway apiGateway = AmazonApiGatewayClientBuilder.standard().withRegion(Regions.US_EAST_1).build();

/*
* obtener los datos del plan de uso
*/
com.amazonaws.services.apigateway.model.GetUsagePlanRequest getUsagePlanRequest = new com.amazonaws.services.apigateway.model.GetUsagePlanRequest();
getUsagePlanRequest.setUsagePlanId(strPlanID);

/*
* obtener el plan de uso del usuario actual
*/
com.amazonaws.services.apigateway.model.GetUsagePlanResult getUsagePlanResult = apiGateway.getUsagePlan(getUsagePlanRequest);

log.log(Level.INFO, "id[{0}] Metodo obtenerDatosDelPlanDeUso(), el nombre del plan de uso es: {1}",
new Object[]{Thread.currentThread().getId(), getUsagePlanResult.getName()});

} catch (Exception exception) {
log.log(Level.WARNING, "id[{0}] Exception en el metodo obtenerDatosDelPlanDeUso(), " +
"la advertencia es: {1} ",
new Object[]{Thread.currentThread().getId(), exception});
}

}

0 comentarios :

Publicar un comentario