Salome HOME
69ee589ed0c580de49618220437f0c3c736a5cdf
[modules/gde.git] / projects / GDE_App / GDE-ejb / src / java / com / edf / gde / dao / impl / ChunkDaoImpl.java
1 /*
2  * (C) 2015 EDF
3  */
4 package com.edf.gde.dao.impl;
5
6 import com.edf.gde.dao.ChunkDao;
7 import com.edf.gde.entities.Chunk;
8 import com.edf.gde.transferables.ChunkTO;
9 import javax.persistence.EntityManager;
10
11 /**
12  *
13  * @author Kavoos
14  */
15 public class ChunkDaoImpl implements ChunkDao {
16
17     private final EntityManager em;
18
19     public ChunkDaoImpl(EntityManager em) {
20         this.em = em;
21     }
22
23     @Override
24     public ChunkTO createChunk(ChunkTO cto) {
25         Chunk c = Chunk.fromChunkTO(cto);
26         em.persist(c);
27         return c.toChunkTO();
28     }
29
30     @Override
31     public void deleteChunk(ChunkTO cto) {
32         Chunk c = Chunk.fromChunkTO(cto);
33         em.remove(c);
34     }
35
36     @Override
37     public ChunkTO updateChunk(ChunkTO cto) {
38         Chunk c = Chunk.fromChunkTO(cto);
39         Chunk up = em.merge(c);
40         return up.toChunkTO();
41     }
42
43     @Override
44     public ChunkTO findChunk(ChunkTO cto) {
45         Chunk found = em.find(Chunk.class, cto.getId());
46         return found.toChunkTO();
47     }
48
49     @Override
50     public ChunkTO findById(long id) {
51         Chunk found = (Chunk) em.createNamedQuery("Chunk.findById")
52                 .setParameter("id", id)
53                 .getSingleResult();
54         return found.toChunkTO();
55     }
56
57     @Override
58     public ChunkTO findByFileId(long fileId) {
59         Chunk found = (Chunk) em.createNamedQuery("Chunk.findByFileId")
60                 .setParameter("fileId", fileId)
61                 .getSingleResult();
62         return found.toChunkTO();
63     }
64
65 }