1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 package org.jumpmind.symmetric.extract.csv;
23
24 import java.io.BufferedWriter;
25 import java.io.IOException;
26
27 import org.jumpmind.symmetric.extract.DataExtractorContext;
28 import org.jumpmind.symmetric.model.Data;
29 import org.jumpmind.symmetric.model.Node;
30 import org.jumpmind.symmetric.model.Trigger;
31 import org.jumpmind.symmetric.service.IConfigurationService;
32 import org.jumpmind.symmetric.service.IDataExtractorService;
33 import org.jumpmind.symmetric.service.INodeService;
34
35 class StreamReloadDataCommand extends AbstractStreamDataCommand {
36
37 private IDataExtractorService dataExtractorService;
38
39 private IConfigurationService configurationService;
40
41 private INodeService nodeService;
42
43 public void execute(BufferedWriter out, Data data, DataExtractorContext context) throws IOException {
44 Trigger trigger = configurationService.getTriggerById(data.getAudit().getTriggerId());
45
46 if (data.getRowData() != null) {
47 trigger.setInitialLoadSelect(data.getRowData());
48 }
49 Node node = nodeService.findNode(context.getBatch().getNodeId());
50 dataExtractorService.extractInitialLoadWithinBatchFor(node, trigger, out,
51 context);
52 out.flush();
53 }
54
55 public void setDataExtractorService(IDataExtractorService dataExtractorService) {
56 this.dataExtractorService = dataExtractorService;
57 }
58
59 public void setConfigurationService(IConfigurationService configurationService) {
60 this.configurationService = configurationService;
61 }
62
63 public void setNodeService(INodeService nodeService) {
64 this.nodeService = nodeService;
65 }
66
67 }