Author: chatellier Date: 2010-10-29 16:29:35 +0000 (Fri, 29 Oct 2010) New Revision: 137 Log: Modification des datas pour pouvoir avoir les meme donn?\195?\169es en String et en double. Deplacement d'une validation dans le fichier xwork Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/data/Catch.java trunk/coser-business/src/main/java/fr/ifremer/coser/data/Haul.java trunk/coser-business/src/main/java/fr/ifremer/coser/data/Length.java trunk/coser-business/src/main/java/fr/ifremer/coser/data/Strata.java trunk/coser-business/src/main/java/fr/ifremer/coser/services/ValidationService.java trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Catch-error-validation.xml trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java trunk/coser-business/src/test/resources/log4j.properties Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/data/Catch.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/data/Catch.java 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/data/Catch.java 2010-10-29 16:29:35 UTC (rev 137) @@ -97,23 +97,85 @@ return data[INDEX_SPECIES]; } - public void setNumber(String value) { - String oldValue = data[INDEX_NUMBER]; + public void setNumber(double value) { + double oldValue = getNumber(); data[INDEX_NUMBER] = String.valueOf(value); getPropertyChangeSupport().firePropertyChange("number", oldValue, value); } - public String getNumber() { + public double getNumber() { + double result = Double.parseDouble(data[INDEX_NUMBER]); + return result; + } + + public void setWeight(double value) { + double oldValue = getWeight(); + data[INDEX_WEIGHT] = String.valueOf(value); + getPropertyChangeSupport().firePropertyChange("weight", oldValue, value); + } + + public double getWeight() { + double result = Double.parseDouble(data[INDEX_WEIGHT]); + return result; + } + + public void setSurveyAsString(String value) { + String oldValue = data[INDEX_SURVEY]; + data[INDEX_SURVEY] = value; + getPropertyChangeSupport().firePropertyChange("surveyAsString", oldValue, value); + } + + public String getSurveyAsString() { + return data[INDEX_SURVEY]; + } + + public void setYearAsString(String value) { + String oldValue = data[INDEX_YEAR]; + data[INDEX_YEAR] = value; + getPropertyChangeSupport().firePropertyChange("yearAsString", oldValue, value); + } + + public String getYearAsString() { + return data[INDEX_YEAR]; + } + + public void setHaulAsString(String value) { + String oldValue = data[INDEX_HAUL]; + data[INDEX_HAUL] = value; + getPropertyChangeSupport().firePropertyChange("haulAsString", oldValue, value); + } + + public String getHaulAsString() { + return data[INDEX_HAUL]; + } + + public void setSpeciesAsString(String value) { + String oldValue = data[INDEX_SPECIES]; + data[INDEX_SPECIES] = value; + getPropertyChangeSupport().firePropertyChange("speciesAsString", oldValue, value); + } + + public String getSpeciesAsString() { + return data[INDEX_SPECIES]; + } + + public void setNumberAsString(String value) { + String oldValue = data[INDEX_NUMBER]; + data[INDEX_NUMBER] = value; + getPropertyChangeSupport().firePropertyChange("numberAsString", oldValue, value); + } + + public String getNumberAsString() { return data[INDEX_NUMBER]; } - public void setWeight(String value) { + public void setWeightAsString(String value) { String oldValue = data[INDEX_WEIGHT]; data[INDEX_WEIGHT] = value; - getPropertyChangeSupport().firePropertyChange("weight", oldValue, value); + getPropertyChangeSupport().firePropertyChange("weightAsString", oldValue, value); } - public String getWeight() { + public String getWeightAsString() { return data[INDEX_WEIGHT]; } } Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/data/Haul.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/data/Haul.java 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/data/Haul.java 2010-10-29 16:29:35 UTC (rev 137) @@ -149,4 +149,94 @@ public String getDepth() { return data[INDEX_DEPTH]; } + + public void setSurveyAsString(String value) { + String oldValue = data[INDEX_SURVEY]; + data[INDEX_SURVEY] = value; + getPropertyChangeSupport().firePropertyChange("surveyAsString", oldValue, value); + } + + public String getSurveyAsString() { + return data[INDEX_SURVEY]; + } + + public void setYearAsString(String value) { + String oldValue = data[INDEX_YEAR]; + data[INDEX_YEAR] = value; + getPropertyChangeSupport().firePropertyChange("yearAsString", oldValue, value); + } + + public String getYearAsString() { + return data[INDEX_YEAR]; + } + + public void setHaulAsString(String value) { + String oldValue = data[INDEX_HAUL]; + data[INDEX_HAUL] = value; + getPropertyChangeSupport().firePropertyChange("haulAsString", oldValue, value); + } + + public String getHaulAsString() { + return data[INDEX_HAUL]; + } + + public void setMonthAsString(String value) { + String oldValue = data[INDEX_MONTH]; + data[INDEX_MONTH] = value; + getPropertyChangeSupport().firePropertyChange("monthAsString", oldValue, value); + } + + public String getMonthAsString() { + return data[INDEX_MONTH]; + } + + public void setStratumAsString(String value) { + String oldValue = data[INDEX_STRATUM]; + data[INDEX_STRATUM] = value; + getPropertyChangeSupport().firePropertyChange("stratumAsString", oldValue, value); + } + + public String getStratumAsString() { + return data[INDEX_STRATUM]; + } + + public void setSweptSurfaceAsString(String value) { + String oldValue = data[INDEX_SWEPT_SURFACE]; + data[INDEX_SWEPT_SURFACE] = value; + getPropertyChangeSupport().firePropertyChange("sweptSurfaceAsString", oldValue, value); + } + + public String getSweptSurfaceAsString() { + return data[INDEX_SWEPT_SURFACE]; + } + + public void setLatAsString(String value) { + String oldValue = data[INDEX_LAT]; + data[INDEX_LAT] = value; + getPropertyChangeSupport().firePropertyChange("latAsString", oldValue, value); + } + + public String getLatAsString() { + return data[INDEX_LAT]; + } + + public void setLongAsString(String value) { + String oldValue = data[INDEX_LONG]; + data[INDEX_LONG] = value; + getPropertyChangeSupport().firePropertyChange("longAsString", oldValue, value); + } + + public String getLongAsString() { + return data[INDEX_LONG]; + } + + public void setDepthAsString(String value) { + String oldValue = data[INDEX_DEPTH]; + data[INDEX_DEPTH] = value; + getPropertyChangeSupport().firePropertyChange("depthAsString", oldValue, value); + } + + public String getDepthAsString() { + return data[INDEX_DEPTH]; + } } Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/data/Length.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/data/Length.java 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/data/Length.java 2010-10-29 16:29:35 UTC (rev 137) @@ -170,4 +170,114 @@ public String getAge() { return data[INDEX_AGE]; } + + public void setSurveyAsString(String value) { + String oldValue = data[INDEX_SURVEY]; + data[INDEX_SURVEY] = value; + getPropertyChangeSupport().firePropertyChange("surveyAsString", oldValue, value); + } + + public String getSurveyAsString() { + return data[INDEX_SURVEY]; + } + + public void setYearAsString(String value) { + String oldValue = data[INDEX_YEAR]; + data[INDEX_YEAR] = value; + getPropertyChangeSupport().firePropertyChange("yearAsString", oldValue, value); + } + + public String getYearAsString() { + return data[INDEX_YEAR]; + } + + public void setHaulAsString(String value) { + String oldValue = data[INDEX_HAUL]; + data[INDEX_HAUL] = value; + getPropertyChangeSupport().firePropertyChange("haulAsString", oldValue, value); + } + + public String getHaulAsString() { + return data[INDEX_HAUL]; + } + + public void setSpeciesAsString(String value) { + String oldValue = data[INDEX_SPECIES]; + data[INDEX_SPECIES] = value; + getPropertyChangeSupport().firePropertyChange("speciesAsString", oldValue, value); + } + + public String getSpeciesAsString() { + return data[INDEX_SPECIES]; + } + + public void setSexAsString(String value) { + String oldValue = data[INDEX_SEX]; + data[INDEX_SEX] = value; + getPropertyChangeSupport().firePropertyChange("sexAsString", oldValue, value); + } + + public String getSexAsString() { + return data[INDEX_SEX]; + } + + public void setMaturityAsString(String value) { + String oldValue = data[INDEX_MATURITY]; + data[INDEX_MATURITY] = value; + getPropertyChangeSupport().firePropertyChange("maturityAsString", oldValue, value); + } + + public String getMaturityAsString() { + return data[INDEX_MATURITY]; + } + + public void setLengthAsString(String value) { + String oldValue = data[INDEX_LENGTH]; + data[INDEX_LENGTH] = value; + getPropertyChangeSupport().firePropertyChange("lengthAsString", oldValue, value); + } + + public String getLengthAsString() { + return data[INDEX_LENGTH]; + } + + public void setNumberAsString(String value) { + String oldValue = data[INDEX_NUMBER]; + data[INDEX_NUMBER] = value; + getPropertyChangeSupport().firePropertyChange("numberAsString", oldValue, value); + } + + public String getNumberAsString() { + return data[INDEX_NUMBER]; + } + + public void setWeightAsString(String value) { + String oldValue = data[INDEX_WEIGHT]; + data[INDEX_WEIGHT] = value; + getPropertyChangeSupport().firePropertyChange("weightAsString", oldValue, value); + } + + public String getWeightAsString() { + return data[INDEX_WEIGHT]; + } + + /** + * Age field. + * + * @param value new value to set + */ + public void setAgeAsString(String value) { + String oldValue = data[INDEX_AGE]; + data[INDEX_AGE] = value; + getPropertyChangeSupport().firePropertyChange("ageAsString", oldValue, value); + } + + /** + * Age field. + * + * @return age + */ + public String getAgeAsString() { + return data[INDEX_AGE]; + } } Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/data/Strata.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/data/Strata.java 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/data/Strata.java 2010-10-29 16:29:35 UTC (rev 137) @@ -84,4 +84,34 @@ return data[INDEX_SURFACE]; } + public void setSurveyAsString(String value) { + String oldValue = data[INDEX_SURVEY]; + data[INDEX_SURVEY] = value; + getPropertyChangeSupport().firePropertyChange("surveyAsString", oldValue, value); + } + + public String getSurveyAsString() { + return data[INDEX_SURVEY]; + } + + public void setStratumAsString(String value) { + String oldValue = data[INDEX_STRATUM]; + data[INDEX_STRATUM] = value; + getPropertyChangeSupport().firePropertyChange("stratumAsString", oldValue, value); + } + + public String getStratumAsString() { + return data[INDEX_STRATUM]; + } + + public void setSurfaceAsString(String value) { + String oldValue = data[INDEX_SURFACE]; + data[INDEX_SURFACE] = value; + getPropertyChangeSupport().firePropertyChange("surfaceAsString", oldValue, value); + } + + public String getSurfaceAsString() { + return data[INDEX_SURFACE]; + } + } Modified: trunk/coser-business/src/main/java/fr/ifremer/coser/services/ValidationService.java =================================================================== --- trunk/coser-business/src/main/java/fr/ifremer/coser/services/ValidationService.java 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/java/fr/ifremer/coser/services/ValidationService.java 2010-10-29 16:29:35 UTC (rev 137) @@ -409,7 +409,7 @@ // autre validation (rien a voir avec le reste attention) // Vérifier que le nombre d'individus dans CAPT$Nombre n'est pas 0 si le poids dans CAPT$Poids>0. - String poidsValue = tuple[Catch.INDEX_WEIGHT]; + /*String poidsValue = tuple[Catch.INDEX_WEIGHT]; try { Double poids = Double.valueOf(poidsValue); if (poids > 0 && nombre <= 0) { @@ -426,7 +426,7 @@ if (log.isWarnEnabled()) { log.warn("Can't parse '" + poidsValue + "' as double"); } - } + }*/ } catch (NumberFormatException ex) { // par trop grave, normalement les données deviennent Modified: trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Catch-error-validation.xml =================================================================== --- trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Catch-error-validation.xml 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/resources/fr/ifremer/coser/data/Catch-error-validation.xml 2010-10-29 16:29:35 UTC (rev 137) @@ -50,16 +50,20 @@ <message>You must enter a espece name.</message> </field-validator> </field> - <field name="number"> + <field name="numberAsString"> <field-validator type="checkDouble" short-circuit="true"> <param name="notAvailable">NA</param> <message>Number attribute is not a valid double</message> </field-validator> </field> - <field name="weight"> + <field name="weightAsString"> <field-validator type="checkDouble" short-circuit="true"> <param name="notAvailable">NA</param> <message>Weight attribute is not a valid double</message> </field-validator> </field> + <validator type="expression"> + <param name="expression"><![CDATA[ (weight > 0 && number > 0) || weight == 0]]></param> + <message><![CDATA[coser.business.control.error.noCatchNumberWithWeight]]></message> + </validator> </validators> \ No newline at end of file Modified: trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties =================================================================== --- trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/resources/i18n/coser-business-en_GB.properties 2010-10-29 16:29:35 UTC (rev 137) @@ -26,7 +26,6 @@ You\ must\ enter\ a\ stratum\ name.= You\ must\ enter\ a\ survey\ name.= You\ must\ enter\ a\ trait\ name.= -You\ must\ enter\ a\ year\ name.= coser.business.category.catch=Catch coser.business.category.haul=Haul coser.business.category.length=Length Modified: trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties =================================================================== --- trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/main/resources/i18n/coser-business-fr_FR.properties 2010-10-29 16:29:35 UTC (rev 137) @@ -26,7 +26,6 @@ You\ must\ enter\ a\ stratum\ name.= You\ must\ enter\ a\ survey\ name.= You\ must\ enter\ a\ trait\ name.= -You\ must\ enter\ a\ year\ name.= coser.business.category.catch=Captures coser.business.category.haul=Traits coser.business.category.length=Tailles Modified: trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java =================================================================== --- trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/test/java/fr/ifremer/coser/services/ValidationServiceTest.java 2010-10-29 16:29:35 UTC (rev 137) @@ -82,6 +82,7 @@ Catch myCatch = new Catch(); myCatch.setData(new String[]{"1", "Test survey","1999","Test trait","Test sp","NA","12"}); List<ValidationError> errors = validationService.validate(myCatch); + log.warn(errors); Assert.assertTrue(errors.isEmpty()); } Modified: trunk/coser-business/src/test/resources/log4j.properties =================================================================== --- trunk/coser-business/src/test/resources/log4j.properties 2010-10-29 16:26:32 UTC (rev 136) +++ trunk/coser-business/src/test/resources/log4j.properties 2010-10-29 16:29:35 UTC (rev 137) @@ -33,3 +33,4 @@ # Categories log4j.category.fr.ifremer.coser=DEBUG +#log4j.category.com.opensymphony.xwork2=DEBUG