From c1f83e1a614dbb73d34534b83faed8a77fcd6601 Mon Sep 17 00:00:00 2001 From: Marco Del Tufo <marco.deltufo@exact-lab.it> Date: Wed, 2 Aug 2023 15:11:01 +0000 Subject: [PATCH] Update reporting-plugins.md --- .../reporting-plugins.md | 282 ++++++++++-------- 1 file changed, 160 insertions(+), 122 deletions(-) diff --git a/docs/software-developer-documentation/legacy-server-side-extensions/reporting-plugins.md b/docs/software-developer-documentation/legacy-server-side-extensions/reporting-plugins.md index b93b7adc76e..8027182a02c 100644 --- a/docs/software-developer-documentation/legacy-server-side-extensions/reporting-plugins.md +++ b/docs/software-developer-documentation/legacy-server-side-extensions/reporting-plugins.md @@ -56,17 +56,20 @@ TABLE\_MODEL **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.DecoratingTableModelReportingPlugin - label = Analysis Summary - dataset-types = HCS_IMAGE_ANALYSIS_DATA - reporting-plugin.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.TSVViewReportingPlugin - reporting-plugin.separator = , - transformation.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.EntityLinksDecorator - transformation.link-columns = BARCODE, GENE - transformation.BARCODE.entity-kind = SAMPLE - transformation.BARCODE.default-space = DEMO - transformation.GENE.entity-kind = MATERIAL - transformation.GENE.material-type = GENE +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.DecoratingTableModelReportingPlugin +label = Analysis Summary +dataset-types = HCS_IMAGE_ANALYSIS_DATA +reporting-plugin.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.TSVViewReportingPlugin +reporting-plugin.separator = , +transformation.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.EntityLinksDecorator +transformation.link-columns = BARCODE, GENE +transformation.BARCODE.entity-kind = SAMPLE +transformation.BARCODE.default-space = DEMO +transformation.GENE.entity-kind = MATERIAL +transformation.GENE.material-type = GENE +``` + ##### Transformations @@ -101,12 +104,15 @@ TABLE\_MODEL **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.GenericDssLinkReportingPlugin - label = Summary - dataset-types = MS_DATA - download-url = https://my.domain.org:8443 - data-set-regex = summary.* - data-set-path = report +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.GenericDssLinkReportingPlugin +label = Summary +dataset-types = MS_DATA +download-url = https://my.domain.org:8443 +data-set-regex = summary.* +data-set-path = report +``` + ### AggregationService @@ -136,50 +142,56 @@ This subclass must implement the method **ExampleAggregationServicePlugin** - package ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard; - import java.io.File; - import java.util.Map; - import java.util.Properties; - import ch.systemsx.cisd.openbis.dss.generic.shared.DataSetProcessingContext; - import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel; - import ch.systemsx.cisd.openbis.generic.shared.util.IRowBuilder; - import ch.systemsx.cisd.openbis.generic.shared.util.SimpleTableModelBuilder; +```java +package ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard; +import java.io.File; +import java.util.Map; +import java.util.Properties; +import ch.systemsx.cisd.openbis.dss.generic.shared.DataSetProcessingContext; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel; +import ch.systemsx.cisd.openbis.generic.shared.util.IRowBuilder; +import ch.systemsx.cisd.openbis.generic.shared.util.SimpleTableModelBuilder; +/** + * @author Chandrasekhar Ramakrishnan + */ +public class ExampleAggregationServicePlugin extends AggregationService +{ + private static final long serialVersionUID = 1L; /** - * @author Chandrasekhar Ramakrishnan - */ - public class ExampleAggregationServicePlugin extends AggregationService + * Create a new plugin. + * + * @param properties + * @param storeRoot + */ + public ExampleAggregationServicePlugin(Properties properties, File storeRoot) + { + super(properties, storeRoot); + } + @Override + public TableModel createReport(Map<String, Object> parameters, DataSetProcessingContext context) { - private static final long serialVersionUID = 1L; - /** - * Create a new plugin. - * - * @param properties - * @param storeRoot - */ - public ExampleAggregationServicePlugin(Properties properties, File storeRoot) - { - super(properties, storeRoot); - } - @Override - public TableModel createReport(Map<String, Object> parameters, DataSetProcessingContext context) - { - SimpleTableModelBuilder builder = new SimpleTableModelBuilder(true); - builder.addHeader("String"); - builder.addHeader("Integer"); - IRowBuilder row = builder.addRow(); - row.setCell("String", "Hello"); - row.setCell("Integer", 20); - row = builder.addRow(); - row.setCell("String", parameters.get("name").toString()); - row.setCell("Integer", 30); - return builder.getTableModel(); - } + SimpleTableModelBuilder builder = new SimpleTableModelBuilder(true); + builder.addHeader("String"); + builder.addHeader("Integer"); + IRowBuilder row = builder.addRow(); + row.setCell("String", "Hello"); + row.setCell("Integer", 20); + row = builder.addRow(); + row.setCell("String", parameters.get("name").toString()); + row.setCell("Integer", 30); + return builder.getTableModel(); } +} +``` + **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.ExampleAggregationServicePlugin - label = My Report +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.ExampleAggregationServicePlugin +label = My Report +``` + #### JythonAggregationService @@ -200,9 +212,12 @@ Plugins](/display/openBISDoc2010/Jython-based+Reporting+and+Processing+Plugins). **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.JythonAggregationService - label = My Report - script-path = script.py +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.JythonAggregationService +label = My Report +script-path = script.py +``` + ### IngestionService @@ -232,54 +247,60 @@ This subclass must implement the method **ExampleDbModifyingAggregationService.java** - package ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard; - import java.io.File; - import java.util.Map; - import java.util.Properties; - import ch.systemsx.cisd.etlserver.registrator.api.v2.IDataSetRegistrationTransactionV2; - import ch.systemsx.cisd.openbis.dss.generic.shared.DataSetProcessingContext; - import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation; - import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel; - import ch.systemsx.cisd.openbis.generic.shared.util.IRowBuilder; - import ch.systemsx.cisd.openbis.generic.shared.util.SimpleTableModelBuilder; +```java +package ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard; +import java.io.File; +import java.util.Map; +import java.util.Properties; +import ch.systemsx.cisd.etlserver.registrator.api.v2.IDataSetRegistrationTransactionV2; +import ch.systemsx.cisd.openbis.dss.generic.shared.DataSetProcessingContext; +import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.TableModel; +import ch.systemsx.cisd.openbis.generic.shared.util.IRowBuilder; +import ch.systemsx.cisd.openbis.generic.shared.util.SimpleTableModelBuilder; +/** + * An example aggregation service + * + * @author Chandrasekhar Ramakrishnan + */ +public class ExampleDbModifyingAggregationService extends IngestionService<DataSetInformation> +{ + private static final long serialVersionUID = 1L; /** - * An example aggregation service - * - * @author Chandrasekhar Ramakrishnan - */ - public class ExampleDbModifyingAggregationService extends IngestionService<DataSetInformation> + * @param properties + * @param storeRoot + */ + public ExampleDbModifyingAggregationService(Properties properties, File storeRoot) + { + super(properties, storeRoot); + } + @Override + public TableModel process(IDataSetRegistrationTransactionV2 transaction, + Map<String, Object> parameters, DataSetProcessingContext context) { - private static final long serialVersionUID = 1L; - /** - * @param properties - * @param storeRoot - */ - public ExampleDbModifyingAggregationService(Properties properties, File storeRoot) - { - super(properties, storeRoot); - } - @Override - public TableModel process(IDataSetRegistrationTransactionV2 transaction, - Map<String, Object> parameters, DataSetProcessingContext context) - { - transaction.createNewSpace("NewDummySpace", null); - SimpleTableModelBuilder builder = new SimpleTableModelBuilder(true); - builder.addHeader("String"); - builder.addHeader("Integer"); - IRowBuilder row = builder.addRow(); - row.setCell("String", "Hello"); - row.setCell("Integer", 20); - row = builder.addRow(); - row.setCell("String", parameters.get("name").toString()); - row.setCell("Integer", 30); - return builder.getTableModel(); - } + transaction.createNewSpace("NewDummySpace", null); + SimpleTableModelBuilder builder = new SimpleTableModelBuilder(true); + builder.addHeader("String"); + builder.addHeader("Integer"); + IRowBuilder row = builder.addRow(); + row.setCell("String", "Hello"); + row.setCell("Integer", 20); + row = builder.addRow(); + row.setCell("String", parameters.get("name").toString()); + row.setCell("Integer", 30); + return builder.getTableModel(); } +} +``` + **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.ExampleDbModifyingAggregationService - label = My Report +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.ExampleDbModifyingAggregationService +label = My Report +``` + #### JythonIngestionService @@ -302,9 +323,12 @@ Plugins](/display/openBISDoc2010/Jython-based+Reporting+and+Processing+Plugins). **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.JythonIngestionService - label = My Report - script-path = script.py +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.JythonIngestionService +label = My Report +script-path = script.py +``` + ### JythonBasedReportingPlugin @@ -325,10 +349,13 @@ Plugins](/display/openBISDoc2010/Jython-based+Reporting+and+Processing+Plugins). **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.JythonBasedReportingPlugin - label = My Report - dataset-types = MS_DATA, UNKNOWN - script-path = script.py +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.jython.JythonBasedReportingPlugin +label = My Report +dataset-types = MS_DATA, UNKNOWN +script-path = script.py +``` + ### TSVViewReportingPlugin @@ -354,10 +381,13 @@ file. This reporting plugin works only for one data set. **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.TSVViewReportingPlugin - label = My Report - dataset-types = MS_DATA, UNKNOWN - separator = ; +``` +class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.standard.TSVViewReportingPlugin +label = My Report +dataset-types = MS_DATA, UNKNOWN +separator = ; +``` + Screening Reporting Plugins --------------------------- @@ -383,10 +413,13 @@ There is some extra support for screening. **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.screening.server.plugins.jython.ScreeningJythonBasedReportingPlugin - label = My Report - dataset-types = HCS_IMAGE - script-path = script.py +``` +class = ch.systemsx.cisd.openbis.dss.screening.server.plugins.jython.ScreeningJythonBasedReportingPlugin +label = My Report +dataset-types = HCS_IMAGE +script-path = script.py +``` + ### ScreeningJythonBasedDbModifyingAggregationServiceReportingPlugin @@ -411,10 +444,13 @@ Plugins](/display/openBISDoc2010/Jython-based+Reporting+and+Processing+Plugins). **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.screening.server.plugins.jython.ScreeningJythonBasedReportingPlugin - label = My Report - dataset-types = HCS_IMAGE - script-path = script.py +``` +class = ch.systemsx.cisd.openbis.dss.screening.server.plugins.jython.ScreeningJythonBasedReportingPlugin +label = My Report +dataset-types = HCS_IMAGE +script-path = script.py +``` + ### ScreeningJythonBasedReportingPlugin @@ -436,6 +472,8 @@ There is some extra support for screening. **plugin.properties** - class = ch.systemsx.cisd.openbis.dss.screening.server.plugins.jython.ScreeningJythonBasedAggregationServiceReportingPlugin - label = My Report - script-path = script.py +``` +class = ch.systemsx.cisd.openbis.dss.screening.server.plugins.jython.ScreeningJythonBasedAggregationServiceReportingPlugin +label = My Report +script-path = script.py +``` -- GitLab