package org.academiadecodigo.bootcamp.service.bootcamp;

import org.academiadecodigo.bootcamp.model.Bootcamp;
import org.academiadecodigo.bootcamp.model.CodeCadet;
import org.academiadecodigo.bootcamp.service.Service;

import java.util.Date;
import java.util.List;
import java.util.Set;

/**
 * MIT License
 * (c) 2017 Ricardo Constantino
 */

public interface BootcampService extends Service {
    void createBootcamp(Integer id, Bootcamp.BootcampLocation location, String start, String end);

    void addCodeCadet(Integer bootcampId, CodeCadet codeCadet);

    void addCodeCadets(Integer bootcampId, CodeCadet... codeCadets);

    List<Bootcamp> listBootcamps();

    Set<CodeCadet> listCodeCadets(Integer bootcampId);

    void setSelectedBootcamp(Integer bootcampId);

    Integer getSelectedBootcamp();
}
