View Javadoc
1   package fr.ifremer.tutti.service.genericformat;
2   
3   /*
4    * #%L
5    * Tutti :: Service
6    * $Id:$
7    * $HeadURL:$
8    * %%
9    * Copyright (C) 2012 - 2015 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.Cruise;
28  
29  import java.util.Collection;
30  import java.util.LinkedHashMap;
31  import java.util.Map;
32  
33  /**
34   * Created on 2/11/15.
35   *
36   * @author Tony Chemit - chemit@codelutin.com
37   * @since 3.14
38   */
39  public class GenericFormatImportResult extends GenericFormatResultSupport {
40  
41      private static final long serialVersionUID = 1L;
42  
43      private final Map<String, GenericFormatImportCruiseResult> cruiseResults;
44  
45      private int nbCruisesCreated;
46  
47      private int nbCruisesUpdated;
48  
49      private int nbOperationsCreated;
50  
51      private int nbOperationsUpdated;
52  
53      private boolean withInvalidWeights;
54  
55      public GenericFormatImportResult(GenericFormatImportContext importContext) {
56          super(importContext);
57  
58          this.cruiseResults = new LinkedHashMap<>();
59  
60          this.withInvalidWeights = false;
61  
62          for (GenericFormatImportCruiseContext cruiseContext : importContext.orderedCruiseContexts()) {
63  
64              Cruise cruise = cruiseContext.getCruise();
65              GenericFormatImportCruiseResult cruiseResult = new GenericFormatImportCruiseResult(cruiseContext);
66              cruiseResults.put(cruise.getId(), cruiseResult);
67  
68              if (cruiseResult.isOverride()) {
69                  nbCruisesUpdated++;
70              } else {
71                  nbCruisesCreated++;
72              }
73              nbOperationsCreated += cruiseResult.getNbOperationsCreated();
74              nbOperationsUpdated += cruiseResult.getNbOperationsUpdated();
75  
76              if (cruiseResult.isWithInvalidWeights()) {
77                  withInvalidWeights = true;
78              }
79  
80          }
81  
82      }
83  
84      public Collection<GenericFormatImportCruiseResult> getCruiseResults() {
85          return cruiseResults.values();
86      }
87  
88      public int getNbCruisesCreated() {
89          return nbCruisesCreated;
90      }
91  
92      public int getNbCruisesUpdated() {
93          return nbCruisesUpdated;
94      }
95  
96      public int getNbOperationsCreated() {
97          return nbOperationsCreated;
98      }
99  
100     public int getNbOperationsUpdated() {
101         return nbOperationsUpdated;
102     }
103 
104     public boolean isWithInvalidWeights() {
105         return withInvalidWeights;
106     }
107 
108 }