View Javadoc
1   package fr.ifremer.tutti.service.catches;
2   
3   /*
4    * #%L
5    * Tutti :: Service
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2012 - 2016 Ifremer
10   * %%
11   * This program is free software: you can redistribute it and/or modify
12   * it under the terms of the GNU General Public License as
13   * published by the Free Software Foundation, either version 3 of the
14   * License, or (at your option) any later version.
15   * 
16   * This program is distributed in the hope that it will be useful,
17   * but WITHOUT ANY WARRANTY; without even the implied warranty of
18   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19   * GNU General Public License for more details.
20   * 
21   * You should have received a copy of the GNU General Public
22   * License along with this program.  If not, see
23   * <http://www.gnu.org/licenses/gpl-3.0.html>.
24   * #L%
25   */
26  
27  import fr.ifremer.tutti.persistence.entities.data.MarineLitterBatch;
28  import fr.ifremer.tutti.type.WeightUnit;
29  
30  import static org.nuiton.i18n.I18n.t;
31  
32  /**
33   * Created on 13/04/16.
34   *
35   * @author Tony Chemit - chemit@codelutin.com
36   */
37  public class MarineLitterWeightComputingException extends TuttiWeightComputingException {
38  
39      public static MarineLitterWeightComputingException forNoWeight(int index) {
40  
41          String errorMessage = t("tutti.validator.warning.marineLitter.weight.required");
42          return new MarineLitterWeightComputingException(errorMessage, MarineLitterBatch.PROPERTY_WEIGHT, index);
43  
44      }
45  
46      public static MarineLitterWeightComputingException forIncoherentTotal(WeightUnit weightUnit,
47                                                                            Float marineLitterTotalWeight,
48                                                                            Float marineLitterTotalComputedWeight) {
49  
50          String errorMessage = t("tutti.service.operations.computeWeights.error.marineLitter.incoherentTotal",
51                                  weightUnit.renderFromEntityWithShortLabel(marineLitterTotalWeight) ,
52                                  weightUnit.renderFromEntityWithShortLabel(marineLitterTotalComputedWeight) );
53          return new MarineLitterWeightComputingException(errorMessage);
54  
55      }
56  
57      private MarineLitterWeightComputingException(String message) {
58          super(message);
59      }
60  
61      private MarineLitterWeightComputingException(String message, String property, int index) {
62          super(message, property, index);
63      }
64  }