diff --git a/.classpath b/.classpath
index 8dea696..f83f87d 100644
--- a/.classpath
+++ b/.classpath
@@ -1,12 +1,12 @@
-
+
-
+
@@ -35,5 +35,5 @@
-
+
diff --git a/.settings/com.gwtplugins.gdt.eclipse.core.prefs b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
index 695e972..6fd3d23 100644
--- a/.settings/com.gwtplugins.gdt.eclipse.core.prefs
+++ b/.settings/com.gwtplugins.gdt.eclipse.core.prefs
@@ -1,4 +1,4 @@
eclipse.preferences.version=1
-lastWarOutDir=/home/francesco-mangiacrapa/eclipse-workspace/performfish-analytics-portlet-TRUNK/target/performfish-analytics-portlet-0.1.0-SNAPSHOT
+lastWarOutDir=/home/francesco-mangiacrapa/eclipse-workspace/performfish-analytics-portlet-TRUNK/target/performfish-analytics-portlet-0.2.0-SNAPSHOT
warSrcDir=src/main/webapp
warSrcDirIsOutput=false
\ No newline at end of file
diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component
index b515a17..2ef44fc 100644
--- a/.settings/org.eclipse.wst.common.component
+++ b/.settings/org.eclipse.wst.common.component
@@ -1,10 +1,10 @@
-
+
-
+
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishAnalyticsConstant.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishAnalyticsConstant.java
index afce362..7a2ec74 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishAnalyticsConstant.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishAnalyticsConstant.java
@@ -13,8 +13,9 @@ package org.gcube.portlets.user.performfishanalytics.client;
*/
public class PerformFishAnalyticsConstant {
-// public static final String FARMID_PARAM = "farmid";
-// public static final String BATCHTYPE_PARAM = "batchtype";
+ public static final String QUERY_STRING_FARMID_PARAM = "farmid";
+ public static final String QUERY_STRING_BATCHTYPE_PARAM = "batchtype";
+ public static final String QUERY_STRING_ANNUAL_PARAMETER = "annual";
// PERFORM-FISH SERVICE KEYS
public static final String BATCHES_TABLE_INTERNAL = "BatchesTable_internal";
public static final String BATCHES_TABLE = "BatchesTable";
@@ -36,7 +37,7 @@ public class PerformFishAnalyticsConstant {
public static final String PERFORM_FISH_FARMID_PARAM = "farmid";
public static final String PERFORM_FISH_BATCH_TYPE_PARAM = "batch_type";
public static final String PERFORM_FISH_SPECIES_ID_PARAM = "speciesid";
- public static final String PERFORM_FISH_ANNUAL_PARAMETER = "annual";
+
public static final String DM_FOCUS_ID_ALL_VALUE = "ALL";
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishQueryParameter.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishQueryParameter.java
deleted file mode 100644
index 213f25b..0000000
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/PerformFishQueryParameter.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.gcube.portlets.user.performfishanalytics.client;
-
-// TODO: Auto-generated Javadoc
-/**
- * The Enum PerformFishQueryParameter.
- */
-public enum PerformFishQueryParameter {
-
- farmid,
- batchtype
-
-
-// /** The farmid param. */
-// FARMID_PARAM("farmid"),
-//
-// /** The batchtype param. */
-// BATCHTYPE_PARAM("batchtype");
-//
-// /** The id. */
-// private String id;
-//
-// /**
-// * Instantiates a new perform fish query parameter.
-// *
-// * @param id the id
-// */
-// PerformFishQueryParameter(String id){
-// this.id = id;
-// }
-//
-// public String getId() {
-// return id;
-// }
-
-}
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java
index e4696de..2647f2c 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsController.java
@@ -104,54 +104,81 @@ public class PerformFishAnalyticsController {
GWT.log("Decoded parameters: "+initParams);
- final String annual = initParams.get(PerformFishAnalyticsConstant.PERFORM_FISH_ANNUAL_PARAMETER);
+
+ final String farmidParam = initParams.get(PerformFishAnalyticsConstant.QUERY_STRING_FARMID_PARAM);
+
+ if(farmidParam==null || farmidParam.isEmpty()){
+ Window.alert("Error: no '"+PerformFishAnalyticsConstant.QUERY_STRING_FARMID_PARAM+"' param detected");
+ return;
+ }
+
+ final String annual = initParams.get(PerformFishAnalyticsConstant.QUERY_STRING_ANNUAL_PARAMETER);
boolean isAnnualCall = false;
try {
isAnnualCall = Boolean.parseBoolean(annual);
+ GWT.log("Read decoded isAnnual at: "+isAnnualCall);
}catch (Exception e) {
- // TODO: handle exception
+ GWT.log("Forcing isAnnual at TRUE");
+ isAnnualCall = false;
}
- final String farmidParam = initParams.get(PerformFishAnalyticsConstant.PERFORM_FISH_FARMID_PARAM);
-
- if(farmidParam==null || farmidParam.isEmpty()){
- Window.alert("Error: no '"+PerformFishAnalyticsConstant.PERFORM_FISH_FARMID_PARAM+"' param detected");
- return;
- }
-
-
- String batchtypeParam = initParams.get(PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM);
-
- if(batchtypeParam==null || batchtypeParam.isEmpty()){
- Window.alert("Error: no '"+PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM+"' param detected");
- return;
- }
+ String batchtypeParam = initParams.get(PerformFishAnalyticsConstant.QUERY_STRING_BATCHTYPE_PARAM);
+ //IS ANNUAL CALL
if(isAnnualCall) {
+
+ //CALLING THE PORTLET WITH ANNUAL CONFIGURATION
batchtypeParam = PerformFishAnalyticsConstant.BATCH_LEVEL.GROW_OUT_AGGREGATED_CLOSED_BATCHES.name();
GWT.log("Hard cabling batchtypeParam as: "+batchtypeParam);
- }
+
+ PerformFishInitParameter performFishInitParams = new PerformFishInitParameter();
+ performFishInitParams.addParameter(PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM, batchtypeParam);
+ performFishInitParams.addParameter(PerformFishAnalyticsConstant.PERFORM_FISH_FARMID_PARAM, farmidParam);
+
+ PerformFishAnalyticsServiceAsync.Util.getInstance().validParameters(performFishInitParams, new AsyncCallback() {
+
+ @Override
+ public void onSuccess(PerformFishInitParameter result) {
+ decryptParameters = result;
+ eventBus.fireEvent(new LoadPopulationTypeEvent(POPULATION_LEVEL.FARM.name(), null));
+ }
+
+ @Override
+ public void onFailure(Throwable caught) {
+
+ Window.alert(caught.getMessage());
+ }
+ });
+
+ }else {
- PerformFishInitParameter performFishInitParams = new PerformFishInitParameter();
- performFishInitParams.addParameter(PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM, batchtypeParam);
- performFishInitParams.addParameter(PerformFishAnalyticsConstant.PERFORM_FISH_FARMID_PARAM, farmidParam);
-
- PerformFishAnalyticsServiceAsync.Util.getInstance().validParameters(performFishInitParams, new AsyncCallback() {
-
- @Override
- public void onSuccess(PerformFishInitParameter result) {
- decryptParameters = result;
- eventBus.fireEvent(new LoadPopulationTypeEvent(POPULATION_LEVEL.BATCH.name(), null));
+ //CALLING THE PORTLET WITHOUT ANNUAL CONFIGURATION
+ if(batchtypeParam==null || batchtypeParam.isEmpty()){
+ Window.alert("Error: no '"+PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM+"' param detected");
+ return;
}
-
- @Override
- public void onFailure(Throwable caught) {
-
- Window.alert(caught.getMessage());
- }
- });
+
+ PerformFishInitParameter performFishInitParams = new PerformFishInitParameter();
+ performFishInitParams.addParameter(PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM, batchtypeParam);
+ performFishInitParams.addParameter(PerformFishAnalyticsConstant.PERFORM_FISH_FARMID_PARAM, farmidParam);
+
+ PerformFishAnalyticsServiceAsync.Util.getInstance().validParameters(performFishInitParams, new AsyncCallback() {
+
+ @Override
+ public void onSuccess(PerformFishInitParameter result) {
+ decryptParameters = result;
+ eventBus.fireEvent(new LoadPopulationTypeEvent(POPULATION_LEVEL.BATCH.name(), null));
+ }
+
+ @Override
+ public void onFailure(Throwable caught) {
+
+ Window.alert(caught.getMessage());
+ }
+ });
+ }
}
});
}
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java
index 7ef72fe..309ebcb 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/client/controllers/PerformFishAnalyticsViewController.java
@@ -7,9 +7,9 @@ import java.util.Arrays;
import java.util.List;
import java.util.Map;
+import org.gcube.portlets.user.performfishanalytics.client.PerformFishAnalyticsConstant;
import org.gcube.portlets.user.performfishanalytics.client.PerformFishAnalyticsConstant.POPULATION_LEVEL;
import org.gcube.portlets.user.performfishanalytics.client.PerformFishAnalyticsServiceAsync;
-import org.gcube.portlets.user.performfishanalytics.client.PerformFishQueryParameter;
import org.gcube.portlets.user.performfishanalytics.client.view.BaseDockLayoutPanel;
import org.gcube.portlets.user.performfishanalytics.client.view.BodyPanel;
import org.gcube.portlets.user.performfishanalytics.client.view.CustomTreeModel;
@@ -203,10 +203,11 @@ public class PerformFishAnalyticsViewController {
@Override
public void onSuccess(List result) {
+ GWT.log("Loaded list of "+PopulationType.class.getSimpleName()+ ": "+result);
headerPage.showLoading(false);
if(result.size()>0){
- String passedBatchType = decodedParameters.getParameters().get(PerformFishQueryParameter.batchtype.name());
+ String passedBatchType = decodedParameters.getParameters().get(PerformFishAnalyticsConstant.PERFORM_FISH_BATCH_TYPE_PARAM);
for (PopulationType populationType : result) {
if(populationType.getName().compareToIgnoreCase(passedBatchType)==0){
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/server/PerformFishAnalyticsServiceImpl.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/server/PerformFishAnalyticsServiceImpl.java
index e834e86..f256a8a 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/server/PerformFishAnalyticsServiceImpl.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/server/PerformFishAnalyticsServiceImpl.java
@@ -138,6 +138,7 @@ public class PerformFishAnalyticsServiceImpl extends RemoteServiceServlet
new GenericPersistenceDaoBuilder(
dbFactory, Population.class.getSimpleName());
List listPopulation = builderPopulation.getPersistenceEntity().getList();
+ log.info("List of {} are: {}",Population.class.getSimpleName(),listPopulation);
List listPopulationType;
for (Population population : listPopulation) {
if (population.getName().equalsIgnoreCase(populationName)) {
@@ -329,10 +330,10 @@ public class PerformFishAnalyticsServiceImpl extends RemoteServiceServlet
public PerformFishInitParameter validParameters(PerformFishInitParameter initParams) throws Exception{
Map inputParameters = initParams.getParameters();
- /*String farmID = inputParameters.get(PerformFishAnalyticsConstant.FARMID_PARAM);
+ String farmID = inputParameters.get(PerformFishAnalyticsConstant.PERFORM_FISH_FARMID_PARAM);
boolean grantAccess = checkGrantToAccessFarmID(farmID);
if(!grantAccess)
- throw new Exception("You have no rights to access to this FARM. You does not belong to it.");*/
+ throw new Exception("You have no rights to access to this FARM. You does not belong to it.");
return initParams;
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/server/ToAvoidIndirectSerialization.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/server/ToAvoidIndirectSerialization.java
index f2a0b23..3838dc0 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/server/ToAvoidIndirectSerialization.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/server/ToAvoidIndirectSerialization.java
@@ -15,6 +15,7 @@ import org.gcube.portlets.user.performfishanalytics.shared.PopulationTypePropert
import org.gcube.portlets.user.performfishanalytics.shared.Quarter;
import org.gcube.portlets.user.performfishanalytics.shared.ReferencePopulationType;
import org.gcube.portlets.user.performfishanalytics.shared.Species;
+import org.gcube.portlets.user.performfishanalytics.shared.Year;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -64,12 +65,16 @@ public class ToAvoidIndirectSerialization {
List listPeriod = populationType.getListPeriod();
populationType.setListPeriod((List) toListPopulationProperties(listPeriod, null));
+
+ List listYears = populationType.getListYears();
+ populationType.setListYears((List) toListPopulationProperties(listYears, null));
}else{
populationType.setListSpecies(null);
populationType.setListQuarter(null);
populationType.setListArea(null);
populationType.setListPeriod(null);
+ populationType.setListYears(null);
}
populationType.setListKPI(null);
@@ -142,6 +147,8 @@ public class ToAvoidIndirectSerialization {
return (T) new Quarter(object.getId(), object.getName(), object.getDescription(), type);
}else if(object instanceof Period){
return (T) new Period(object.getId(), object.getName(), object.getDescription(), type);
+ }else if(object instanceof Year){
+ return (T) new Year(object.getId(), ((Year) object).getValue(), type);
}else if(object instanceof KPI){
KPI toKPI = (KPI) object;
KPI gwtKPI = new KPI(toKPI.getId(),toKPI.getCode(),toKPI.getName(),toKPI.getDescription(), null,type,toKPI.getDeepIndex());
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/server/util/database/FillDatabasePerBatchType.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/server/util/database/FillDatabasePerBatchType.java
index 80ee014..6313daa 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/server/util/database/FillDatabasePerBatchType.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/server/util/database/FillDatabasePerBatchType.java
@@ -57,7 +57,7 @@ public class FillDatabasePerBatchType {
*/
public static void printDatabaseData(EntityManagerFactory entityManagerFactory) throws Exception {
- GenericPersistenceDaoBuilder builderPopulation = new GenericPersistenceDaoBuilder(entityManagerFactory, "Population");
+ GenericPersistenceDaoBuilder builderPopulation = new GenericPersistenceDaoBuilder(entityManagerFactory, Population.class.getSimpleName());
for(Population population: builderPopulation.getPersistenceEntity().getList()){
log.debug("\n\n#### Population: "+population.getName());
@@ -195,7 +195,7 @@ public class FillDatabasePerBatchType {
}
//INSERTING BATCH LEVEL/POPULATIONS
- GenericPersistenceDaoBuilder builderPopulation = new GenericPersistenceDaoBuilder(entityManagerFactory, "Population");
+ GenericPersistenceDaoBuilder builderPopulation = new GenericPersistenceDaoBuilder(entityManagerFactory, Population.class.getSimpleName());
batchPopulation.setListPopulationType(new ArrayList(listBatchLevels));
builderPopulation.getPersistenceEntity().insert(batchPopulation);
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/PopulationType.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/PopulationType.java
index 5f8a32a..7e17899 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/PopulationType.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/PopulationType.java
@@ -69,8 +69,7 @@ public class PopulationType implements GenericDao, Serializable {
@OrderColumn
private List listKPI = new ArrayList();
-
- @OneToMany(mappedBy = "populationType", orphanRemoval = true, cascade = CascadeType.PERSIST, fetch = FetchType.EAGER)
+ @OneToMany(mappedBy = "populationType", orphanRemoval = true, cascade = CascadeType.PERSIST, fetch = FetchType.LAZY)
@CascadeOnDelete
@OrderColumn
private List listYears = new ArrayList();
diff --git a/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/Year.java b/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/Year.java
index 4fc4c0e..199fbc1 100644
--- a/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/Year.java
+++ b/src/main/java/org/gcube/portlets/user/performfishanalytics/shared/Year.java
@@ -18,7 +18,7 @@ import org.eclipse.persistence.annotations.CascadeOnDelete;
*/
@Entity
@CascadeOnDelete
-public class Year implements GenericDao, ReferencePopulationType, Serializable{
+public class Year implements GenericDao, ReferencePopulationType, PopulationTypeProperties, Serializable{
/**
*
@@ -54,8 +54,34 @@ public class Year implements GenericDao, ReferencePopulationType, Serializable{
this.value = value;
this.populationType = populationType;
}
+
+ @Override
+ public int getInternalId() {
+ return internalId;
+ }
+
+ @Override
+ public String getName() {
+ return value;
+ }
+
+ @Override
+ public String getDescription() {
+ return value;
+ }
+
+ @Override
+ public void setName(String name) {
+ setValue(name);
+ }
+ @Override
+ public void setDescription(String description) {
+ //empty
+ }
+
+
/* (non-Javadoc)
* @see org.gcube.portles.user.performfishannual.shared.GenericDao#getId()
*/
@@ -82,6 +108,7 @@ public class Year implements GenericDao, ReferencePopulationType, Serializable{
public String getValue() {
return value;
}
+
/**
@@ -124,6 +151,4 @@ public class Year implements GenericDao, ReferencePopulationType, Serializable{
builder.append("]");
return builder.toString();
}
-
-
}