package scrum.client.project; import scrum.client.common.TooltipBuilder; import scrum.client.estimation.ActivateRequirementEstimationVotingServiceCall; public class StartRequirementEstimationVotingAction extends GStartRequirementEstimationVotingAction { public StartRequirementEstimationVotingAction(scrum.client.project.Requirement requirement) { super(requirement); } @Override public String getLabel() { return "Start Planning Poker"; } @Override public String getTooltip() { TooltipBuilder tb = new TooltipBuilder("Open the Planning Poker table for this Story."); if (!requirement.getProject().isTeamMember(getCurrentUser())) tb.addRemark(TooltipBuilder.NOT_TEAM); return tb.getTooltip(); } @Override public boolean isPermitted() { if (!requirement.getProject().isTeamMember(getCurrentUser())) return false; return true; } @Override public boolean isExecutable() { if (requirement.isWorkEstimationVotingActive()) return false; if (requirement.isClosed()) return false; if (requirement.isInCurrentSprint()) return false; return true; } @Override protected void onExecute() { new ActivateRequirementEstimationVotingServiceCall(requirement.getId()).execute(); } }