package hudson.plugins.jswidgets;
import hudson.Extension;
import hudson.model.AbstractProject;
import hudson.model.Action;
import hudson.model.TransientProjectActionFactory;
import java.util.List;
import java.util.ArrayList;
import java.util.Collection;
import java.util.logging.Logger;
/**
* Extends project actions for all jobs.
*
* @author mfriedenhagen
*/
@Extension
public class JsProjectActionFactory extends TransientProjectActionFactory {
/** Our logger. */
private static final Logger LOG = Logger.getLogger(JsProjectActionFactory.class.getName());
/**
* {@inheritDoc}
*/
@Override
public Collection<? extends Action> createFor(@SuppressWarnings("unchecked") AbstractProject target) {
LOG.fine(this + " adds JsJobAction for " + target);
final List<JsJobAction> jsJobActions = target.getActions(JsJobAction.class);
LOG.fine(target + " already has " + jsJobActions);
final JsJobAction newAction = new JsJobAction(target);
final ArrayList<Action> actions = new ArrayList<Action>();
actions.add(newAction);
return actions;
}
}