All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alogic.xscript.plugins.AsYaml Maven / Gradle / Ivy

There is a newer version: 1.6.17
Show newest version
package com.alogic.xscript.plugins;

import com.alogic.xscript.ExecuteWatcher;
import com.alogic.xscript.Logiclet;
import com.alogic.xscript.LogicletContext;
import com.anysoft.util.Properties;
import com.anysoft.util.PropertiesConstants;
import org.apache.commons.lang3.StringUtils;
import com.alogic.xscript.AbstractLogiclet;
import org.yaml.snakeyaml.Yaml;
import java.util.Map;

/**
 * 将当前文档内容转换为yaml,并存入到变量
 *
 * @since 1.6.12.27 [20190403 duanyy] 
*/ public class AsYaml extends AbstractLogiclet{ protected String id; protected static ThreadLocal yamlLocal = new ThreadLocal(){ protected Yaml initialValue() { return new Yaml(); }; }; public AsYaml(String tag, Logiclet p) { super(tag, p); } @Override public void configure(Properties p){ super.configure(p); id = PropertiesConstants.getString(p,"id","",true); } @Override protected void onExecute(Map root, Map current, LogicletContext ctx, ExecuteWatcher watcher) { if (StringUtils.isNotEmpty(id)){ String content = yamlLocal.get().dump(current); if (StringUtils.isNotEmpty(content)){ ctx.SetValue(id, content); } } } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy