Services
Los Services lo usamos para inyectarlos en los Controller y contienen funcionalidades comunes que podemos organizar dentro de el. Por ejemplo para los autocomplete, para validar si se puede eliminar o no.
PersonaServices.java
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.avbravo.practicaejb.services;
import com.avbravo.jmoordbutils.JsfUtil;
import com.avbravo.practicaejb.entity.Persona;
import com.avbravo.practicaejb.repository.PersonaRepository;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import javax.ejb.Stateless;
import javax.inject.Inject;
import org.bson.Document;
/**
*
* @authoravbravo
*/
@Stateless
public class PersonaServices {
@Inject
PersonaRepository repository;
List<Persona> personaList = new ArrayList<>();
public List<Persona> complete(String query) {
List<Persona> suggestions = new ArrayList<>();
try {
suggestions = repository.complete(query);
} catch (Exception e) {
JsfUtil.errorMessage("complete() " + e.getLocalizedMessage());
}
return suggestions;
}
public List<Persona> getPersonaList() {
try {
personaList = repository.findAll(new Document("persona", 1));
} catch (Exception e) {
JsfUtil.errorMessage("getPersonaList() " + e.getLocalizedMessage());
}
return personaList;
}
public void setPersonaList(List<Persona> personaList) {
this.personaList = personaList;
}
// <editor-fold defaultstate="collapsed" desc="isDeleted(Persona persona)">
public Boolean isDeleted(Persona persona) {
Boolean found = false;
try {
Document doc = new Document("persona.cedula", persona.getCedula());
// Integer count = ventasRepository.count(doc);
// if (count > 0) {
// return false;
// }
} catch (Exception e) {
JsfUtil.errorMessage("isDeleted() " + e.getLocalizedMessage());
}
return true;
} // </editor-fold>
// <editor-fold defaultstate="collapsed" desc="findById(String id)">
public Persona findById(String id) {
Persona persona = new Persona();
try {
persona.setCedula(id);
Optional<Persona> optional = repository.findById(persona);
if (optional.isPresent()) {
return optional.get();
}
} catch (Exception e) {
JsfUtil.errorMessage("findById() " + e.getLocalizedMessage());
}
return persona;
}
// </editor-fo
}
Last updated
Was this helpful?