// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/model/Inscricao.java
// public class Inscricao {
// 
// 	private Long id;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String nome;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String email;
// 
// 	@Min(18)
// 	@NotNull
// 	private Integer idade;
// 	
// 	private Date dataInscricao;
// 
// 	private Situacao situacao;
// 
// 	public Inscricao() {
// 		setSituacao(Situacao.PENDENTE);
// 	}
// 
// 	public Long getId() {
// 		return id;
// 	}
// 
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public String getNome() {
// 		return nome;
// 	}
// 
// 	public void setNome(String nome) {
// 		this.nome = nome;
// 	}
// 
// 	public String getEmail() {
// 		return email;
// 	}
// 
// 	public void setEmail(String email) {
// 		this.email = email;
// 	}
// 
// 	public Integer getIdade() {
// 		return idade;
// 	}
// 
// 	public void setIdade(Integer idade) {
// 		this.idade = idade;
// 	}
// 
// 	public Situacao getSituacao() {
// 		return situacao;
// 	}
// 
// 	public void setSituacao(Situacao situacao) {
// 		this.situacao = situacao;
// 	}
// 
// 	public Date getDataInscricao() {
// 		return dataInscricao;
// 	}
// 
// 	public void setDataInscricao(Date dataInscricao) {
// 		this.dataInscricao = dataInscricao;
// 	}
// }
// 
// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/model/InscricaoData.java
// public class InscricaoData {
// 
// 	public static List<Inscricao> inscricoes = new LinkedList<>();
// 
// 	public static Inscricao buscarInscricaoPorId(Long id) {
// 		if (inscricoes != null && id != null) {
// 			for (Inscricao inscricao : inscricoes) {
// 				if (id.equals(inscricao.getId())){
// 					return inscricao;
// 				}
// 			}
// 		}
// 		
// 		return null;
// 	}
// 	
// }


import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.validation.Valid;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.validation.ObjectError;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import br.com.gamas.treinamento.model.Inscricao;
import br.com.gamas.treinamento.model.InscricaoData;

package br.com.gamas.treinamento.controller;





@Controller
@RequestMapping("/formulario")
public class FormularioController {

	@RequestMapping(value = "/inscricao", method = RequestMethod.GET)
	public String root(@ModelAttribute Inscricao inscricao) {
		return "pages/formulario";
	}

	@RequestMapping(value = "/visualizar/{id}", method = RequestMethod.GET)
	public ModelAndView view(@PathVariable("id") Long id) {
		Inscricao inscricao = InscricaoData.buscarInscricaoPorId(id);

// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/model/Inscricao.java
// public class Inscricao {
// 
// 	private Long id;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String nome;
// 
// 	@NotNull
// 	@Size(max=30)
// 	private String email;
// 
// 	@Min(18)
// 	@NotNull
// 	private Integer idade;
// 	
// 	private Date dataInscricao;
// 
// 	private Situacao situacao;
// 
// 	public Inscricao() {
// 		setSituacao(Situacao.PENDENTE);
// 	}
// 
// 	public Long getId() {
// 		return id;
// 	}
// 
// 	public void setId(Long id) {
// 		this.id = id;
// 	}
// 
// 	public String getNome() {
// 		return nome;
// 	}
// 
// 	public void setNome(String nome) {
// 		this.nome = nome;
// 	}
// 
// 	public String getEmail() {
// 		return email;
// 	}
// 
// 	public void setEmail(String email) {
// 		this.email = email;
// 	}
// 
// 	public Integer getIdade() {
// 		return idade;
// 	}
// 
// 	public void setIdade(Integer idade) {
// 		this.idade = idade;
// 	}
// 
// 	public Situacao getSituacao() {
// 		return situacao;
// 	}
// 
// 	public void setSituacao(Situacao situacao) {
// 		this.situacao = situacao;
// 	}
// 
// 	public Date getDataInscricao() {
// 		return dataInscricao;
// 	}
// 
// 	public void setDataInscricao(Date dataInscricao) {
// 		this.dataInscricao = dataInscricao;
// 	}
// }
// 
// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/model/InscricaoData.java
// public class InscricaoData {
// 
// 	public static List<Inscricao> inscricoes = new LinkedList<>();
// 
// 	public static Inscricao buscarInscricaoPorId(Long id) {
// 		if (inscricoes != null && id != null) {
// 			for (Inscricao inscricao : inscricoes) {
// 				if (id.equals(inscricao.getId())){
// 					return inscricao;
// 				}
// 			}
// 		}
// 		
// 		return null;
// 	}
// 	
// }


// Path: treinamento_1/src/main/java/br/com/gamas/treinamento/controller/FormularioController.java
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import javax.validation.Valid;
import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.validation.ObjectError;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import br.com.gamas.treinamento.model.Inscricao;
import br.com.gamas.treinamento.model.InscricaoData;

package br.com.gamas.treinamento.controller;





@Controller
@RequestMapping("/formulario")
public class FormularioController {

	@RequestMapping(value = "/inscricao", method = RequestMethod.GET)
	public String root(@ModelAttribute Inscricao inscricao) {
		return "pages/formulario";
	}

	@RequestMapping(value = "/visualizar/{id}", method = RequestMethod.GET)
	public ModelAndView view(@PathVariable("id") Long id) {
		Inscricao inscricao = InscricaoData.buscarInscricaoPorId(id);

		return new ModelAndView("pages/visualizar").addObject("inscricao", inscricao);
