Package br.com.mystudies.service

Source Code of br.com.mystudies.service.SprintServiceBean

package br.com.mystudies.service;

import java.util.ArrayList;
import java.util.List;

import javax.ejb.EJB;
import javax.ejb.Remote;
import javax.ejb.Stateless;

import br.com.mystudies.domain.entity.Sprint;
import br.com.mystudies.domain.entity.Story;
import br.com.mystudies.domain.enun.SprintStatus;
import br.com.mystudies.domain.enun.StoryStatus;
import br.com.mystudies.service.persistence.SprintDao;

@Stateless
@Remote(SprintService.class)
public class SprintServiceBean implements SprintService{


  @EJB
  private SprintDao sprintDao;


  @Override
  public boolean containsSprintInRun() {

    if( getCurrentSprint() != null){
      return true;
    }

    return false;
  }



  @Override
  public Sprint create(Sprint sprint) {

    if(containsSprintInRun())
      throw new IllegalStateException("Contains sprint in running");

    // FIXME: validate parameters
    sprint.setEstimatedPoints(new Long(0));

    return sprintDao.persist(sprint);
  }




  @Override
  public Sprint getCurrentSprint() {
    return sprintDao.findSprintByStatus(SprintStatus.RUNNING);
  }


  @Override
  public Sprint addStoryInSprint(Story story) {

    // FIXME: validation of parameters story...

    Sprint sprint = getCurrentSprint();

    if(sprint == null)
      throw new IllegalStateException("Haven't sprint in running");

    sprint.getStories().add(story);
    sprint.setEstimatedPoints(sprint.getEstimatedPoints() + story.getPoints());

    story.setSprint(sprint);
    story.setStatus(StoryStatus.TODO);


    return sprintDao.update(sprint);
  }



  @Override
  public List<Sprint> getAllSprints() {
    return sprintDao.listAll();
  }


}
TOP

Related Classes of br.com.mystudies.service.SprintServiceBean

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.