Skip to content
Snippets Groups Projects

AWS Lambda

1 file
+ 1
16
Compare changes
  • Side-by-side
  • Inline
package gov.usgs.earthquake.nshmp.www;
package gov.usgs.earthquake.nshmp.www;
import java.nio.file.Path;
import java.nio.file.Path;
import java.util.Optional;
import org.crac.Context;
import org.crac.Context;
import org.crac.Resource;
import org.crac.Resource;
@@ -13,10 +12,8 @@ import software.amazon.awssdk.services.ssm.model.SsmException;
@@ -13,10 +12,8 @@ import software.amazon.awssdk.services.ssm.model.SsmException;
import com.amazonaws.serverless.proxy.internal.testutils.MockLambdaContext;
import com.amazonaws.serverless.proxy.internal.testutils.MockLambdaContext;
import com.amazonaws.serverless.proxy.model.AwsProxyRequest;
import com.amazonaws.serverless.proxy.model.AwsProxyRequest;
import com.amazonaws.serverless.proxy.model.MultiValuedTreeMap;
import gov.usgs.earthquake.nshmp.gmm.Gmm;
import gov.usgs.earthquake.nshmp.gmm.Gmm;
import gov.usgs.earthquake.nshmp.gmm.Imt;
import io.micronaut.context.annotation.Value;
import io.micronaut.context.annotation.Value;
import io.micronaut.crac.OrderedResource;
import io.micronaut.crac.OrderedResource;
@@ -41,31 +38,19 @@ public class PrimingResource implements OrderedResource {
@@ -41,31 +38,19 @@ public class PrimingResource implements OrderedResource {
handler.handleRequest(
handler.handleRequest(
getAwsProxyRequest("/hazard"),
getAwsProxyRequest("/hazard"),
new MockLambdaContext());
new MockLambdaContext());
Optional<String> location = Optional.ofNullable(System.getenv("TEST_LOCATION"));
if (location.isPresent()) {
handler.handleRequest(
getAwsProxyRequest(String.format("/hazard/%s/760", location.get())),
new MockLambdaContext());
}
}
}
}
}
@Override
@Override
public void afterRestore(Context<? extends Resource> context) throws Exception {
public void afterRestore(Context<? extends Resource> context) throws Exception {
// Reset executors on restore as Shutdown event does not fire on AWS lambda
// Reset executors on restore as Shutdown event does not fire on AWS lambda
// ServletUtil.resetExecutors();
ServletUtil.resetExecutors();
}
}
private static AwsProxyRequest getAwsProxyRequest(String path) {
private static AwsProxyRequest getAwsProxyRequest(String path) {
final AwsProxyRequest awsProxyRequest = new AwsProxyRequest();
final AwsProxyRequest awsProxyRequest = new AwsProxyRequest();
awsProxyRequest.setHttpMethod("GET");
awsProxyRequest.setHttpMethod("GET");
awsProxyRequest.setPath(path);
awsProxyRequest.setPath(path);
var parameters = new MultiValuedTreeMap<String, String>();
parameters.add("imt", Imt.PGA.toString());
awsProxyRequest.setMultiValueQueryStringParameters(parameters);
return awsProxyRequest;
return awsProxyRequest;
}
}
Loading