/** * */ package net.sourceforge.seqware.pipeline.plugins; import java.io.IOException; import java.util.Arrays; import java.util.List; import java.util.Map; import joptsimple.OptionException; import net.sourceforge.seqware.common.metadata.Metadata; import net.sourceforge.seqware.common.module.ReturnValue; import net.sourceforge.seqware.pipeline.plugin.Plugin; import net.sourceforge.seqware.pipeline.plugin.PluginInterface; import org.openide.util.lookup.ServiceProvider; /** * <p> * HelloWorld class. * </p> * * @author boconnor ProviderFor(PluginInterface.class) * @version $Id: $Id */ @ServiceProvider(service = PluginInterface.class) public class HelloWorld extends Plugin { ReturnValue ret = new ReturnValue(); /** * <p> * Constructor for HelloWorld. * </p> */ public HelloWorld() { super(); parser.acceptsAll(Arrays.asList("help", "h", "?"), "Provides this help message."); ret.setExitStatus(ReturnValue.SUCCESS); } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#setConfig(java.util.Map) */ /** * {@inheritDoc} * * @param config */ @Override public void setConfig(Map<String, String> config) { println("Setting Config"); println("Config File Contents:"); for (String key : config.keySet()) { println(" " + key + " " + config.get(key)); } } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#setParams(java.util.List) */ /** * {@inheritDoc} * * @param params */ @Override public void setParams(List<String> params) { println("Setting Params: " + params); this.params = params.toArray(new String[params.size()]); } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#setMetadata(net.sourceforge.seqware.pipeline.metadata.Metadata) */ /** * {@inheritDoc} * * @param metadata */ @Override public void setMetadata(Metadata metadata) { println("Setting Metadata: " + metadata); this.metadata = metadata; } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#get_syntax() */ /** * {@inheritDoc} * * @return */ @Override public String get_syntax() { try { parser.printHelpOn(System.err); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return (""); } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#parse_parameters() */ /** * {@inheritDoc} * * @return */ @Override public ReturnValue parse_parameters() { try { options = parser.parse(params); } catch (OptionException e) { get_syntax(); ret.setExitStatus(ReturnValue.INVALIDARGUMENT); } return ret; } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#init() */ /** * {@inheritDoc} * * @return */ @Override public ReturnValue init() { return ret; } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#do_test() */ /** * {@inheritDoc} * * @return */ @Override public ReturnValue do_test() { // TODO Auto-generated method stub return ret; } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#do_run() */ /** * {@inheritDoc} * * @return */ @Override public ReturnValue do_run() { // TODO Auto-generated method stub println(" Hello"); return ret; } /* * (non-Javadoc) * * @see net.sourceforge.seqware.pipeline.plugin.PluginInterface#clean_up() */ /** * {@inheritDoc} * * @return */ @Override public ReturnValue clean_up() { // TODO Auto-generated method stub return ret; } /** * <p> * get_description. * </p> * * @return a {@link java.lang.String} object. */ @Override public String get_description() { return ("A very simple HelloWorld to show how to make plugins."); } }