1 package fr.ifremer.quadrige3.core.dao.administration.program;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 import fr.ifremer.quadrige3.core.dao.referential.monitoringLocation.MonitoringLocationImpl;
26 import fr.ifremer.quadrige3.core.vo.administration.program.MonLocProgVO;
27 import org.hibernate.SessionFactory;
28 import org.springframework.beans.factory.annotation.Autowired;
29 import org.springframework.context.annotation.Lazy;
30 import org.springframework.stereotype.Repository;
31
32
33
34
35
36
37
38
39 @Repository("monLocProgDao")
40 @Lazy
41 public class MonLocProgDaoImpl
42 extends MonLocProgDaoBase
43 {
44
45
46
47
48
49
50 @Autowired
51 public MonLocProgDaoImpl(SessionFactory sessionFactory) {
52 super();
53 setSessionFactory(sessionFactory);
54 }
55
56
57 public void toMonLocProgVO(
58 MonLocProg source,
59 MonLocProgVO target)
60 {
61 super.toMonLocProgVO(source, target);
62
63
64 if (source.getMonitoringLocation() != null) {
65 target.setMonLocId(source.getMonitoringLocation().getMonLocId());
66 }
67 }
68
69
70
71
72
73
74 private MonLocProg loadMonLocProgFromMonLocProgVO(MonLocProgVO monLocProgVO)
75 {
76 MonLocProg monLocProg = this.get(monLocProgVO.getMonLocProgId());
77 if (monLocProg == null)
78 {
79 monLocProg = MonLocProg.Factory.newInstance();
80 }
81 return monLocProg;
82 }
83
84
85 public MonLocProg monLocProgVOToEntity(MonLocProgVO monLocProgVO)
86 {
87 MonLocProg entity = this.loadMonLocProgFromMonLocProgVO(monLocProgVO);
88 this.monLocProgVOToEntity(monLocProgVO, entity, true);
89 return entity;
90 }
91
92
93 @Override
94 public void monLocProgVOToEntity(
95 MonLocProgVO source,
96 MonLocProg target,
97 boolean copyIfNull)
98 {
99 super.monLocProgVOToEntity(source, target, copyIfNull);
100
101
102 if (copyIfNull || source.getMonLocId() != null) {
103 if (source.getMonLocId() == null) {
104 target.setMonitoringLocation(null);
105 }
106 else {
107 target.setMonitoringLocation(load(MonitoringLocationImpl.class, source.getMonLocId()));
108 }
109 }
110
111
112 if (copyIfNull || source.getProgCd() != null) {
113 if (source.getProgCd() == null) {
114 target.setProgram(null);
115 }
116 else {
117 target.setProgram(load(ProgramImpl.class, source.getProgCd()));
118 }
119 }
120 }
121 }