1 package fr.ifremer.tutti.persistence.entities.referential;
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
27 import fr.ifremer.tutti.persistence.TuttiPersistence;
28 import fr.ifremer.tutti.persistence.entities.protocol.SpeciesProtocol;
29 import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol;
30 import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocols;
31
32 import java.util.HashMap;
33 import java.util.Map;
34
35
36
37
38
39
40
41 public class TaxonCaches {
42
43 public static TaxonCache createSpeciesCacheWithoutVernacularCode(TuttiPersistence persistenceService, TuttiProtocol protocol) {
44
45 boolean noProtocol = protocol == null;
46
47 Map<Integer, SpeciesProtocol> protocolMap;
48
49 if (noProtocol) {
50
51 protocolMap = new HashMap<>();
52
53 } else {
54
55 protocolMap = TuttiProtocols.toSpeciesProtocolMap(protocol);
56
57 }
58
59
60 return new TaxonCache(false, persistenceService, protocolMap);
61
62 }
63
64 public static TaxonCache createSpeciesCache(TuttiPersistence persistenceService, TuttiProtocol protocol) {
65
66 boolean noProtocol = protocol == null;
67
68 Map<Integer, SpeciesProtocol> protocolMap;
69
70 if (noProtocol) {
71
72 protocolMap = new HashMap<>();
73
74 } else {
75
76 protocolMap = TuttiProtocols.toSpeciesProtocolMap(protocol);
77
78 }
79
80 return new TaxonCache(true, persistenceService, protocolMap);
81
82 }
83
84 public static TaxonCache createBenthosCacheWithoutVernacularCode(TuttiPersistence persistenceService, TuttiProtocol protocol) {
85
86 boolean noProtocol = protocol == null;
87
88 Map<Integer, SpeciesProtocol> protocolMap;
89
90 if (noProtocol) {
91
92 protocolMap = new HashMap<>();
93
94 } else {
95
96 protocolMap = TuttiProtocols.toBenthosProtocolMap(protocol);
97
98 }
99
100
101 return new TaxonCache(false, persistenceService, protocolMap);
102
103 }
104
105 public static TaxonCache createBenthosCache(TuttiPersistence persistenceService, TuttiProtocol protocol) {
106
107 boolean noProtocol = protocol == null;
108
109 Map<Integer, SpeciesProtocol> protocolMap;
110
111 if (noProtocol) {
112
113 protocolMap = new HashMap<>();
114
115 } else {
116
117 protocolMap = TuttiProtocols.toBenthosProtocolMap(protocol);
118
119 }
120
121 return new TaxonCache(true, persistenceService, protocolMap);
122
123 }
124
125 }