/*
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
|
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
|
*/
|
package com.megatim.fdxconsultation.dao.impl.dataproduction.metadata;
|
|
import com.megatim.fdxcommons.model.dataproduction.metadata.ProductionMetaData;
|
import com.megatim.fdxcommons.model.dataproduction.metadata.ProductionMetaDataId;
|
import com.megatim.fdxconsultation.dao.ifaces.dataproduction.metadata.ProductionMetaDataDAO;
|
import java.util.List;
|
import java.util.Optional;
|
import javax.ejb.Stateless;
|
import javax.persistence.EntityManager;
|
import javax.persistence.PersistenceContext;
|
import javax.persistence.Query;
|
|
/**
|
*
|
* @author ASUS
|
*/
|
@Stateless
|
public class ProductionMetaDataDAOImpl implements ProductionMetaDataDAO {
|
|
@PersistenceContext(unitName = "fdxConsultationPersistenceUnit")
|
EntityManager em;
|
|
@Override
|
public Class<ProductionMetaData> getManagedEntityClass() {
|
return ProductionMetaData.class;
|
}
|
|
@Override
|
public EntityManager getEntityManager() {
|
return em;
|
}
|
|
@Override
|
public ProductionMetaData getById(Long id) {
|
Query query = em.createQuery("SELECT p FROM ProductionMetaData p WHERE p.productionId = :id");
|
query.setParameter("id", id);
|
|
Optional<ProductionMetaData> optMetaData = query.getResultList().stream().findFirst();
|
return optMetaData.isPresent() ? optMetaData.get() : null;
|
}
|
|
@Override
|
public void deleteById(Long dataProductionId) {
|
Query query = em.createQuery("DELETE FROM ProductionMetaData p WHERE p.productionId = :dataProductionId");
|
query.setParameter("dataProductionId", dataProductionId);
|
query.executeUpdate();
|
}
|
}
|