in src/main/java/com/microsoft/azure/functions/worker/handler/WorkerWarmupHandler.java [51:71]
private UUID warmupFunctionLoad(WorkerWarmupRequest workerWarmupRequest) throws Exception {
Map<String, BindingInfo> map = new HashMap<>();
BindingInfo httpTrigger = BindingInfo.newBuilder().setDirection(BindingInfo.Direction.in).setDataType(BindingInfo.DataType.undefined).setType("httpTrigger").build();
map.put("req", httpTrigger);
BindingInfo http = BindingInfo.newBuilder().setDirection(BindingInfo.Direction.out).setDataType(BindingInfo.DataType.undefined).setType("http").build();
map.put("$return", http);
RpcFunctionMetadata rpcFunctionMetadata = RpcFunctionMetadata.newBuilder()
.setName(WARM_UP_FUNCTION_NAME)
.setEntryPoint(WARM_UP_FUNCTION_ENTRY_POINT)
.setScriptFile(workerWarmupRequest.getWorkerDirectory() + WARM_UP_FUNCTION_SCRIPT_FILE)
.putAllBindings(map)
.build();
final UUID functionId = UUID.randomUUID();
FunctionLoadRequest functionLoadRequest = FunctionLoadRequest.newBuilder()
.setFunctionId(functionId.toString())
.setMetadata(rpcFunctionMetadata)
.build();
String loadRequestResult = new FunctionLoadRequestHandler(this.javaFunctionBroker, true).execute(functionLoadRequest, FunctionLoadResponse.newBuilder());
WorkerLogManager.getSystemLogger().info("finish warm up FunctionLoadRequestHandler with result: " + loadRequestResult);
return functionId;
}