Search in sources :

Example 41 with Func

use of com.qlangtech.tis.manage.spring.aop.Func in project tis by qlangtech.

the class DataxAction method doGenerateDataxCfgs.

/**
 * 重新生成datax配置文件
 *
 * @param context
 * @throws Exception
 */
@Func(value = PermissionConstant.DATAX_MANAGE)
public void doGenerateDataxCfgs(Context context) throws Exception {
    String dataxName = this.getString(PARAM_KEY_DATAX_NAME);
    boolean getExist = this.getBoolean("getExist");
    DataxProcessor dataxProcessor = IAppSource.load(this, dataxName);
    DataXCfgGenerator cfgGenerator = new DataXCfgGenerator(this, dataxName, dataxProcessor);
    File dataxCfgDir = dataxProcessor.getDataxCfgDir(this);
    if (!getExist) {
        FileUtils.forceMkdir(dataxCfgDir);
        // 先清空文件
        FileUtils.cleanDirectory(dataxCfgDir);
    }
    DataXCfgGenerator.GenerateCfgs generateCfgs = null;
    this.setBizResult(context, getExist ? cfgGenerator.getExistCfg(dataxCfgDir) : (generateCfgs = cfgGenerator.startGenerateCfg(dataxCfgDir)));
    if (!getExist) {
        Objects.requireNonNull(generateCfgs, "generateCfgs can not be null");
        generateCfgs.write2GenFile(dataxCfgDir);
    // JSONObject o = new JSONObject();
    // o.put("groupChildTasks", generateCfgs.getGroupedChildTask());
    // o.put("genTime", generateCfgs.getGenTime());
    // FileUtils.write(new File(dataxCfgDir, DataXCfgGenerator.FILE_GEN)
    // , JsonUtil.toString(o), TisUTF8.get(), false);
    }
}
Also used : File(java.io.File) Func(com.qlangtech.tis.manage.spring.aop.Func)

Example 42 with Func

use of com.qlangtech.tis.manage.spring.aop.Func in project tis by qlangtech.

the class DataxAction method doGetReaderPluginInfo.

/**
 * 取得读插件配置
 *
 * @param context
 * @throws Exception
 */
@Func(value = PermissionConstant.DATAX_MANAGE, sideEffect = false)
public void doGetReaderPluginInfo(Context context) throws Exception {
    String dataxName = this.getString(PARAM_KEY_DATAX_NAME);
    JSONObject readerDesc = this.parseJsonPost();
    if (StringUtils.isEmpty(dataxName)) {
        throw new IllegalStateException("param " + PARAM_KEY_DATAX_NAME + " can not be null");
    }
    final String requestDescId = readerDesc.getString("impl");
    KeyedPluginStore<DataxReader> readerStore = DataxReader.getPluginStore(this, dataxName);
    DataxReader reader = readerStore.getPlugin();
    Map<String, Object> pluginInfo = Maps.newHashMap();
    if (reader != null && StringUtils.equals(reader.getDescriptor().getId(), requestDescId)) {
        pluginInfo.put("item", (new DescribableJSON(reader)).getItemJson());
    }
    pluginInfo.put("desc", new DescriptorsJSON(TIS.get().getDescriptor(requestDescId)).getDescriptorsJSON());
    this.setBizResult(context, pluginInfo);
}
Also used : JSONObject(com.alibaba.fastjson.JSONObject) JSONObject(com.alibaba.fastjson.JSONObject) Func(com.qlangtech.tis.manage.spring.aop.Func)

Example 43 with Func

use of com.qlangtech.tis.manage.spring.aop.Func in project tis by qlangtech.

the class DataxAction method doRemoveDataxWorker.

/**
 * 删除dataX实例
 *
 * @param context
 */
