Author: fdesbois Date: 2010-06-30 16:53:28 +0000 (Wed, 30 Jun 2010) New Revision: 584 Log: Evo #2352 : Cartography for contacts : - Add ServiceChart - Add method for export (not fully implemented) - Add dependencies on ServiceChart and ServiceSynthesis to export Boat District Kml (managed in AppModule for Tapestry + Use WaoServiceFactory for tests) - Add javadoc Added: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoServiceFactory.java trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceChartEmpty.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/ServiceChartImpl.java Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContext.java trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReader.java trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderFactory.java trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderJak.java trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderXpp3.java trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties trunk/wao-business/src/main/xmi/wao.zargo trunk/wao-business/src/test/java/fr/ifremer/wao/AbstractServiceTest.java trunk/wao-business/src/test/java/fr/ifremer/wao/TestManager.java trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceCartographyImplTest.java trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContext.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContext.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContext.java 2010-06-30 16:53:28 UTC (rev 584) @@ -134,9 +134,23 @@ */ Date getCurrentDate(); + /** + * Instantiate a new {@code WaoQueryBuilder} to construct queries (using filters). + * + * @return a new WaoQueryBuilder + */ WaoQueryBuilder newQueryBuilder(); /** + * Retrieve the WaoServiceFactory used to instantiate services. + * + * @return the WaoServiceFactory + * @see WaoServiceFactory + * @since 1.5 + */ + WaoServiceFactory getServiceFactory(); + + /** * Retrieve the activityCalendarAccessLogger to manage logging for user * which access to boat activity calendars. This method will create the * correct appender if not already defined in the contet (1 file of 10MB Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoContextImpl.java 2010-06-30 16:53:28 UTC (rev 584) @@ -86,6 +86,8 @@ private org.apache.log4j.Logger activityCalendarAccessLogger; + private WaoServiceFactory serviceFactory; + @Override public Date getCurrentDate() { if (currentDate == null) { @@ -99,6 +101,14 @@ return new WaoQueryBuilder(); } + @Override + public WaoServiceFactory getServiceFactory() { + if (serviceFactory == null) { + serviceFactory = new WaoServiceFactory(this); + } + return serviceFactory; + } + public void setCurrentDate(Date date) { currentDate = date; } Added: trunk/wao-business/src/main/java/fr/ifremer/wao/WaoServiceFactory.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/WaoServiceFactory.java (rev 0) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/WaoServiceFactory.java 2010-06-30 16:53:28 UTC (rev 584) @@ -0,0 +1,140 @@ +package fr.ifremer.wao; + +import fr.ifremer.wao.service.ServiceBoat; +import fr.ifremer.wao.service.ServiceBoatImpl; +import fr.ifremer.wao.service.ServiceCartography; +import fr.ifremer.wao.service.ServiceCartographyImpl; +import fr.ifremer.wao.service.ServiceChart; +import fr.ifremer.wao.service.ServiceChartEmpty; +import fr.ifremer.wao.service.ServiceContact; +import fr.ifremer.wao.service.ServiceContactImpl; +import fr.ifremer.wao.service.ServiceNews; +import fr.ifremer.wao.service.ServiceNewsImpl; +import fr.ifremer.wao.service.ServiceReferential; +import fr.ifremer.wao.service.ServiceReferentialImpl; +import fr.ifremer.wao.service.ServiceSampling; +import fr.ifremer.wao.service.ServiceSamplingImpl; +import fr.ifremer.wao.service.ServiceSynthesis; +import fr.ifremer.wao.service.ServiceSynthesisImpl; +import fr.ifremer.wao.service.ServiceUser; +import fr.ifremer.wao.service.ServiceUserImpl; + +/** + * Instantiate services and manage dependencies between them. The Factory need + * the WaoContext to work. Only one instance of each service will be kept when + * they are needed. This factory use the Lazy and IoC principles. + * <p /> + * Created: 30 juin 2010 + * + * @author fdesbois <fdesbois at codelutin.com> + * @version $Id$ + * @since 1.5 + */ +public class WaoServiceFactory { + + protected WaoContext context; + + protected ServiceBoat serviceBoat; + + protected ServiceReferential serviceReferential; + + protected ServiceNews serviceNews; + + protected ServiceSampling serviceSampling; + + protected ServiceSynthesis serviceSynthesis; + + protected ServiceUser serviceUser; + + protected ServiceContact serviceContact; + + protected ServiceCartography serviceCartography; + + protected ServiceChart serviceChart; + + protected WaoServiceFactory(WaoContext context) { + this.context = context; + } + + public ServiceBoat getServiceBoat() { + if (serviceBoat == null) { + ServiceBoatImpl instance = new ServiceBoatImpl(); + instance.setContext(context); + serviceBoat = instance; + } + return serviceBoat; + } + + public ServiceReferential getServiceReferential() { + if (serviceReferential == null) { + ServiceReferentialImpl instance = new ServiceReferentialImpl(); + instance.setContext(context); + serviceReferential = instance; + } + return serviceReferential; + } + + public ServiceNews getServiceNews() { + if (serviceNews == null) { + ServiceNewsImpl instance = new ServiceNewsImpl(); + instance.setContext(context); + serviceNews = instance; + } + return serviceNews; + } + + public ServiceSampling getServiceSampling() { + if (serviceSampling == null) { + ServiceSamplingImpl instance = new ServiceSamplingImpl(); + instance.setContext(context); + serviceSampling = instance; + } + return serviceSampling; + } + + public ServiceSynthesis getServiceSynthesis() { + if (serviceSynthesis == null) { + ServiceSynthesisImpl instance = new ServiceSynthesisImpl(); + instance.setContext(context); + serviceSynthesis = instance; + } + return serviceSynthesis; + } + + public ServiceUser getServiceUser() { + if (serviceUser == null) { + ServiceUserImpl instance = new ServiceUserImpl(); + instance.setContext(context); + serviceUser = instance; + } + return serviceUser; + } + + public ServiceContact getServiceContact() { + if (serviceContact == null) { + ServiceContactImpl instance = new ServiceContactImpl(); + instance.setContext(context); + serviceContact = instance; + } + return serviceContact; + } + + public ServiceCartography getServiceCartography() { + if (serviceCartography == null) { + ServiceCartographyImpl instance = new ServiceCartographyImpl(); + instance.setContext(context); + instance.setServiceChart(getServiceChart()); + instance.setServiceSynthesis(getServiceSynthesis()); + serviceCartography = instance; + } + return serviceCartography; + } + + public ServiceChart getServiceChart() { + if (serviceChart == null) { + serviceChart = new ServiceChartEmpty(); + } + return serviceChart; + } + +} Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReader.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReader.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReader.java 2010-06-30 16:53:28 UTC (rev 584) @@ -6,12 +6,28 @@ import java.io.InputStream; /** - * Kml reader for BoatDistrict. + * Kml reader for BoatDistrict. Typical usage : + * <pre> + * BoatDistrictKmlReader reader = new ....(); + * try { + * reader.init(inputStream); + * while (reader.hasNext()) { + * BoatDistrictData data = reader.readNext(); + * // data treatment + * } + * } finally { + * reader.close(); + * } + * </pre> + * Known implementations : + * {@link BoatDistrictKmlReaderJak} and {@link BoatDistrictKmlReaderXpp3} * <p /> * Created: 30 juin 2010 * * @author fdesbois <fdesbois at codelutin.com> * @version $Id$ + * @since 1.5 + * @see BoatDistrictKmlReaderFactory */ public interface BoatDistrictKmlReader { @@ -23,9 +39,24 @@ */ void init(InputStream stream) throws IOException; + /** + * Test if there is next element to read. + * + * @return true if other element can be read + */ boolean hasNext(); + /** + * Read the next BoatDistrictData element. + * + * @return the next BoatDistrictData + */ BoatDistrictData readNext(); + /** + * Close the reader. + * + * @throws IOException for error on close + */ void close() throws IOException; } Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderFactory.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderFactory.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderFactory.java 2010-06-30 16:53:28 UTC (rev 584) @@ -4,6 +4,8 @@ import java.io.InputStream; /** + * Factory for BoatDistrictKmlReader. + * <p /> * Created: 30 juin 2010 * * @author fdesbois <fdesbois at codelutin.com> @@ -11,6 +13,13 @@ */ public class BoatDistrictKmlReaderFactory { + /** + * Create a new Reader using Jak. + * + * @param input InputStream for initialization + * @return a new instance of {@link BoatDistrictKmlReaderJak} + * @throws IOException for initilization errors + */ public static BoatDistrictKmlReader newReaderJak(InputStream input) throws IOException { BoatDistrictKmlReader reader = new BoatDistrictKmlReaderJak(); @@ -18,7 +27,13 @@ return reader; } - + /** + * Create a new Reader using Xpp3. + * + * @param input InputStream for initialization + * @return a new instance of {@link BoatDistrictKmlReaderXpp3} + * @throws IOException for initilization errors + */ public static BoatDistrictKmlReader newReaderXpp3(InputStream input) throws IOException { BoatDistrictKmlReader reader = new BoatDistrictKmlReaderXpp3(); Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderJak.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderJak.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderJak.java 2010-06-30 16:53:28 UTC (rev 584) @@ -83,6 +83,7 @@ @Override public void close() { + districts = null; } } Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderXpp3.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderXpp3.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/io/kml/BoatDistrictKmlReaderXpp3.java 2010-06-30 16:53:28 UTC (rev 584) @@ -128,6 +128,8 @@ @Override public void close() throws IOException { - reader.close(); + if (reader != null) { + reader.close(); + } } } Modified: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceCartographyImpl.java 2010-06-30 16:53:28 UTC (rev 584) @@ -3,6 +3,8 @@ import fr.ifremer.wao.WaoContext; import fr.ifremer.wao.WaoDAOHelper; import fr.ifremer.wao.WaoException; +import fr.ifremer.wao.bean.ContactStateStatistics; +import fr.ifremer.wao.entity.Company; import fr.ifremer.wao.io.BoatDistrictData; import fr.ifremer.wao.io.kml.BoatDistrictKmlReader; import fr.ifremer.wao.io.kml.BoatDistrictKmlReaderFactory; @@ -17,6 +19,7 @@ import java.io.IOException; import java.io.InputStream; +import java.util.Collection; /** * Created: 29 juin 2010 @@ -32,10 +35,22 @@ private WaoContext context; + private ServiceChart serviceChart; + + private ServiceSynthesis serviceSynthesis; + public void setContext(WaoContext context) { this.context = context; } + public void setServiceChart(ServiceChart serviceChart) { + this.serviceChart = serviceChart; + } + + public void setServiceSynthesis(ServiceSynthesis serviceSynthesis) { + this.serviceSynthesis = serviceSynthesis; + } + @Override protected TopiaContext beginTransaction() throws TopiaException { return context.beginTransaction(); @@ -60,6 +75,7 @@ BoatDistrictDAO dao = WaoDAOHelper.getBoatDistrictDAO(transaction); + // Instantiate KmlReader for BoatDistrict BoatDistrictKmlReader reader = BoatDistrictKmlReaderFactory.newReaderJak(input); @@ -76,6 +92,7 @@ " _ name = " + districtName); } + // Only for no empty code if (districtCode != null) { BoatDistrict district = dao.findByCode(districtCode); @@ -105,4 +122,16 @@ return results; } + + @Override + protected InputStream executeExportContactStatisticsKml(TopiaContext transaction, + Company company) { + + Collection<ContactStateStatistics> data = + serviceSynthesis.getContactStateStatistics(company, null); + + String chartUrl = serviceChart.getContactStatePieChartUrl(data); + + return null; + } } Added: trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceChartEmpty.java =================================================================== --- trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceChartEmpty.java (rev 0) +++ trunk/wao-business/src/main/java/fr/ifremer/wao/service/ServiceChartEmpty.java 2010-06-30 16:53:28 UTC (rev 584) @@ -0,0 +1,19 @@ +package fr.ifremer.wao.service; + +import fr.ifremer.wao.bean.ContactStateStatistics; + +import java.util.Collection; + +/** + * Created: 30 juin 2010 + * + * @author fdesbois <fdesbois at codelutin.com> + * @version $Id$ + */ +public class ServiceChartEmpty implements ServiceChart { + + @Override + public String getContactStatePieChartUrl(Collection<ContactStateStatistics> data) { + return ""; + } +} Modified: trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties =================================================================== --- trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/resources/i18n/wao-business-en_GB.properties 2010-06-30 16:53:28 UTC (rev 584) @@ -25,6 +25,7 @@ wao.error.serviceBoat.getShipOwnerNamesContains= wao.error.serviceBoat.importActivityCalendarCsv= wao.error.serviceBoat.importBoatCsv= +wao.error.serviceCartography.exportContactStatisticsKml= wao.error.serviceCartography.importBoatDistrictKml= wao.error.serviceContact.exportContactCsv= wao.error.serviceContact.getContacts= Modified: trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties =================================================================== --- trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/main/resources/i18n/wao-business-fr_FR.properties 2010-06-30 16:53:28 UTC (rev 584) @@ -24,6 +24,7 @@ wao.error.serviceBoat.getShipOwnerNamesContains= wao.error.serviceBoat.importActivityCalendarCsv=Probl\u00E8me d'import du fichier CSV des calendriers d'activit\u00E9 wao.error.serviceBoat.importBoatCsv=Probl\u00E8me d'import du fichier CSV. V\u00E9rifiez l'en-t\u00EAte du fichier \: [ NAVS_COD,CARN_NOM,CARN_LONGUEUR_HT,CARN_ANNEE,QUARTIER_IMMA,PER_COD,PER_NOM,PER_PRENOM,NAVS_ACTIVE ]. Voir documentation pour plus de d\u00E9tails. +wao.error.serviceCartography.exportContactStatisticsKml= wao.error.serviceCartography.importBoatDistrictKml=Impossible d'importer les coordonn\u00E9es des quartiers des navires. V\u00E9rifiez la documentation pour le bon format du fichier Kml. wao.error.serviceContact.exportContactCsv=Impossible d'exporter les contacts wao.error.serviceContact.getContacts=Impossible de filtrer la liste des contacts Modified: trunk/wao-business/src/main/xmi/wao.zargo =================================================================== (Binary files differ) Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/AbstractServiceTest.java =================================================================== --- trunk/wao-business/src/test/java/fr/ifremer/wao/AbstractServiceTest.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/test/java/fr/ifremer/wao/AbstractServiceTest.java 2010-06-30 16:53:28 UTC (rev 584) @@ -80,7 +80,7 @@ logger.debug("Start manager"); } manager.start(); - serviceSampling = manager.getServiceSampling(); + serviceSampling = (ServiceSamplingImpl)manager.getServiceSampling(); //initialize(); } Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/TestManager.java =================================================================== --- trunk/wao-business/src/test/java/fr/ifremer/wao/TestManager.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/test/java/fr/ifremer/wao/TestManager.java 2010-06-30 16:53:28 UTC (rev 584) @@ -27,7 +27,10 @@ import fr.ifremer.wao.service.ServiceBoat; import fr.ifremer.wao.service.ServiceBoatImpl; +import fr.ifremer.wao.service.ServiceCartography; import fr.ifremer.wao.service.ServiceCartographyImpl; +import fr.ifremer.wao.service.ServiceChart; +import fr.ifremer.wao.service.ServiceChartEmpty; import fr.ifremer.wao.service.ServiceContact; import fr.ifremer.wao.service.ServiceContactImpl; import fr.ifremer.wao.service.ServiceNews; @@ -120,51 +123,39 @@ } public ServiceBoat getServiceBoat() { - ServiceBoatImpl instance = new ServiceBoatImpl(); - instance.setContext(getContext()); - return instance; + return context.getServiceFactory().getServiceBoat(); } public ServiceReferential getServiceReferential() { - ServiceReferentialImpl instance = new ServiceReferentialImpl(); - instance.setContext(getContext()); - return instance; + return context.getServiceFactory().getServiceReferential(); } public ServiceNews getServiceNews() { - ServiceNewsImpl instance = new ServiceNewsImpl(); - instance.setContext(getContext()); - return instance; + return context.getServiceFactory().getServiceNews(); } - public ServiceSamplingImpl getServiceSampling() { - ServiceSamplingImpl instance = new ServiceSamplingImpl(); - instance.setContext(getContext()); - return instance; + public ServiceSampling getServiceSampling() { + return context.getServiceFactory().getServiceSampling(); } public ServiceSynthesis getServiceSynthesis() { - ServiceSynthesisImpl instance = new ServiceSynthesisImpl(); - instance.setContext(getContext()); - return instance; + return context.getServiceFactory().getServiceSynthesis(); } public ServiceUser getServiceUser() { - ServiceUserImpl instance = new ServiceUserImpl(); - instance.setContext(getContext()); - return instance; + return context.getServiceFactory().getServiceUser(); } - public ServiceContactImpl getServiceContact() { - ServiceContactImpl instance = new ServiceContactImpl(); - instance.setContext(getContext()); - return instance; + public ServiceContact getServiceContact() { + return context.getServiceFactory().getServiceContact(); } - public ServiceCartographyImpl getServiceCartography() { - ServiceCartographyImpl instance = new ServiceCartographyImpl(); - instance.setContext(getContext()); - return instance; + public ServiceCartography getServiceCartography() { + return context.getServiceFactory().getServiceCartography(); } + public ServiceChart getServiceChart() { + return context.getServiceFactory().getServiceChart(); + } + } Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceCartographyImplTest.java =================================================================== --- trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceCartographyImplTest.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceCartographyImplTest.java 2010-06-30 16:53:28 UTC (rev 584) @@ -88,4 +88,12 @@ input = getClass().getResourceAsStream("/import/activity.csv"); ImportResults results = service.importBoatDistrictKml(input); } + + @Test + public void testExportContactStatisticsKml() { + /** PREPARE DATA **/ + + /** EXEC METHOD **/ + service.exportContactStatisticsKml(null); + } } Modified: trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java =================================================================== --- trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-business/src/test/java/fr/ifremer/wao/service/ServiceContactInternalTest.java 2010-06-30 16:53:28 UTC (rev 584) @@ -103,7 +103,7 @@ public void setUp() throws Exception { manager.start(); MockitoAnnotations.initMocks(this); - service = manager.getServiceContact(); + service = (ServiceContactImpl)manager.getServiceContact(); sampleMonth = null; sampleRow = null; boat = null; Modified: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java 2010-06-30 15:34:55 UTC (rev 583) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/AppModule.java 2010-06-30 16:53:28 UTC (rev 584) @@ -31,6 +31,7 @@ import fr.ifremer.wao.service.ServiceBoatImpl; import fr.ifremer.wao.service.ServiceCartography; import fr.ifremer.wao.service.ServiceCartographyImpl; +import fr.ifremer.wao.service.ServiceChart; import fr.ifremer.wao.service.ServiceContact; import fr.ifremer.wao.service.ServiceContactImpl; import fr.ifremer.wao.service.ServiceNews; @@ -151,6 +152,11 @@ return instance; } + public ServiceChart buildServiceChart() { + ServiceChartImpl instance = new ServiceChartImpl(); + return instance; + } + public ServiceAuthentication buildServiceAuthentication( ApplicationStateManager stateManager) { ServiceAuthentication instance = @@ -158,9 +164,13 @@ return instance; } - public ServiceCartography buildServiceCartography(WaoManager manager) { + public ServiceCartography buildServiceCartography(WaoManager manager, + ServiceChart serviceChart, + ServiceSynthesis serviceSynthesis) { ServiceCartographyImpl instance = new ServiceCartographyImpl(); instance.setContext(manager.getContext()); + instance.setServiceChart(serviceChart); + instance.setServiceSynthesis(serviceSynthesis); return instance; } Added: trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/ServiceChartImpl.java =================================================================== --- trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/ServiceChartImpl.java (rev 0) +++ trunk/wao-ui/src/main/java/fr/ifremer/wao/ui/services/ServiceChartImpl.java 2010-06-30 16:53:28 UTC (rev 584) @@ -0,0 +1,22 @@ +package fr.ifremer.wao.ui.services; + +import fr.ifremer.wao.bean.ContactStateStatistics; +import fr.ifremer.wao.service.ServiceChart; + +import java.util.Collection; + +/** + * Created: 30 juin 2010 + * + * @author fdesbois <fdesbois at codelutin.com> + * @version $Id$ + */ +public class ServiceChartImpl implements ServiceChart { + + @Override + public String getContactStatePieChartUrl(Collection<ContactStateStatistics> data) { + // Create Url compatible for Google Chart API and Eastwood (JFreeChart) + return null; + } + +}