package hudson.plugins.favorite;
import hudson.Plugin;
import hudson.model.Hudson;
import hudson.model.User;
import hudson.plugins.favorite.user.FavoriteUserProperty;
import org.acegisecurity.Authentication;
import org.kohsuke.stapler.QueryParameter;
import org.kohsuke.stapler.StaplerRequest;
import org.kohsuke.stapler.StaplerResponse;
import java.io.IOException;
public class FavoritePlugin extends Plugin {
public void doToggleFavorite(StaplerRequest req, StaplerResponse resp, @QueryParameter String job) {
Authentication authentication = Hudson.getAuthentication();
String name = authentication.getName();
System.out.println("NAME: " + name);
if (authentication.isAuthenticated()) {
User user = Hudson.getInstance().getUser(name);
FavoriteUserProperty fup = user.getProperty(FavoriteUserProperty.class);
try {
if (fup == null) {
user.addProperty(new FavoriteUserProperty());
}
fup.toggleFavorite(job);
user.save();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}