View Javadoc
1   package fr.ifremer.tutti.service;
2   
3   /*
4    * #%L
5    * Tutti :: Service
6    * %%
7    * Copyright (C) 2012 - 2014 Ifremer
8    * %%
9    * This program is free software: you can redistribute it and/or modify
10   * it under the terms of the GNU General Public License as
11   * published by the Free Software Foundation, either version 3 of the 
12   * License, or (at your option) any later version.
13   * 
14   * This program is distributed in the hope that it will be useful,
15   * but WITHOUT ANY WARRANTY; without even the implied warranty of
16   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17   * GNU General Public License for more details.
18   * 
19   * You should have received a copy of the GNU General Public 
20   * License along with this program.  If not, see
21   * <http://www.gnu.org/licenses/gpl-3.0.html>.
22   * #L%
23   */
24  
25  import fr.ifremer.tutti.persistence.entities.data.AccidentalBatch;
26  import fr.ifremer.tutti.persistence.entities.data.CatchBatch;
27  import fr.ifremer.tutti.persistence.entities.data.Cruise;
28  import fr.ifremer.tutti.persistence.entities.data.FishingOperation;
29  import fr.ifremer.tutti.persistence.entities.data.IndividualObservationBatch;
30  import fr.ifremer.tutti.persistence.entities.data.MarineLitterBatch;
31  import fr.ifremer.tutti.persistence.entities.data.Program;
32  import fr.ifremer.tutti.persistence.entities.data.SpeciesBatch;
33  import fr.ifremer.tutti.persistence.entities.protocol.TuttiProtocol;
34  import org.nuiton.validator.NuitonValidator;
35  import org.nuiton.validator.NuitonValidatorFactory;
36  import org.nuiton.validator.NuitonValidatorResult;
37  
38  import java.io.IOException;
39  
40  /**
41   * To validate some incoming data using nuiton-validators.
42   *
43   * @author Tony Chemit - chemit@codelutin.com
44   * @since 1.3
45   */
46  public class ValidationService implements TuttiService {
47  
48      public static final String VALIDATION_CONTEXT_EDIT = "edit";
49  
50      public static final String VALIDATION_CONTEXT_VALIDATE = "validate";
51  
52      public NuitonValidatorResult validateValidateCruise(Cruise cruise) {
53          NuitonValidator<Cruise> validator = NuitonValidatorFactory.newValidator(Cruise.class, VALIDATION_CONTEXT_VALIDATE);
54          return validator.validate(cruise);
55      }
56  
57      public NuitonValidatorResult validateEditCruise(Cruise cruise) {
58          NuitonValidator<Cruise> validator = NuitonValidatorFactory.newValidator(Cruise.class, VALIDATION_CONTEXT_EDIT);
59          return validator.validate(cruise);
60      }
61  
62      public NuitonValidatorResult validateProgram(Program program) {
63          NuitonValidator<Program> validator = NuitonValidatorFactory.newValidator(Program.class, VALIDATION_CONTEXT_EDIT);
64          return validator.validate(program);
65      }
66  
67      public NuitonValidatorResult validateProtocol(TuttiProtocol protocol) {
68          NuitonValidator<TuttiProtocol> validator = NuitonValidatorFactory.newValidator(TuttiProtocol.class);
69          return validator.validate(protocol);
70      }
71  
72      public NuitonValidatorResult validateEditFishingOperation(FishingOperation fishingOperation) {
73          NuitonValidator<FishingOperation> validator = NuitonValidatorFactory.newValidator(FishingOperation.class, VALIDATION_CONTEXT_EDIT);
74          return validator.validate(fishingOperation);
75      }
76  
77      public NuitonValidatorResult validateValidateFishingOperation(FishingOperation fishingOperation) {
78          NuitonValidator<FishingOperation> validator = NuitonValidatorFactory.newValidator(FishingOperation.class, VALIDATION_CONTEXT_VALIDATE);
79          return validator.validate(fishingOperation);
80      }
81  
82      public NuitonValidatorResult validateCatchBatch(CatchBatch catchBatch, String context) {
83          NuitonValidator<CatchBatch> validator = NuitonValidatorFactory.newValidator(CatchBatch.class, context);
84          return validator.validate(catchBatch);
85      }
86  
87      public NuitonValidatorResult validateValidateCatchBatch(CatchBatch catchBatch) {
88          NuitonValidator<CatchBatch> validator = NuitonValidatorFactory.newValidator(CatchBatch.class, VALIDATION_CONTEXT_VALIDATE);
89          return validator.validate(catchBatch);
90      }
91  
92      public NuitonValidatorResult validateValidateSpeciesBatch(SpeciesBatch speciesBatch) {
93          NuitonValidator<SpeciesBatch> validator = NuitonValidatorFactory.newValidator(SpeciesBatch.class, VALIDATION_CONTEXT_VALIDATE);
94          return validator.validate(speciesBatch);
95      }
96  
97      public NuitonValidatorResult validateEditSpeciesBatch(SpeciesBatch speciesBatch) {
98          NuitonValidator<SpeciesBatch> validator = NuitonValidatorFactory.newValidator(SpeciesBatch.class, VALIDATION_CONTEXT_EDIT);
99          return validator.validate(speciesBatch);
100     }
101 
102     public NuitonValidatorResult validateValidateBenthosBatch(SpeciesBatch benthosBatch) {
103         NuitonValidator<SpeciesBatch> validator = NuitonValidatorFactory.newValidator(SpeciesBatch.class, VALIDATION_CONTEXT_VALIDATE);
104         return validator.validate(benthosBatch);
105     }
106 
107     public NuitonValidatorResult validateEditBenthosBatch(SpeciesBatch benthosBatch) {
108         NuitonValidator<SpeciesBatch> validator = NuitonValidatorFactory.newValidator(SpeciesBatch.class, VALIDATION_CONTEXT_EDIT);
109         return validator.validate(benthosBatch);
110     }
111 
112     public NuitonValidatorResult validateValidateMarineLitterBatch(MarineLitterBatch marineLitterBatch) {
113         NuitonValidator<MarineLitterBatch> validator = NuitonValidatorFactory.newValidator(MarineLitterBatch.class, VALIDATION_CONTEXT_VALIDATE);
114         return validator.validate(marineLitterBatch);
115     }
116 
117     public NuitonValidatorResult validateEditMarineLitterBatch(MarineLitterBatch marineLitterBatch) {
118         NuitonValidator<MarineLitterBatch> validator = NuitonValidatorFactory.newValidator(MarineLitterBatch.class, VALIDATION_CONTEXT_EDIT);
119         return validator.validate(marineLitterBatch);
120     }
121 
122     public NuitonValidatorResult validateValidateAccidentalBatch(AccidentalBatch accidentalBatch) {
123         NuitonValidator<AccidentalBatch> validator = NuitonValidatorFactory.newValidator(AccidentalBatch.class, VALIDATION_CONTEXT_VALIDATE);
124         return validator.validate(accidentalBatch);
125     }
126 
127     public NuitonValidatorResult validateEditAccidentalBatch(AccidentalBatch accidentalBatch) {
128         NuitonValidator<AccidentalBatch> validator = NuitonValidatorFactory.newValidator(AccidentalBatch.class, VALIDATION_CONTEXT_EDIT);
129         return validator.validate(accidentalBatch);
130     }
131 
132     public NuitonValidatorResult validateValidateIndividualObservationBatch(IndividualObservationBatch individualObservationBatch) {
133         NuitonValidator<IndividualObservationBatch> validator = NuitonValidatorFactory.newValidator(IndividualObservationBatch.class, VALIDATION_CONTEXT_VALIDATE);
134         return validator.validate(individualObservationBatch);
135     }
136 
137     public NuitonValidatorResult validateEditIndividualObservationBatch(IndividualObservationBatch individualObservationBatch) {
138         NuitonValidator<IndividualObservationBatch> validator = NuitonValidatorFactory.newValidator(IndividualObservationBatch.class, VALIDATION_CONTEXT_EDIT);
139         return validator.validate(individualObservationBatch);
140     }
141 
142     @Override
143     public void setServiceContext(TuttiServiceContext context) {
144     }
145 
146     @Override
147     public void close() throws IOException {
148     }
149 }