Author: chatellier Date: 2010-01-06 10:26:32 +0000 (Wed, 06 Jan 2010) New Revision: 2877 Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/HorizontalEntityVisitor.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/RegionExportFactorXML.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/EditorHelper.java isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx isis-fish/trunk/src/main/resources/sensitivity.properties isis-fish/trunk/src/test/java/fr/ifremer/isisfish/mexico/export/RegionExplorerTest.java Log: Uncapitalize factor property names. Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/HorizontalEntityVisitor.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/HorizontalEntityVisitor.java 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/HorizontalEntityVisitor.java 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2009 Ifremer, Code Lutin, Chatellier Eric + * Copyright (C) 2009-2010 Ifremer, Code Lutin, Chatellier Eric * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -84,6 +84,8 @@ @Override public void visit(TopiaEntity e, String name, Class<?> type, Object value) { // si c'est une entité + + // FIXME only hack about Equation is used instead of Topia visitor if (value instanceof TopiaEntity && !(value instanceof Equation)) { TopiaEntity entity = (TopiaEntity) value; toVisitEntities.add(entity); Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/RegionExportFactorXML.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/RegionExportFactorXML.java 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/mexico/export/RegionExportFactorXML.java 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2009 Ifremer, Code Lutin, Chatellier Eric + * Copyright (C) 2009-2010 Ifremer, Code Lutin, Chatellier Eric * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -101,8 +101,7 @@ // if there is a "Impl" in entityName, remove it factorClass = factorClass.replaceFirst("Impl", ""); - // FIXME propertyName with capitalize first letter is a bad idea - String factorName = factorClass + "." + StringUtils.capitalize(propertyName); + String factorName = factorClass + "." + propertyName; // test if factor name is enabled // TODO move SensitivityUtils outside of UI Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/input/InputContentUI.jaxx 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,6 +1,6 @@ <!-- /* *##% - * Copyright (C) 2005 - 2009 Ifremer, Code Lutin + * Copyright (C) 2005 - 2010 Ifremer, Code Lutin * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -24,7 +24,7 @@ <!-- True only for sensitivity simulation --> <Boolean id='sensitivity' javaBean='false'/> - + <!-- Next button title --> <java.lang.String id='buttonTitle' javaBean='""'/> @@ -33,7 +33,7 @@ <!-- Layer bloquant completement la saisie --> <jaxx.runtime.swing.BlockingLayerUI id='layerUI' - blockingColor='{new Color(50,50,50)}' /> + blockingColor='{new Color(25,25,25)}' /> <!-- Layer avec les icones permettant d'ajouter des facteurs --> <jaxx.runtime.swing.BlockingLayerUI2 id='layerUI2' @@ -48,14 +48,15 @@ }}' /> <script><![CDATA[ -import fr.ifremer.isisfish.ui.WelcomePanelUI; +import javax.swing.JComponent; import fr.ifremer.isisfish.entities.FisheryRegion; -import org.nuiton.topia.persistence.TopiaEntity; -import javax.swing.JComponent; import fr.ifremer.isisfish.ui.sensitivity.SensitivityUtils; import fr.ifremer.isisfish.ui.sensitivity.FactorWizardUI; import fr.ifremer.isisfish.ui.sensitivity.EditorHelper; import fr.ifremer.isisfish.ui.sensitivity.SensitivityTabbedPaneListener; +import fr.ifremer.isisfish.ui.WelcomePanelUI; +import org.nuiton.topia.persistence.TopiaEntity; +import org.apache.commons.lang.StringUtils; protected ChangeListener tabbedPaneChangeListener; @@ -107,28 +108,34 @@ FisheryRegion fisheryRegion = map.getFisheryRegion(); FisheryRegion regionFromContext = getRegion(); if (fisheryRegion == null || !fisheryRegion.equals(regionFromContext)) { - log.info("use now " + regionFromContext + " in map " + map); + if (log.isInfoEnabled()) { + log.info("Use now " + regionFromContext + " in map " + map); + } map.setFisheryRegion(regionFromContext); } } - -// TODO this method cause a lot of probleme -// must cast TopiaEntity to impl in inherited UIs... -// 20090602 chatellier : useless method ? cause a lot of cast problem -//public void setBean(TopiaEntity t) {} - public void setLayer(boolean active) { if (this.get$objectMap() != null && active) { for (JComponent boxed : SwingUtil.getLayeredComponents(this)) { // Verifie si dans l'entré existe dans le fichier sensitivity.properties Class classBean = (Class)boxed.getClientProperty("bean"); String method = (String)boxed.getClientProperty("method"); + + // test if factor is enabled boolean isSensitivityFactorEnabled = false; if (classBean != null) { - String sensitivityFactorName = classBean.getSimpleName().replace("Impl", "") + "." + method; + // classBean is defined in property file without "Impl" + String className = classBean.getSimpleName().replace("Impl", ""); + + // ensure that method name is uncapitalized + method = StringUtils.uncapitalize(method); + + String sensitivityFactorName = className + "." + method; isSensitivityFactorEnabled = SensitivityUtils.isSensitivityFactorEnabled(sensitivityFactorName); } + + // install correct layer depending if factor enable if (isSensitivityFactorEnabled) { jaxx.runtime.swing.BlockingLayerUI2 ui = layerUI2.clone(); SwingUtil.getLayer(boxed).setUI(ui); @@ -148,6 +155,10 @@ * @param e l'event initial intersepté par le layer */ protected void accept(ActionEvent e) { + if (log.isDebugEnabled()) { + log.debug("Event intercepted on " + e); + } + JComponent source = (JComponent) e.getSource(); Class classBean = (Class)source.getClientProperty("bean"); String beanID = (String)source.getClientProperty("beanID"); @@ -178,7 +189,7 @@ for (ChangeListener changeListener : tabbedPane.getChangeListeners()) { tabbedPane.removeChangeListener(changeListener); } - + if (tabbedPaneChangeListener == null) { if (isSensitivity()) { tabbedPaneChangeListener = new SensitivityTabbedPaneListener(); @@ -186,7 +197,7 @@ tabbedPaneChangeListener = new InputTabbedPaneListener(); } } - + tabbedPane.addChangeListener(tabbedPaneChangeListener); } Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/EditorHelper.java =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/EditorHelper.java 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/EditorHelper.java 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2009 Ifremer, Code Lutin + * Copyright (C) 2009-2010 Ifremer, Code Lutin * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -35,7 +35,6 @@ import jaxx.runtime.JAXXInitialContext; import jaxx.runtime.swing.editor.NumberEditor; -import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.math.matrix.MatrixND; @@ -784,7 +783,7 @@ } String topiaId = path.substring(0, path.lastIndexOf('#')); - String property = StringUtils.capitalize(path.substring(path.lastIndexOf('#') + 1)); + String property = path.substring(path.lastIndexOf('#') + 1); Class<?> typeClazz = null; try { Modified: isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx =================================================================== --- isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/main/java/fr/ifremer/isisfish/ui/sensitivity/SensitivityTabUI.jaxx 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,6 +1,6 @@ <!-- /* *##% - * Copyright (C) 2005 - 2009 Ifremer, Code Lutin + * Copyright (C) 2005 - 2010 Ifremer, Code Lutin * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -109,7 +109,6 @@ if (log.isDebugEnabled()) { log.debug("Component found is " + component2); } - wizard.initExisting(component2, selectedFactor); wizard.pack(); wizard.setVisible(true); Modified: isis-fish/trunk/src/main/resources/sensitivity.properties =================================================================== --- isis-fish/trunk/src/main/resources/sensitivity.properties 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/main/resources/sensitivity.properties 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,45 +1,44 @@ # this file contains authorized entities factors creation -EffortDescription.CrewFoodCost -EffortDescription.CrewShareRate -EffortDescription.CrewSize -EffortDescription.FishingOperation -EffortDescription.FishingOperationDuration -EffortDescription.FixedCrewSalary -EffortDescription.GearsNumberPerOperation -EffortDescription.LandingCosts -EffortDescription.OtherRunningCost -EffortDescription.RepairAndMaintenanceGearCost -EffortDescription.UnitCostOfFishing -Gear.PossibleValue -Gear.StandardisationFactor -Metier.GearParameterValue -Population.Capturability -PopulationGroup.ReproductionRate -Population.Growth -Population.GrowthReverse -Population.MeanWeight -Population.MonthGapBetweenReproRecrutement -Population.NaturalDeathRate -Population.Price -Population.RecruitmentDistribution -Population.ReproductionEquation -PopulationSeasonInfo.LengthChangeMatrix -PopulationSeasonInfo.MigrationEquation -PopulationSeasonInfo.EmigrationEquation -PopulationSeasonInfo.ImmigrationEquation -SetOfVessels.FixedCosts -SetOfVessels.NumberOfVessels -SetOfVessels.TechnicalEfficiencyEquation -Strategy.InactivityEquation -StrategyMonthInfo.MinInactivityDays -StrategyMonthInfo.ProportionMetier -Strategy.ProportionSetOfVessels -TripType.MinTimeBetweenTrip -TripType.TripDuration -VesselType.ActivityRange -VesselType.Length -VesselType.MaxTripDuration -VesselType.MinCrewSize -VesselType.Speed -VesselType.TripType -VesselType.UnitFuelCostOfTravel \ No newline at end of file +EffortDescription.crewFoodCost +EffortDescription.crewShareRate +EffortDescription.crewSize +EffortDescription.fishingOperation +EffortDescription.fishingOperationDuration +EffortDescription.fixedCrewSalary +EffortDescription.gearsNumberPerOperation +EffortDescription.landingCosts +EffortDescription.otherRunningCost +EffortDescription.repairAndMaintenanceGearCost +EffortDescription.unitCostOfFishing +Gear.possibleValue +Gear.standardisationFactor +Metier.gearParameterValue +Population.capturability +PopulationGroup.reproductionRate +Population.growth +Population.growthReverse +Population.meanWeight +Population.monthGapBetweenReproRecrutement +Population.naturalDeathRate +Population.price +Population.recruitmentDistribution +Population.reproductionEquation +PopulationSeasonInfo.lengthChangeMatrix +PopulationSeasonInfo.migrationEquation +PopulationSeasonInfo.emigrationEquation +PopulationSeasonInfo.immigrationEquation +SetOfVessels.fixedCosts +SetOfVessels.numberOfVessels +SetOfVessels.technicalEfficiencyEquation +Strategy.inactivityEquation +StrategyMonthInfo.minInactivityDays +StrategyMonthInfo.proportionMetier +Strategy.proportionSetOfVessels +TripType.minTimeBetweenTrip +TripType.tripDuration +VesselType.activityRange +VesselType.length +VesselType.maxTripDuration +VesselType.minCrewSize +VesselType.speed +VesselType.unitFuelCostOfTravel \ No newline at end of file Modified: isis-fish/trunk/src/test/java/fr/ifremer/isisfish/mexico/export/RegionExplorerTest.java =================================================================== --- isis-fish/trunk/src/test/java/fr/ifremer/isisfish/mexico/export/RegionExplorerTest.java 2010-01-06 10:15:51 UTC (rev 2876) +++ isis-fish/trunk/src/test/java/fr/ifremer/isisfish/mexico/export/RegionExplorerTest.java 2010-01-06 10:26:32 UTC (rev 2877) @@ -1,5 +1,5 @@ /* *##% - * Copyright (C) 2009 Ifremer, Code Lutin, Chatellier Eric + * Copyright (C) 2009-2010 Ifremer, Code Lutin, Chatellier Eric * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -101,14 +101,14 @@ */ @Test public void testAllEntityPresence() throws TopiaException, StorageException, IOException { - // get region to export + // get region to export RegionStorage regionStorage = RegionStorage.getRegion("Golfe de Gascogne"); TopiaContext context = regionStorage.getStorage().beginTransaction(); FisheryRegion fisheryRegion = RegionStorage.getFisheryRegion(context); // export implementation File file = File.createTempFile("xmlexport-", ".xml"); - file.deleteOnExit(); + //file.deleteOnExit(); RegionExportFactorXML xmlFactorExport = new RegionExportFactorXML(file); // explore region (export as xml)
participants (1)
-
chatellier@users.labs.libre-entreprise.org