1 package fr.ifremer.quadrige2.synchro.intercept.administration;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 import com.google.common.eventbus.Subscribe;
27 import fr.ifremer.common.synchro.dao.SynchroTableDao;
28 import fr.ifremer.common.synchro.intercept.SynchroInterceptorBase;
29 import fr.ifremer.common.synchro.intercept.SynchroOperationRepository;
30 import fr.ifremer.common.synchro.meta.SynchroTableMetadata;
31 import fr.ifremer.common.synchro.meta.event.CreateQueryEvent;
32 import fr.ifremer.common.synchro.query.SynchroQueryBuilder;
33 import fr.ifremer.common.synchro.query.SynchroQueryName;
34 import fr.ifremer.common.synchro.query.SynchroQueryOperator;
35 import fr.ifremer.quadrige2.synchro.meta.DatabaseColumns;
36 import fr.ifremer.quadrige2.synchro.meta.administration.ProgramStrategySynchroTables;
37 import fr.ifremer.quadrige2.synchro.service.referential.ReferentialSynchroDatabaseConfiguration;
38
39 import java.sql.SQLException;
40 import java.util.List;
41
42
43
44
45
46
47
48
49
50
51 public class ProgramInterceptor extends AbstractProgramStrategyInterceptor {
52
53
54
55
56
57
58 public ProgramInterceptor() {
59 super(ProgramStrategySynchroTables.PROGRAMME.name());
60 setEnableOnWrite(true);
61 }
62
63
64 @Override
65 protected void doOnDelete(List<Object> pk, SynchroTableDao sourceDao, SynchroTableDao targetDao, SynchroOperationRepository buffer)
66 throws SQLException {
67
68 String progCd = pk.get(0).toString();
69
70
71 buffer.addChildToDeleteFromOneColumn(ProgramStrategySynchroTables.STRATEGY.name(), DatabaseColumns.PROG_CD.name(), progCd);
72 }
73
74 }