@Func(value = PermissionConstant.DATAX_MANAGE)
public void doRemoveDataxWorker(Context context) {
    DataXJobWorker jobWorker = DataXJobWorker.getJobWorker(this.getK8SJobWorkerTargetName());
    // DataXJobWorker dataxJobWorker = dataxJobWorkerStore.getPlugin();
    if (!jobWorker.inService()) {
        throw new IllegalStateException("dataxJobWorker is not in serivce ,can not remove");
    }
    jobWorker.remove();
    this.addActionMessage(context, "DataX Worker 已经被删除");
}
Also used : DataXJobWorker(com.qlangtech.tis.datax.job.DataXJobWorker) Func(com.qlangtech.tis.manage.spring.aop.Func)

Example 44 with Func

use of com.qlangtech.tis.manage.spring.aop.Func in project tis by qlangtech.

the class DataxAction method doWorkerDesc.

@Func(value = PermissionConstant.DATAX_MANAGE, sideEffect = false)
public void doWorkerDesc(Context context) {
    final TargetResName targetName = getK8SJobWorkerTargetName();
    DataXJobWorker jobWorker = DataXJobWorker.getJobWorker(targetName);
    if (jobWorker != null && jobWorker.inService()) {
        throw new IllegalStateException("dataX worker is on duty");
    }
    this.setBizResult(context, new PluginDescMeta(DataXJobWorker.getDesc(targetName)));
}
Also used : DataXJobWorker(com.qlangtech.tis.datax.job.DataXJobWorker) Func(com.qlangtech.tis.manage.spring.aop.Func)

Example 45 with Func

use of com.qlangtech.tis.manage.spring.aop.Func in project tis by qlangtech.

the class FullbuildWorkflowAction method doTaskComplete.

/**
 * 执行阶段结束
 * do_task_complete
 * @param context
 */
@Func(value = PermissionConstant.DATAFLOW_MANAGE, sideEffect = false)
public void doTaskComplete(Context context) {
    Integer taskid = this.getInt(IParamContext.KEY_TASK_ID);
    // 执行结果
    ExecResult execResult = ExecResult.parse(this.getInt(IParamContext.KEY_EXEC_RESULT));
    String[] asynJobsName = this.getStringArray(IParamContext.KEY_ASYN_JOB_NAME);
    updateWfHistory(taskid, execResult, asynJobsName, 0);
}
Also used : ExecResult(com.qlangtech.tis.assemble.ExecResult) Func(com.qlangtech.tis.manage.spring.aop.Func)

Aggregations

Func (com.qlangtech.tis.manage.spring.aop.Func)64 JSONObject (com.alibaba.fastjson.JSONObject)12 DataXJobWorker (com.qlangtech.tis.datax.job.DataXJobWorker)6 File (java.io.File)6 Date (java.util.Date)6 Context (com.alibaba.citrus.turbine.Context)5 Application (com.qlangtech.tis.manage.biz.dal.pojo.Application)5 JSONObject (org.json.JSONObject)5 Validator (com.qlangtech.tis.plugin.annotation.Validator)4 IControlMsgHandler (com.qlangtech.tis.runtime.module.misc.IControlMsgHandler)4 IFieldErrorHandler (com.qlangtech.tis.runtime.module.misc.IFieldErrorHandler)4 DelegateControl4JsonPostMsgHandler (com.qlangtech.tis.runtime.module.misc.impl.DelegateControl4JsonPostMsgHandler)4 WorkFlow (com.qlangtech.tis.workflow.pojo.WorkFlow)4 JSONArray (org.json.JSONArray)4 ExecResult (com.qlangtech.tis.assemble.ExecResult)3 FullbuildPhase (com.qlangtech.tis.assemble.FullbuildPhase)3 IndexStreamCodeGenerator (com.qlangtech.tis.compiler.streamcode.IndexStreamCodeGenerator)3 DescriptorExtensionList (com.qlangtech.tis.extension.DescriptorExtensionList)3 IOException (java.io.IOException)3 Matcher (java.util.regex.Matcher)3