// Path: cassandra-spring/cassandra-spring-rest/src/main/java/org/javabahia/cassandra/spring/cv/model/Resume.java
// @Entity
// public class Resume  implements Serializable{
// 
// 	private static final long serialVersionUID = 1L;
// 
// 	@Id
// 	private String nickName;
// 	@Column
// 	private String name;
// 	@Column
// 	private String country;
// 	@Column
// 	private String bio;
// 
// 	public String getNickName() {
// 		return nickName;
// 	}
// 	public void setNickName(String nickName) {
// 		this.nickName = nickName;
// 	}
// 	public String getName() {
// 		return name;
// 	}
// 	public void setName(String name) {
// 		this.name = name;
// 	}
// 	public String getCountry() {
// 		return country;
// 	}
// 	public void setCountry(String country) {
// 		this.country = country;
// 	}
// 	public String getBio() {
// 		return bio;
// 	}
// 	public void setBio(String bio) {
// 		this.bio = bio;
// 	}
// 	
// 	@Override
// 	public String toString() {
// 
// 		return ToStringBuilder.reflectionToString(this,
// 				ToStringStyle.SHORT_PREFIX_STYLE);
// 	}
// 	
// 	@Override
// 	public boolean equals(Object obj) {
// 		if (obj instanceof Resume) {
// 			Resume other = Resume.class.cast(obj);
// 			return new EqualsBuilder().append(other.nickName, nickName)
// 					.isEquals();
// 		}
// 		return false;
// 	}
// 
// 	@Override
// 	public int hashCode() {
// 
// 		return new HashCodeBuilder().append(nickName).toHashCode();
// 	}
// }
// 
// Path: cassandra-spring/cassandra-spring-rest/src/main/java/org/javabahia/cassandra/spring/cv/service/CurriculoService.java
// @Service
// @Scope("prototype")
// public class CurriculoService {
// 	
// 	@Autowired
// 	private ResumeRepository repository;
// 	
// 	@Autowired
// 	private ResumeSearch search;
// 	
// 	public void save(Resume cv){
// 		repository.save(cv);
// 		try {
// 			search.index(cv);
// 		} catch (IOException e) {
// 			e.printStackTrace();
// 		}
// 	}
// 	
// 	public List<Resume> procurarCV(String texto) {
// 		try {
// 			List<String> ids = search.findByBio(texto);
// 			return (List<Resume>) repository.findAll(ids);
// 		} catch (ParseException | IOException e) {
// 			e.printStackTrace();
// 		}
// 		return Collections.emptyList();
// 	}
// 
// }


import java.util.List;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
import org.javabahia.cassandra.spring.cv.model.Resume;
import org.javabahia.cassandra.spring.cv.service.CurriculoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
package org.javabahia.cassandra.spring.cv.rest;




@Component
@Path("/resume")
public class ResumeResource {
	
	@Autowired
	private CurriculoService service;
	
	@GET
	public Response printMessage() {
		return Response.status(200).entity("It's working").build();
	}
	
	@GET
	@Path("/{conteudo}")
	@Produces("application/json;charset=utf-8")
	public List<Resume> getCV(@PathParam("conteudo")String text) {
		return service.procurarCV(text); 
 
	}
	
	@POST
	@Consumes("application/json;charset=utf-8")
	public Response insertResume(Resume curriculo) {
		service.save(curriculo);
// Path: cassandra-spring/cassandra-spring-rest/src/main/java/org/javabahia/cassandra/spring/cv/model/Resume.java
// @Entity
// public class Resume  implements Serializable{
// 
// 	private static final long serialVersionUID = 1L;
// 
// 	@Id
// 	private String nickName;
// 	@Column
// 	private String name;
// 	@Column
// 	private String country;
// 	@Column
// 	private String bio;
// 
// 	public String getNickName() {
// 		return nickName;
// 	}
// 	public void setNickName(String nickName) {
// 		this.nickName = nickName;
// 	}
// 	public String getName() {
// 		return name;
// 	}
// 	public void setName(String name) {
// 		this.name = name;
// 	}
// 	public String getCountry() {
// 		return country;
// 	}
// 	public void setCountry(String country) {
// 		this.country = country;
// 	}
// 	public String getBio() {
// 		return bio;
// 	}
// 	public void setBio(String bio) {
// 		this.bio = bio;
// 	}
// 	
// 	@Override
// 	public String toString() {
// 
// 		return ToStringBuilder.reflectionToString(this,
// 				ToStringStyle.SHORT_PREFIX_STYLE);
// 	}
// 	
// 	@Override
// 	public boolean equals(Object obj) {
// 		if (obj instanceof Resume) {
// 			Resume other = Resume.class.cast(obj);
// 			return new EqualsBuilder().append(other.nickName, nickName)
// 					.isEquals();
// 		}
// 		return false;
// 	}
// 
// 	@Override
// 	public int hashCode() {
// 
// 		return new HashCodeBuilder().append(nickName).toHashCode();
// 	}
// }
// 
// Path: cassandra-spring/cassandra-spring-rest/src/main/java/org/javabahia/cassandra/spring/cv/service/CurriculoService.java
// @Service
// @Scope("prototype")
// public class CurriculoService {
// 	
// 	@Autowired
// 	private ResumeRepository repository;
// 	
// 	@Autowired
// 	private ResumeSearch search;
// 	
// 	public void save(Resume cv){
// 		repository.save(cv);
// 		try {
// 			search.index(cv);
// 		} catch (IOException e) {
// 			e.printStackTrace();
// 		}
// 	}
// 	
// 	public List<Resume> procurarCV(String texto) {
// 		try {
// 			List<String> ids = search.findByBio(texto);
// 			return (List<Resume>) repository.findAll(ids);
// 		} catch (ParseException | IOException e) {
// 			e.printStackTrace();
// 		}
// 		return Collections.emptyList();
// 	}
// 
// }


// Path: cassandra-spring/cassandra-spring-rest/src/main/java/org/javabahia/cassandra/spring/cv/rest/ResumeResource.java
import java.util.List;
import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Response;
import org.javabahia.cassandra.spring.cv.model.Resume;
import org.javabahia.cassandra.spring.cv.service.CurriculoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

package org.javabahia.cassandra.spring.cv.rest;




@Component
@Path("/resume")
public class ResumeResource {
	
	@Autowired
	private CurriculoService service;
	
	@GET
	public Response printMessage() {
		return Response.status(200).entity("It's working").build();
	}
	
	@GET
	@Path("/{conteudo}")
	@Produces("application/json;charset=utf-8")
	public List<Resume> getCV(@PathParam("conteudo")String text) {
		return service.procurarCV(text); 
 
	}
	
	@POST
	@Consumes("application/json;charset=utf-8")
	public Response insertResume(Resume curriculo) {
		service.save(curriculo);
		return Response.status(201).entity("Sucess").build();