extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/plugins/PluginParameters.java

Code
Comments
Other
Rev Date Author Line
2386 25 Apr 14 nicklas 1 package net.sf.basedb.reggie.plugins;
2386 25 Apr 14 nicklas 2
2386 25 Apr 14 nicklas 3 import java.util.HashMap;
2386 25 Apr 14 nicklas 4 import java.util.List;
2386 25 Apr 14 nicklas 5 import java.util.Map;
2386 25 Apr 14 nicklas 6
2386 25 Apr 14 nicklas 7 import net.sf.basedb.core.Job;
2386 25 Apr 14 nicklas 8 import net.sf.basedb.core.ParameterType;
2386 25 Apr 14 nicklas 9 import net.sf.basedb.core.PluginConfiguration;
2386 25 Apr 14 nicklas 10 import net.sf.basedb.core.PluginDefinition;
2386 25 Apr 14 nicklas 11 import net.sf.basedb.core.plugin.ParameterValues;
2386 25 Apr 14 nicklas 12
2386 25 Apr 14 nicklas 13 /**
2386 25 Apr 14 nicklas 14   A simple implementation for sending parameters
2386 25 Apr 14 nicklas 15   to plug-ins. Use the setter method to add values.
2386 25 Apr 14 nicklas 16   A parameter type is not needed.
2386 25 Apr 14 nicklas 17   @author nicklas
2386 25 Apr 14 nicklas 18   @since 2.16
2386 25 Apr 14 nicklas 19 */
2386 25 Apr 14 nicklas 20 public class PluginParameters 
2386 25 Apr 14 nicklas 21   implements ParameterValues
2386 25 Apr 14 nicklas 22 {
2386 25 Apr 14 nicklas 23
2386 25 Apr 14 nicklas 24   private final Map<String, Object> parameters;
2386 25 Apr 14 nicklas 25   
2386 25 Apr 14 nicklas 26   public PluginParameters()
2386 25 Apr 14 nicklas 27   {
2386 25 Apr 14 nicklas 28     this.parameters = new HashMap<String, Object>();
2386 25 Apr 14 nicklas 29   }
2386 25 Apr 14 nicklas 30   
2386 25 Apr 14 nicklas 31   @Override
2386 25 Apr 14 nicklas 32   public PluginDefinition getPluginDefinition() 
2386 25 Apr 14 nicklas 33   {
2386 25 Apr 14 nicklas 34     return null;
2386 25 Apr 14 nicklas 35   }
2386 25 Apr 14 nicklas 36
2386 25 Apr 14 nicklas 37   @Override
2386 25 Apr 14 nicklas 38   public Job getJob() 
2386 25 Apr 14 nicklas 39   {
2386 25 Apr 14 nicklas 40     return null;
2386 25 Apr 14 nicklas 41   }
2386 25 Apr 14 nicklas 42
2386 25 Apr 14 nicklas 43   @Override
2386 25 Apr 14 nicklas 44   public PluginConfiguration getPluginConfiguration() 
2386 25 Apr 14 nicklas 45   {
2386 25 Apr 14 nicklas 46     return null;
2386 25 Apr 14 nicklas 47   }
2386 25 Apr 14 nicklas 48
2386 25 Apr 14 nicklas 49   @Override
2386 25 Apr 14 nicklas 50   public int getId() 
2386 25 Apr 14 nicklas 51   {
2386 25 Apr 14 nicklas 52     return 0;
2386 25 Apr 14 nicklas 53   }
2386 25 Apr 14 nicklas 54
5363 16 Apr 19 nicklas 55   @SuppressWarnings("unchecked")
2386 25 Apr 14 nicklas 56   @Override
5363 16 Apr 19 nicklas 57   public <T> T getValue(String name)
2386 25 Apr 14 nicklas 58   {
5363 16 Apr 19 nicklas 59     return (T)parameters.get(name);
2386 25 Apr 14 nicklas 60   }
2386 25 Apr 14 nicklas 61
5363 16 Apr 19 nicklas 62   @SuppressWarnings("unchecked")
2386 25 Apr 14 nicklas 63   @Override
5363 16 Apr 19 nicklas 64   public <T> List<T> getValues(String name)
2386 25 Apr 14 nicklas 65   {
5363 16 Apr 19 nicklas 66     return (List<T>)parameters.get(name);
2386 25 Apr 14 nicklas 67   }
2386 25 Apr 14 nicklas 68
2386 25 Apr 14 nicklas 69   @Override
2386 25 Apr 14 nicklas 70   public <T> void setValue(String name, ParameterType<T> t, T value)
2386 25 Apr 14 nicklas 71   {
2386 25 Apr 14 nicklas 72     parameters.put(name, value);
2386 25 Apr 14 nicklas 73   }
2386 25 Apr 14 nicklas 74
2386 25 Apr 14 nicklas 75   @Override
2386 25 Apr 14 nicklas 76   public <T> void setValues(String name, ParameterType<T> t, List<T> list)
2386 25 Apr 14 nicklas 77   {
2386 25 Apr 14 nicklas 78     parameters.put(name, list);
2386 25 Apr 14 nicklas 79   }
2386 25 Apr 14 nicklas 80
2386 25 Apr 14 nicklas 81 }