You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

51 lines
1.8 KiB

/*
* Copyright (C), 2018-2021
* Project: starter
* FileName: HttpOutputActionHandler
* Author: xx
* Date: 2021/4/6 15:43
*/
package com.fr.plugin.ajchk.web;
import com.fanruan.api.i18n.I18nKit;
import com.fanruan.api.log.LogKit;
import com.fr.plugin.ajchk.action.*;
import com.fr.plugin.context.PluginContexts;
import com.fr.schedule.feature.output.OutputActionHandler;
import java.util.LinkedHashMap;
import java.util.Map;
/**
* <Function Description><br>
* <HttpOutputActionHandler>
*
* @author xx
* @since 1.0.0
*/
public class HttpOutputActionHandler extends OutputActionHandler<OutputHttp> {
public static final Map<String, AbstractDataOutput> httpTypeMap = new LinkedHashMap<String, AbstractDataOutput>() {
private static final long serialVersionUID = -5593329532670407219L;
{
put(I18nKit.getLocText("Plugin-httpaction_ClassName_Get"), new GetOutput());
put(I18nKit.getLocText("Plugin-httpaction_ClassName_Post"), new PostOutput());
put(I18nKit.getLocText("Plugin-httpaction_ClassName_Post_Json"), new PostJsonOutput());
put(I18nKit.getLocText("Plugin-httpaction_ClassName_Soap"), new SoapOutput());
}
};
public HttpOutputActionHandler() {
}
@Override
public void doAction(OutputHttp outputHttp, Map<String, Object> params) throws Exception {
if (!PluginContexts.currentContext().isAvailable()) {
return;
}
//todo 判断
LogKit.info("ajchk-HttpOutputActionHandler-doAction-isPreviewAttach:{}", outputHttp.isPreviewAttach());
AbstractDataOutput outputActionHandler = httpTypeMap.get(outputHttp.getHttpType());
outputActionHandler.doAction(outputHttp, params);
}
}