diff --git a/screening/dist/etc/service.properties b/screening/dist/etc/service.properties index 2291fe5b4572b3fc7379e50d9559a81a9f839631..f894bf173935353d80510f8b401504a57493d87d 100644 --- a/screening/dist/etc/service.properties +++ b/screening/dist/etc/service.properties @@ -1,39 +1,46 @@ # Unique code of this Data Store Server. Not more than 40 characters. -data-store-server-code = my-dss +data-store-server-code = dss-screening + +# host name of the machine on which the datastore server is running +host-address = https://localhost + +# parent directory of the store directory and all the dropboxes +root-dir = data # The root directory of the data store -storeroot-dir = targets/store +storeroot-dir = ${root-dir}/store # The directory where the command queue file is located; defaults to storeroot-dir commandqueue-dir = # Port port = 8889 +use-ssl = true # Session timeout in minutes -session-timeout = 30 +session-timeout = 720 # Path to the keystore -keystore.path = dist/etc/openBIS.keystore - +keystore.path = etc/openBIS.keystore # Password of the keystore keystore.password = changeit - # Key password of the keystore keystore.key-password = changeit # The check interval (in seconds) -check-interval = 5 +check-interval = 60 # The time-out for clean up work in the shutdown sequence (in seconds). # Note that that the maximal time for the shutdown sequence to complete can be as large # as twice this time. -shutdown-timeout = 2 +# Remark: On a network file system, it is not recommended to turn this value to something +# lower than 180. +shutdown-timeout = 180 # If free disk space goes below value defined here, a notification email will be sent. # Value must be specified in kilobytes (1048576 = 1024 * 1024 = 1GB). If no high water mark is # specified or if value is negative, the system will not be watching. -highwater-mark = 1048576 +highwater-mark = -1 # If a data set is successfully registered it sends out an email to the registrator. # If this property is not specified, no email is sent to the registrator. This property @@ -41,37 +48,41 @@ highwater-mark = 1048576 notify-successful-registration = false # The URL of the openBIS server -server-url = http://localhost:8888/openbis +server-url = ${host-address}:8443 # The username to use when contacting the openBIS server -username = etlserver_imsb +username = etlserver -# The password to use when contacting the openBIS server -password = doesnotmatter +# The password for the etlserver user who contacts the openBIS server +password = etlserver_password -# The base URL for Web client access. -download-url = http://localhost:8889 +# The base URL for Web client access to the data store server. +download-url = ${host-address}:8444 # SMTP properties (must start with 'mail' to be considered). -mail.smtp.host = file://targets -# mail.from = datastore_server@localhost +# The current configuration saves the emails in the file system in the root directory +mail.smtp.host = file://${root-dir} +# mail.smtp.host = localhost +# mail.from = datastore_server@ethz.ch # mail.smtp.user = # mail.smtp.password = -# Maximum number of retries if renaming failed. -# renaming.failure.max-retries = 12 +# --------------------------------------------------------------------------- +# (optional) archiver configuration +# --------------------------------------------------------------------------- -# The number of milliseconds to wait before retrying to execute the renaming process. -# renaming.failure.millis-to-sleep = 5000 +# Configuration of an archiver task. All properties are prefixed with 'archiver.'. -# Globally used separator character which separates entities in a data set file name -data-set-file-name-entity-separator = _ +# Archiver class specification (together with the list of packages this class belongs to). +#archiver.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.DemoArchiver -# The period of no write access that needs to pass before an incoming data item is considered -# complete and ready to be processed (in seconds) [default: 300]. -# Valid only when auto-detection method is used to determine if an incoming data are ready to be processed. -quiet-period = 3 +# --------------------------------------------------------------------------- +# INTERNAL CONFIGURATION, +# Do not change this part unless you are developing openBIS extensions. +# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- +# screening database specification # --------------------------------------------------------------------------- data-sources = imaging-db @@ -86,108 +97,181 @@ imaging-db.scriptFolder = sql # --------------------------------------------------------------------------- # Comma separated names of reporting plugins. Each plugin should have configuration properties prefixed with its name. -reporting-plugins = plate-image-reporter, plate-image-params-reporter, demo-reporter +reporting-plugins = default-plate-image-analysis, plate-image-analysis-graph, plate-image-params-reporter -# Label of the plugin which will be shown for the users. -demo-reporter.label = Show Dataset Size -# Comma separated list of dataset type codes which can be handled by this plugin. -demo-reporter.dataset-types = UNKNOWN -# Plugin class specification (together with the list of packages this class belongs to). -demo-reporter.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.DemoReportingPlugin -# The property file. Its content will be passed as a parameter to the plugin. -demo-reporter.properties-file = +default-plate-image-analysis.label = Image Analysis Results +default-plate-image-analysis.dataset-types = HCS_IMAGE_ANALYSIS_DATA, HCS_ANALYSIS_PER_GENE +default-plate-image-analysis.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ImageAnalysisMergedRowsReportingPlugin +default-plate-image-analysis.properties-file = -# Label of the plugin which will be shown for the users. -plate-image-reporter.label = Show Plate Images -# Comma separated list of dataset type codes which can be handled by this plugin. -plate-image-reporter.dataset-types = HCS_IMAGE -# Plugin class specification (together with the list of packages this class belongs to). -plate-image-reporter.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.ScreeningImageReportingPlugin -# The property file. Its content will be passed as a parameter to the plugin. -plate-image-reporter.properties-file = +plate-image-analysis-graph.label = Image Analysis Graphs +plate-image-analysis-graph.dataset-types = HCS_IMAGE_ANALYSIS_DATA, HCS_ANALYSIS_PER_GENE +plate-image-analysis-graph.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ImageAnalysisGraphReportingPlugin +plate-image-analysis-graph.servlet-path = datastore_server_graph/ +plate-image-analysis-graph.properties-file = etc/tabular-data-graph.properties # Label of the plugin which will be shown for the users. -plate-image-params-reporter.label = Show Plate Image Parameters +plate-image-params-reporter.label = Plate Image Parameters # Comma separated list of dataset type codes which can be handled by this plugin. plate-image-params-reporter.dataset-types = HCS_IMAGE # Plugin class specification (together with the list of packages this class belongs to). -plate-image-params-reporter.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.ScreeningPlateImageParamsReportingPlugin +plate-image-params-reporter.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ScreeningPlateImageParamsReportingPlugin # The property file. Its content will be passed as a parameter to the plugin. plate-image-params-reporter.properties-file = # --------------------------------------------------------------------------- +# screening specific extension servlets +# --------------------------------------------------------------------------- + +# list of additional web servlets which will be exposed +plugin-services = screening-image-download-servlet, tabular-data-graph-servlet, screening-dss-api-exporter-servlet + +# class of the web servlet +screening-image-download-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.MergingImagesDownloadServlet +# URL which will be mapped to this servlet +screening-image-download-servlet.path = /datastore_server_screening/* -# Comma separated names of processing plugins. Each plugin should have configuration properties prefixed with its name. -processing-plugins = demo-processor +tabular-data-graph-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.TabularDataGraphServlet +tabular-data-graph-servlet.path = /datastore_server_graph/* +tabular-data-graph-servlet.properties-file = etc/tabular-data-graph.properties -# The configuration of the processing plugin is the same as the reporting plugins configuration. -demo-processor.label = Demo Processing -demo-processor.dataset-types = UNKNOWN -demo-processor.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.DemoProcessingPlugin -demo-processor.properties-file = +# expose an DSS API interface with RPC +screening-dss-api-exporter-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.DssScreeningApiServlet +screening-dss-api-exporter-servlet.path = /rmi-datastore-server-screening-api-v1/* # --------------------------------------------------------------------------- -maintenance-plugins=hierarchical-storage-updater, data-set-clean-up +maintenance-plugins=hierarchical-storage-updater, data-set-clean-up, migrator # the plugin which is run periodically to create a mirror structure of the store with the same files # but with user-readable structure of directories hierarchical-storage-updater.class = ch.systemsx.cisd.etlserver.plugins.HierarchicalStorageUpdater -hierarchical-storage-updater.interval = 120 -hierarchical-storage-updater.hierarchy-root-dir = targets/hierarchical-store +# specified in seconds. Here : every day +hierarchical-storage-updater.interval = 86400 +hierarchical-storage-updater.hierarchy-root-dir = ${root-dir}/hierarchical-store # Removes data sets deleted from openBIS also from imaging database data-set-clean-up.class = ch.systemsx.cisd.etlserver.plugins.DataSetDeletionMaintenanceTask -data-set-clean-up.interval = 30 +# specified in seconds. Here : every day +data-set-clean-up.interval = 86400 data-set-clean-up.data-source = imaging-db +migrator.class = ch.systemsx.cisd.etlserver.plugins.ChainedDataSetMigrationTask +migrator.execute-only-once = true +migrator.storeRoot = ${storeroot-dir} +migrator.migrators = bds-image-db, bds-original-relocator, bds-remover +migrator.bds-image-db.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSImagingDatabaseMigrator +migrator.bds-image-db.data-source = imaging-db +migrator.bds-image-db.channel-names = dapi, gfp +#migrator.bds-image-db.extract-single-image-channels = BLUE, GREEN +migrator.bds-original-relocator.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSOriginalDataRelocatorMigrator +migrator.bds-remover.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSDataRemoverMigrator + +# --------------------------------------------------------------------------- +# DROPBOXES CONFIGURATION # --------------------------------------------------------------------------- -# list of additional web servlets which will be exposed -plugin-services = screening-image-download-servlet -# class of the web servlet -screening-image-download-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.ImagesDownloadServlet -# URL which will be mapped to this servlet -screening-image-download-servlet.path = /datastore_server_screening/* +incoming-root-dir = ${root-dir} -# --------------------------------------------------------------------------- +# Globally used separator character which separates entities in a data set file name +data-set-file-name-entity-separator = _ + +# The period of no write access that needs to pass before an incoming data item is considered +# complete and ready to be processed (in seconds) [default: 300]. +# Valid only when auto-detection method is used to determine if an incoming data are ready to be processed. +quiet-period = 300 # Comma separated names of processing threads. Each thread should have configuration properties prefixed with its name. # E.g. 'code-extractor' property for the thread 'my-etl' should be specified as 'my-etl.code-extractor' -inputs=raw-data +inputs=split-channels-images, merged-channels-images, image-analysis-results, genedata-merged-channels-images, genedata-image-analysis-results # --------------------------------------------------------------------------- -# 'raw-data' thread configuration + +# The directory to watch for incoming data. +split-channels-images.incoming-dir = ${incoming-root-dir}/incoming-images-split-channels +split-channels-images.incoming-data-completeness-condition = auto-detection + +# The extractor class to use for code extraction +split-channels-images.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +split-channels-images.data-set-info-extractor.entity-separator = ${data-set-file-name-entity-separator} +split-channels-images.data-set-info-extractor.index-of-sample-code = -1 +split-channels-images.data-set-info-extractor.index-of-data-producer-code = 1 +split-channels-images.data-set-info-extractor.index-of-data-production-date = 0 +split-channels-images.data-set-info-extractor.space-code = DEMO + +# The extractor class to use for type extraction +split-channels-images.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +split-channels-images.type-extractor.file-format-type = JPG +split-channels-images.type-extractor.locator-type = RELATIVE_LOCATION +split-channels-images.type-extractor.data-set-type = HCS_IMAGE +split-channels-images.type-extractor.is-measured = true + +split-channels-images.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor +split-channels-images.storage-processor.generate-thumbnails = true +split-channels-images.storage-processor.channel-names = blue, green +split-channels-images.storage-processor.well_geometry = 3x3 +split-channels-images.storage-processor.deprecated-file-extractor = ch.systemsx.cisd.etlserver.imsb.HCSImageFileExtractor +split-channels-images.storage-processor.data-source = imaging-db + +# --------------------------------------------------------------------------- + +# The directory to watch for incoming data. +merged-channels-images.incoming-dir = ${incoming-root-dir}/incoming-images-merged-channels +merged-channels-images.incoming-data-completeness-condition = auto-detection + +# The extractor class to use for code extraction +merged-channels-images.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +merged-channels-images.data-set-info-extractor.entity-separator = . +merged-channels-images.data-set-info-extractor.index-of-sample-code = 0 +merged-channels-images.data-set-info-extractor.index-of-data-producer-code = +merged-channels-images.data-set-info-extractor.space-code = DEMO + +# The extractor class to use for type extraction +merged-channels-images.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +merged-channels-images.type-extractor.file-format-type = JPG +merged-channels-images.type-extractor.locator-type = RELATIVE_LOCATION +merged-channels-images.type-extractor.data-set-type = HCS_IMAGE +merged-channels-images.type-extractor.is-measured = true + +merged-channels-images.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor +merged-channels-images.storage-processor.generate-thumbnails = true +#merged-channels-images.storage-processor.thumbnail-max-width = 300 +#merged-channels-images.storage-processor.thumbnail-max-height = 200 +merged-channels-images.storage-processor.channel-names = green, blue +merged-channels-images.storage-processor.well_geometry = 3x3 +merged-channels-images.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.lmc.HCSImageFileExtractor +merged-channels-images.storage-processor.data-source = imaging-db +# Available values: RED, BLUE or GREEN +merged-channels-images.storage-processor.extract-single-image-channels = GREEN, BLUE + # --------------------------------------------------------------------------- # The directory to watch for incoming data. -raw-data.incoming-dir = targets/incoming-screening-raw -raw-data.incoming-data-completeness-condition = auto-detection +image-analysis-results.incoming-dir = ${incoming-root-dir}/incoming-analysis +image-analysis-results.incoming-data-completeness-condition = auto-detection # The extractor class to use for code extraction -raw-data.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +image-analysis-results.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor # Separator used to extract the barcode in the data set file name -raw-data.data-set-info-extractor.entity-separator = ${data-set-file-name-entity-separator} -raw-data.data-set-info-extractor.index-of-sample-code = -1 -raw-data.data-set-info-extractor.index-of-data-producer-code = 1 -raw-data.data-set-info-extractor.index-of-data-production-date = 0 -raw-data.data-set-info-extractor.group-code = IMSB +image-analysis-results.data-set-info-extractor.entity-separator = . +image-analysis-results.data-set-info-extractor.index-of-sample-code = 0 +image-analysis-results.data-set-info-extractor.space-code = DEMO # The extractor class to use for type extraction -raw-data.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -raw-data.type-extractor.file-format-type = PNG -raw-data.type-extractor.locator-type = RELATIVE_LOCATION -raw-data.type-extractor.data-set-type = HCS_IMAGE +image-analysis-results.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +image-analysis-results.type-extractor.file-format-type = CSV +image-analysis-results.type-extractor.locator-type = RELATIVE_LOCATION +image-analysis-results.type-extractor.data-set-type = HCS_IMAGE_ANALYSIS_DATA +image-analysis-results.type-extractor.is-measured = false # The storage processor (IStorageProcessor implementation) -# raw-data.storage-processor = ch.systemsx.cisd.etlserver.DefaultStorageProcessor -raw-data.storage-processor = ch.systemsx.cisd.etlserver.BDSStorageProcessor -raw-data.storage-processor.version = 1.1 -raw-data.storage-processor.sampleTypeCode = PLATE -raw-data.storage-processor.sampleTypeDescription = Screening Plate -raw-data.storage-processor.format = HCS_IMAGE V1.0 -raw-data.storage-processor.number_of_channels = 2 -raw-data.storage-processor.contains_original_data = true -raw-data.storage-processor.well_geometry = 3x3 -raw-data.storage-processor.plate_geometry = 16x24 -raw-data.storage-processor.file-extractor = ch.systemsx.cisd.etlserver.imsb.HCSImageFileExtractor +image-analysis-results.storage-processor = ch.systemsx.cisd.openbis.dss.etl.featurevector.FeatureVectorStorageProcessor +image-analysis-results.storage-processor.processor = ch.systemsx.cisd.etlserver.DefaultStorageProcessor +image-analysis-results.storage-processor.data-source = imaging-db +# semi-colon (;) by default +image-analysis-results.storage-processor.separator = , +image-analysis-results.storage-processor.ignore-comments = true +image-analysis-results.storage-processor.well-name-row = row +image-analysis-results.storage-processor.well-name-col = col +image-analysis-results.storage-processor.well-name-col-is-alphanum = true + diff --git a/screening/dist/etc/tabular-data-graph.properties b/screening/dist/etc/tabular-data-graph.properties new file mode 100644 index 0000000000000000000000000000000000000000..043cc07a6d71fa59871bc0dbd20f872705ed2e0e --- /dev/null +++ b/screening/dist/etc/tabular-data-graph.properties @@ -0,0 +1,37 @@ +# ------------------------------------------------------------------ +# Properties File For Generating Graphs From Tabular Data +# ------------------------------------------------------------------ + +# The width of the full image +full-width = 800 + +# The height of the full image +full-height = 600 + +# The width of the table column +column-width = 300 + +# The height of the table row +column-height = 200 + +# The graphs shown per row +graphs = graph1, graph2, graph3 + +# The properties for the first scatter plot +graph1.graph-type = scatterplot +graph1.x-axis = <x axis feature name, e.g. TotalCells> +graph1.y-axis = <y axis feature name, e.g. InfectedCells> +graph1.title = <title, e.g. Total vs. Infected> + +# The properties for the histogram +graph2.graph-type = histogram +graph2.column = <feature name, e.g. TotalCells> +graph2.number-of-bins = 20 +graph2.title = <title, e.g. Total Cells Histogram> + +# The properties for the heatmap +graph3.graph-type = heatmap +graph3.x-axis = <name of the column which contains plate row number, e.g. row or WellName> +graph3.y-axis = <name of the column which contains plate column number, e.g. col or WellName> +graph3.column = <feature name, e.g. InfectionIndex> +graph3.title = <title, e.g. Infection Index> diff --git a/screening/etc/service.properties b/screening/etc/service.properties index eceddf9804bf28ebf602d3c737b0cb4e649a7f3c..544e979528d8bd9d45b997dc920abe448335e314 100644 --- a/screening/etc/service.properties +++ b/screening/etc/service.properties @@ -1,26 +1,29 @@ # Unique code of this Data Store Server. Not more than 40 characters. -data-store-server-code = my-dss +data-store-server-code = dss-screening + +# host name of the machine on which the datastore server is running +host-address = http://localhost + +# parent directory of the store directory and all the dropboxes +root-dir = targets # The root directory of the data store -storeroot-dir = targets/store +storeroot-dir = ${root-dir}/store # The directory where the command queue file is located; defaults to storeroot-dir commandqueue-dir = # Port port = 8889 +use-ssl = false # Session timeout in minutes session-timeout = 30 # Path to the keystore keystore.path = dist/etc/openBIS.keystore - -use-ssl = false - # Password of the keystore keystore.password = changeit - # Key password of the keystore keystore.key-password = changeit @@ -30,6 +33,8 @@ check-interval = 5 # The time-out for clean up work in the shutdown sequence (in seconds). # Note that that the maximal time for the shutdown sequence to complete can be as large # as twice this time. +# Remark: On a network file system, it is not recommended to turn this value to something +# lower than 180. shutdown-timeout = 2 # If free disk space goes below value defined here, a notification email will be sent. @@ -43,75 +48,41 @@ highwater-mark = 1000 notify-successful-registration = false # The URL of the openBIS server -server-url = http://localhost:8888/openbis +server-url = ${host-address}:8888 # The username to use when contacting the openBIS server username = etlserver -# The password to use when contacting the openBIS server -password = doesnotmatter +# The password for the etlserver user who contacts the openBIS server +password = etlserver_password -# The base URL for Web client access. -download-url = http://localhost:8889 +# The base URL for Web client access to the data store server. +download-url = ${host-address}:8889 # SMTP properties (must start with 'mail' to be considered). -mail.smtp.host = file://targets -# mail.from = datastore_server@localhost +# The current configuration saves the emails in the file system in the root directory +mail.smtp.host = file://${root-dir} +# mail.smtp.host = localhost +# mail.from = datastore_server@ethz.ch # mail.smtp.user = # mail.smtp.password = -# Maximum number of retries if renaming failed. -# renaming.failure.max-retries = 12 - -# The number of milliseconds to wait before retrying to execute the renaming process. -# renaming.failure.millis-to-sleep = 5000 - -# Globally used separator character which separates entities in a data set file name -data-set-file-name-entity-separator = _ - -# The period of no write access that needs to pass before an incoming data item is considered -# complete and ready to be processed (in seconds) [default: 300]. -# Valid only when auto-detection method is used to determine if an incoming data are ready to be processed. -quiet-period = 3 - # --------------------------------------------------------------------------- -# reporting and processing plugins configuration +# (optional) archiver configuration # --------------------------------------------------------------------------- -# Comma separated names of reporting plugins. Each plugin should have configuration properties prefixed with its name. -reporting-plugins = plate-image-params-reporter, default-plate-image-analysis-merger, plate-image-analysis-graph - -# Label of the plugin which will be shown for the users. -plate-image-params-reporter.label = Show Plate Image Parameters -# Comma separated list of dataset type codes which can be handled by this plugin. -plate-image-params-reporter.dataset-types = HCS_IMAGE -# Plugin class specification (together with the list of packages this class belongs to). -plate-image-params-reporter.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ScreeningPlateImageParamsReportingPlugin -# The property file. Its content will be passed as a parameter to the plugin. -plate-image-params-reporter.properties-file = - -default-plate-image-analysis-merger.label = Show Image Analysis Results -default-plate-image-analysis-merger.dataset-types = HCS_IMAGE_ANALYSIS_DATA -default-plate-image-analysis-merger.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ImageAnalysisMergedRowsReportingPlugin -default-plate-image-analysis-merger.properties-file = +# Configuration of an archiver task. All properties are prefixed with 'archiver.'. -plate-image-analysis-graph.label = Show Image Analysis Graphs -plate-image-analysis-graph.dataset-types = HCS_IMAGE_ANALYSIS_DATA -plate-image-analysis-graph.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ImageAnalysisGraphReportingPlugin -plate-image-analysis-graph.servlet-path = datastore_server_graph/ -plate-image-analysis-graph.properties-file = etc/tabular-data-graph.properties +# Archiver class specification (together with the list of packages this class belongs to). +#archiver.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.DemoArchiver # --------------------------------------------------------------------------- - -# Comma separated names of processing plugins. Each plugin should have configuration properties prefixed with its name. -processing-plugins = demo-processor - -# The configuration of the processing plugin is the same as the reporting plugins configuration. -demo-processor.label = Demo Processing -demo-processor.dataset-types = UNKNOWN -demo-processor.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.DemoProcessingPlugin -demo-processor.properties-file = +# INTERNAL CONFIGURATION, +# Do not change this part unless you are developing openBIS extensions. +# --------------------------------------------------------------------------- +# --------------------------------------------------------------------------- +# screening database specification # --------------------------------------------------------------------------- data-sources = imaging-db @@ -121,42 +92,46 @@ imaging-db.basicDatabaseName = imaging imaging-db.databaseKind = dev imaging-db.scriptFolder = source/sql +# --------------------------------------------------------------------------- +# reporting and processing plugins configuration # --------------------------------------------------------------------------- -#maintenance-plugins=hierarchical-storage-updater, bds-migrator -maintenance-plugins = migrator +# Comma separated names of reporting plugins. Each plugin should have configuration properties prefixed with its name. +reporting-plugins = default-plate-image-analysis, plate-image-analysis-graph, plate-image-params-reporter -data-set-clean-up.class = ch.systemsx.cisd.etlserver.plugins.DataSetDeletionMaintenanceTask -data-set-clean-up.interval = 30 -data-set-clean-up.data-source = imaging-db +default-plate-image-analysis.label = Image Analysis Results +default-plate-image-analysis.dataset-types = HCS_IMAGE_ANALYSIS_DATA, HCS_ANALYSIS_PER_GENE +default-plate-image-analysis.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ImageAnalysisMergedRowsReportingPlugin +default-plate-image-analysis.properties-file = -hierarchical-storage-updater.class = ch.systemsx.cisd.etlserver.plugins.HierarchicalStorageUpdater -hierarchical-storage-updater.interval = 300 -hierarchical-storage-updater.hierarchy-root-dir = targets/hierarchical-store +plate-image-analysis-graph.label = Image Analysis Graphs +plate-image-analysis-graph.dataset-types = HCS_IMAGE_ANALYSIS_DATA, HCS_ANALYSIS_PER_GENE +plate-image-analysis-graph.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ImageAnalysisGraphReportingPlugin +plate-image-analysis-graph.servlet-path = datastore_server_graph/ +plate-image-analysis-graph.properties-file = etc/tabular-data-graph.properties -migrator.class = ch.systemsx.cisd.etlserver.plugins.ChainedDataSetMigrationTask -migrator.execute-only-once = true -migrator.storeRoot = ${storeroot-dir} -migrator.migrators = bds-image-db, bds-original-relocator, bds-remover -migrator.bds-image-db.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSImagingDatabaseMigrator -migrator.bds-image-db.data-source = imaging-db -migrator.bds-image-db.channel-names = dapi, gfp -#migrator.bds-image-db.extract-single-image-channels = BLUE, GREEN -migrator.bds-original-relocator.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSOriginalDataRelocatorMigrator -migrator.bds-remover.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSDataRemoverMigrator +# Label of the plugin which will be shown for the users. +plate-image-params-reporter.label = Plate Image Parameters +# Comma separated list of dataset type codes which can be handled by this plugin. +plate-image-params-reporter.dataset-types = HCS_IMAGE +# Plugin class specification (together with the list of packages this class belongs to). +plate-image-params-reporter.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.ScreeningPlateImageParamsReportingPlugin +# The property file. Its content will be passed as a parameter to the plugin. +plate-image-params-reporter.properties-file = +# --------------------------------------------------------------------------- +# screening specific extension servlets # --------------------------------------------------------------------------- # list of additional web servlets which will be exposed plugin-services = screening-image-download-servlet, tabular-data-graph-servlet, screening-dss-api-exporter-servlet + # class of the web servlet screening-image-download-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.MergingImagesDownloadServlet -#screening-image-download-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.SplittingImagesDownloadServlet # URL which will be mapped to this servlet screening-image-download-servlet.path = /datastore_server_screening/* tabular-data-graph-servlet.class = ch.systemsx.cisd.openbis.dss.generic.server.TabularDataGraphServlet -# URL which will be mapped to this servlet tabular-data-graph-servlet.path = /datastore_server_graph/* tabular-data-graph-servlet.properties-file = etc/tabular-data-graph.properties @@ -166,248 +141,175 @@ screening-dss-api-exporter-servlet.path = /rmi-datastore-server-screening-api-v1 # --------------------------------------------------------------------------- -# Comma separated names of processing threads. Each thread should have configuration properties prefixed with its name. -# E.g. 'code-extractor' property for the thread 'my-etl' should be specified as 'my-etl.code-extractor' -inputs=raw-data, plate-analysis-data, lmc-raw-data, lmc-jpg-data, lmc-segmented-jpg-data, genedata-raw-img-db, pelk-raw-img-db, lmc-raw-img-db, genedata-image-analysis-results - -# --------------------------------------------------------------------------- -# 'raw-data' thread configuration -# --------------------------------------------------------------------------- - -# The directory to watch for incoming data. -raw-data.incoming-dir = targets/incoming-screening-raw -raw-data.incoming-data-completeness-condition = auto-detection +maintenance-plugins=hierarchical-storage-updater, data-set-clean-up, migrator -# The extractor class to use for code extraction -raw-data.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor -# Separator used to extract the barcode in the data set file name -raw-data.data-set-info-extractor.entity-separator = ${data-set-file-name-entity-separator} -raw-data.data-set-info-extractor.index-of-sample-code = -1 -raw-data.data-set-info-extractor.index-of-data-producer-code = 1 -raw-data.data-set-info-extractor.index-of-data-production-date = 0 -raw-data.data-set-info-extractor.space-code = DEMO - -# The extractor class to use for type extraction -raw-data.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -raw-data.type-extractor.file-format-type = PNG -raw-data.type-extractor.locator-type = RELATIVE_LOCATION -raw-data.type-extractor.data-set-type = HCS_IMAGE +# the plugin which is run periodically to create a mirror structure of the store with the same files +# but with user-readable structure of directories +hierarchical-storage-updater.class = ch.systemsx.cisd.etlserver.plugins.HierarchicalStorageUpdater +# specified in seconds. Here : every day +hierarchical-storage-updater.interval = 86400 +hierarchical-storage-updater.hierarchy-root-dir = ${root-dir}/hierarchical-store -# The storage processor (IStorageProcessor implementation) -# raw-data.storage-processor = ch.systemsx.cisd.etlserver.DefaultStorageProcessor -raw-data.storage-processor = ch.systemsx.cisd.etlserver.BDSStorageProcessor -raw-data.storage-processor.version = 1.1 -raw-data.storage-processor.sampleTypeCode = PLATE -raw-data.storage-processor.sampleTypeDescription = Screening Plate -raw-data.storage-processor.format = HCS_IMAGE V1.0 -raw-data.storage-processor.number_of_channels = 2 -raw-data.storage-processor.contains_original_data = true -raw-data.storage-processor.well_geometry = 3x3 -raw-data.storage-processor.plate_geometry = 16x24 -raw-data.storage-processor.file-extractor = ch.systemsx.cisd.etlserver.imsb.HCSImageFileExtractor +# Removes data sets deleted from openBIS also from imaging database +data-set-clean-up.class = ch.systemsx.cisd.etlserver.plugins.DataSetDeletionMaintenanceTask +# specified in seconds. Here : every day +data-set-clean-up.interval = 86400 +data-set-clean-up.data-source = imaging-db +migrator.class = ch.systemsx.cisd.etlserver.plugins.ChainedDataSetMigrationTask +migrator.execute-only-once = true +migrator.storeRoot = ${storeroot-dir} +migrator.migrators = bds-image-db, bds-original-relocator, bds-remover +migrator.bds-image-db.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSImagingDatabaseMigrator +migrator.bds-image-db.data-source = imaging-db +migrator.bds-image-db.channel-names = dapi, gfp +#migrator.bds-image-db.extract-single-image-channels = BLUE, GREEN +migrator.bds-original-relocator.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSOriginalDataRelocatorMigrator +migrator.bds-remover.class = ch.systemsx.cisd.openbis.dss.etl.bdsmigration.BDSDataRemoverMigrator # --------------------------------------------------------------------------- -# 'plate-analysis-data' thread configuration +# DROPBOXES CONFIGURATION # --------------------------------------------------------------------------- -# The directory to watch for incoming data. -plate-analysis-data.incoming-dir = targets/incoming-screening-image-analysis -plate-analysis-data.incoming-data-completeness-condition = auto-detection +incoming-root-dir = ${root-dir} -# The extractor class to use for code extraction -plate-analysis-data.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor -# Separator used to extract the barcode in the data set file name -plate-analysis-data.data-set-info-extractor.entity-separator = . -plate-analysis-data.data-set-info-extractor.index-of-sample-code = 0 -plate-analysis-data.data-set-info-extractor.space-code = DEMO - -# The extractor class to use for type extraction -plate-analysis-data.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -plate-analysis-data.type-extractor.file-format-type = TSV -plate-analysis-data.type-extractor.locator-type = RELATIVE_LOCATION -plate-analysis-data.type-extractor.data-set-type = HCS_IMAGE_ANALYSIS_DATA -plate-analysis-data.type-extractor.is-measured = false +# Globally used separator character which separates entities in a data set file name +data-set-file-name-entity-separator = _ -# The storage processor (IStorageProcessor implementation) -#plate-analysis-data.storage-processor = ch.systemsx.cisd.etlserver.DefaultStorageProcessor -plate-analysis-data.storage-processor = ch.systemsx.cisd.openbis.dss.etl.featurevector.FeatureVectorStorageProcessor -plate-analysis-data.storage-processor.processor = ch.systemsx.cisd.etlserver.DefaultStorageProcessor -plate-analysis-data.storage-processor.data-source = imaging-db -# The separator in the CSV feature-vector files -plate-analysis-data.storage-processor.separator = ; -# Should lines starting with the '#' be ignored? -plate-analysis-data.storage-processor.ignore-comments = true -# The name of the column that specifies the well row -plate-analysis-data.storage-processor.well-name-row = WellName -# The name of the column that specifies the well column -plate-analysis-data.storage-processor.well-name-col = WellName -# True if column names specified in spreadsheet form (A, B, etc.), false if they are pure numbers -plate-analysis-data.storage-processor.well-name-col-is-alphanum = true +# The period of no write access that needs to pass before an incoming data item is considered +# complete and ready to be processed (in seconds) [default: 300]. +# Valid only when auto-detection method is used to determine if an incoming data are ready to be processed. +quiet-period = 3 +# Comma separated names of processing threads. Each thread should have configuration properties prefixed with its name. +# E.g. 'code-extractor' property for the thread 'my-etl' should be specified as 'my-etl.code-extractor' +inputs=split-channels-images, merged-channels-images, image-analysis-results, genedata-merged-channels-images, genedata-image-analysis-results -# --------------------------------------------------------------------------- -# 'LMC RAW data' thread configuration # --------------------------------------------------------------------------- # The directory to watch for incoming data. -lmc-raw-data.incoming-dir = targets/incoming-lmc-raw -lmc-raw-data.incoming-data-completeness-condition = auto-detection +split-channels-images.incoming-dir = ${incoming-root-dir}/incoming-images-split-channels +split-channels-images.incoming-data-completeness-condition = auto-detection # The extractor class to use for code extraction -lmc-raw-data.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor -# Separator used to extract the barcode in the data set file name -lmc-raw-data.data-set-info-extractor.entity-separator = . -lmc-raw-data.data-set-info-extractor.index-of-sample-code = 0 -lmc-raw-data.data-set-info-extractor.index-of-data-producer-code = -lmc-raw-data.data-set-info-extractor.space-code = DEMO +split-channels-images.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +split-channels-images.data-set-info-extractor.entity-separator = ${data-set-file-name-entity-separator} +split-channels-images.data-set-info-extractor.index-of-sample-code = -1 +split-channels-images.data-set-info-extractor.index-of-data-producer-code = 1 +split-channels-images.data-set-info-extractor.index-of-data-production-date = 0 +split-channels-images.data-set-info-extractor.space-code = DEMO # The extractor class to use for type extraction -lmc-raw-data.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -lmc-raw-data.type-extractor.file-format-type = TIFF -lmc-raw-data.type-extractor.locator-type = RELATIVE_LOCATION -lmc-raw-data.type-extractor.data-set-type = HCS_IMAGE -lmc-raw-data.type-extractor.is-measured = true - -# The storage processor (IStorageProcessor implementation) -lmc-raw-data.storage-processor = ch.systemsx.cisd.etlserver.BDSStorageProcessor -lmc-raw-data.storage-processor.version = 1.1 -lmc-raw-data.storage-processor.sampleTypeCode = PLATE -lmc-raw-data.storage-processor.sampleTypeDescription = Screening Plate -lmc-raw-data.storage-processor.format = HCS_IMAGE V1.0 -lmc-raw-data.storage-processor.number_of_channels = 2 -lmc-raw-data.storage-processor.contains_original_data = TRUE -lmc-raw-data.storage-processor.well_geometry = 3x3 -lmc-raw-data.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.lmc.BDSHCSImageFileExtractor -lmc-raw-data.storage-processor.incoming_items_are_symbolic_link = true -lmc-raw-data.storage-processor.file_extension = tif +split-channels-images.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +split-channels-images.type-extractor.file-format-type = JPG +split-channels-images.type-extractor.locator-type = RELATIVE_LOCATION +split-channels-images.type-extractor.data-set-type = HCS_IMAGE +split-channels-images.type-extractor.is-measured = true + +split-channels-images.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor +split-channels-images.storage-processor.generate-thumbnails = true +split-channels-images.storage-processor.channel-names = blue, green +split-channels-images.storage-processor.well_geometry = 3x3 +split-channels-images.storage-processor.deprecated-file-extractor = ch.systemsx.cisd.etlserver.imsb.HCSImageFileExtractor +split-channels-images.storage-processor.data-source = imaging-db -# --------------------------------------------------------------------------- -# 'LMC JPG data' thread configuration # --------------------------------------------------------------------------- # The directory to watch for incoming data. -lmc-jpg-data.incoming-dir = targets/incoming-lmc-jpg -lmc-jpg-data.incoming-data-completeness-condition = auto-detection +merged-channels-images.incoming-dir = ${incoming-root-dir}/incoming-images-merged-channels +merged-channels-images.incoming-data-completeness-condition = auto-detection # The extractor class to use for code extraction -lmc-jpg-data.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor -# Separator used to extract the barcode in the data set file name -lmc-jpg-data.data-set-info-extractor.entity-separator = . -lmc-jpg-data.data-set-info-extractor.index-of-sample-code = 0 -lmc-jpg-data.data-set-info-extractor.index-of-data-producer-code = -lmc-jpg-data.data-set-info-extractor.space-code = DEMO +merged-channels-images.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +merged-channels-images.data-set-info-extractor.entity-separator = . +merged-channels-images.data-set-info-extractor.index-of-sample-code = 0 +merged-channels-images.data-set-info-extractor.index-of-data-producer-code = +merged-channels-images.data-set-info-extractor.space-code = LIBRARY_TEST # The extractor class to use for type extraction -lmc-jpg-data.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -lmc-jpg-data.type-extractor.file-format-type = JPG -lmc-jpg-data.type-extractor.locator-type = RELATIVE_LOCATION -lmc-jpg-data.type-extractor.data-set-type = HCS_IMAGE -lmc-jpg-data.type-extractor.is-measured = false - -# The storage processor (IStorageProcessor implementation) -lmc-jpg-data.storage-processor = ch.systemsx.cisd.etlserver.BDSStorageProcessor -lmc-jpg-data.storage-processor.version = 1.1 -lmc-jpg-data.storage-processor.sampleTypeCode = PLATE -lmc-jpg-data.storage-processor.sampleTypeDescription = Screening Plate -lmc-jpg-data.storage-processor.format = HCS_IMAGE V1.0 -# There is only 1 file for all channels having 2 channels merged into one image. -# We have to ignore the warning about missing channels during the upload. -lmc-jpg-data.storage-processor.number_of_channels = 2 -lmc-jpg-data.storage-processor.contains_original_data = TRUE -lmc-jpg-data.storage-processor.well_geometry = 3x3 -lmc-jpg-data.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.lmc.BDSHCSImageFileExtractor -lmc-jpg-data.storage-processor.incoming_items_are_symbolic_link = true -lmc-jpg-data.storage-processor.compute_file_checksums = false -lmc-jpg-data.storage-processor.file_extension = jpg +merged-channels-images.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +merged-channels-images.type-extractor.file-format-type = JPG +merged-channels-images.type-extractor.locator-type = RELATIVE_LOCATION +merged-channels-images.type-extractor.data-set-type = HCS_IMAGE +merged-channels-images.type-extractor.is-measured = true + +merged-channels-images.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor +merged-channels-images.storage-processor.generate-thumbnails = true +#merged-channels-images.storage-processor.thumbnail-max-width = 300 +#merged-channels-images.storage-processor.thumbnail-max-height = 200 +merged-channels-images.storage-processor.channel-names = green, blue +merged-channels-images.storage-processor.well_geometry = 3x3 +merged-channels-images.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.lmc.HCSImageFileExtractor +merged-channels-images.storage-processor.data-source = imaging-db +# Available values: RED, BLUE or GREEN +merged-channels-images.storage-processor.extract-single-image-channels = GREEN, BLUE -# --------------------------------------------------------------------------- -# 'LMC segmented JPG data' thread configuration # --------------------------------------------------------------------------- # The directory to watch for incoming data. -lmc-segmented-jpg-data.incoming-dir = targets/incoming-lmc-segmented-jpg -lmc-segmented-jpg-data.incoming-data-completeness-condition = auto-detection +image-analysis-results.incoming-dir = ${incoming-root-dir}/incoming-analysis +image-analysis-results.incoming-data-completeness-condition = auto-detection # The extractor class to use for code extraction -lmc-segmented-jpg-data.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +image-analysis-results.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor # Separator used to extract the barcode in the data set file name -lmc-segmented-jpg-data.data-set-info-extractor.entity-separator = . -lmc-segmented-jpg-data.data-set-info-extractor.index-of-sample-code = 0 -lmc-segmented-jpg-data.data-set-info-extractor.index-of-data-producer-code = -lmc-segmented-jpg-data.data-set-info-extractor.space-code = DEMO +image-analysis-results.data-set-info-extractor.entity-separator = . +image-analysis-results.data-set-info-extractor.index-of-sample-code = 0 +image-analysis-results.data-set-info-extractor.space-code = DEMO # The extractor class to use for type extraction -lmc-segmented-jpg-data.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -lmc-segmented-jpg-data.type-extractor.file-format-type = JPG -lmc-segmented-jpg-data.type-extractor.locator-type = RELATIVE_LOCATION -#lmc-segmented-jpg-data.type-extractor.data-set-type = HCS_SEGMENTED_JPG_IMAGE -lmc-segmented-jpg-data.type-extractor.data-set-type = HCS_IMAGE -lmc-segmented-jpg-data.type-extractor.is-measured = false +image-analysis-results.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +image-analysis-results.type-extractor.file-format-type = CSV +image-analysis-results.type-extractor.locator-type = RELATIVE_LOCATION +image-analysis-results.type-extractor.data-set-type = HCS_IMAGE_ANALYSIS_DATA +image-analysis-results.type-extractor.is-measured = false # The storage processor (IStorageProcessor implementation) -lmc-segmented-jpg-data.storage-processor = ch.systemsx.cisd.etlserver.BDSStorageProcessor -lmc-segmented-jpg-data.storage-processor.version = 1.1 -lmc-segmented-jpg-data.storage-processor.sampleTypeCode = PLATE -lmc-segmented-jpg-data.storage-processor.sampleTypeDescription = Screening Plate -lmc-segmented-jpg-data.storage-processor.format = HCS_IMAGE V1.0 -# There is only 1 file for all channels having 2 channels merged into one image. -# We have to ignore the warning about missing channels during the upload. -lmc-segmented-jpg-data.storage-processor.number_of_channels = 2 -lmc-segmented-jpg-data.storage-processor.contains_original_data = TRUE -lmc-segmented-jpg-data.storage-processor.well_geometry = 3x3 -lmc-segmented-jpg-data.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.lmc.BDSHCSImageFileExtractor -lmc-segmented-jpg-data.storage-processor.incoming_items_are_symbolic_link = true -lmc-segmented-jpg-data.storage-processor.file_extension = jpg - +image-analysis-results.storage-processor = ch.systemsx.cisd.openbis.dss.etl.featurevector.FeatureVectorStorageProcessor +image-analysis-results.storage-processor.processor = ch.systemsx.cisd.etlserver.DefaultStorageProcessor +image-analysis-results.storage-processor.data-source = imaging-db +# semi-colon (;) by default +image-analysis-results.storage-processor.separator = , +image-analysis-results.storage-processor.ignore-comments = true +image-analysis-results.storage-processor.well-name-row = row +image-analysis-results.storage-processor.well-name-col = col +image-analysis-results.storage-processor.well-name-col-is-alphanum = true +# --------------------------------------------------------------------------- +# GENEDATA formats # --------------------------------------------------------------------------- # The directory to watch for incoming data. -genedata-raw-img-db.incoming-dir = targets/raw-images-db -genedata-raw-img-db.incoming-data-completeness-condition = auto-detection +genedata-merged-channels-images.incoming-dir = ${incoming-root-dir}/incoming-images-genedata +genedata-merged-channels-images.incoming-data-completeness-condition = auto-detection # The extractor class to use for code extraction -genedata-raw-img-db.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor +genedata-merged-channels-images.data-set-info-extractor = ch.systemsx.cisd.openbis.dss.etl.genedata.DataSetInfoExtractorForDataAcquisition # Separator used to extract the barcode in the data set file name -genedata-raw-img-db.data-set-info-extractor.entity-separator = . -genedata-raw-img-db.data-set-info-extractor.index-of-sample-code = 0 -genedata-raw-img-db.data-set-info-extractor.index-of-data-producer-code = -genedata-raw-img-db.data-set-info-extractor.space-code = DEMO +genedata-merged-channels-images.data-set-info-extractor.entity-separator = . +genedata-merged-channels-images.data-set-info-extractor.index-of-sample-code = 0 +genedata-merged-channels-images.data-set-info-extractor.index-of-data-producer-code = +genedata-merged-channels-images.data-set-info-extractor.space-code = DEMO # The extractor class to use for type extraction -genedata-raw-img-db.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -genedata-raw-img-db.type-extractor.file-format-type = JPG -genedata-raw-img-db.type-extractor.locator-type = RELATIVE_LOCATION -genedata-raw-img-db.type-extractor.data-set-type = HCS_IMAGE -genedata-raw-img-db.type-extractor.is-measured = true - -genedata-raw-img-db.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor -genedata-raw-img-db.storage-processor.well_geometry = 1x1 -genedata-raw-img-db.storage-processor.channel-names = dapi, gfp -genedata-raw-img-db.storage-processor.deprecated-file-extractor = ch.systemsx.cisd.openbis.dss.etl.genedata.HCSImageFileExtractor -genedata-raw-img-db.storage-processor.data-source = imaging-db -# The storage processor (IStorageProcessor implementation) -#genedata-raw-img-db.storage-processor = ch.systemsx.cisd.etlserver.BDSStorageProcessor -#genedata-raw-img-db.storage-processor.sampleTypeCode = PLATE -#genedata-raw-img-db.storage-processor.version = 1.1 -#genedata-raw-img-db.storage-processor.sampleTypeDescription = Screening Plate -# There is only 1 file for all channels having 2 channels merged into one image. -#genedata-raw-img-db.storage-processor.format = HCS_IMAGE V1.0 -# We have to ignore the warning about missing channels during the upload. -#genedata-raw-img-db.storage-processor.number_of_channels = 2 -#genedata-raw-img-db.storage-processor.contains_original_data = TRUE -#genedata-raw-img-db.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.genedata.HCSImageFileExtractor -#genedata-raw-img-db.storage-processor.well_geometry = 1x1 -#genedata-raw-img-db.storage-processor.incoming_items_are_symbolic_link = true -#genedata-raw-img-db.storage-processor.file_extension = jpeg - -# --------------------------------------------------------------------------- -# GENEDATA images analysis results -# --------------------------------------------------------------------------- +genedata-merged-channels-images.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor +genedata-merged-channels-images.type-extractor.file-format-type = CSV +genedata-merged-channels-images.type-extractor.locator-type = RELATIVE_LOCATION +genedata-merged-channels-images.type-extractor.data-set-type = HCS_IMAGE_ANALYSIS_DATA +genedata-merged-channels-images.type-extractor.is-measured = false + +genedata-merged-channels-images.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor +genedata-merged-channels-images.storage-processor.well_geometry = 1x1 +genedata-merged-channels-images.storage-processor.channel-names = dapi, gfp +# Available values: RED, BLUE or GREEN +genedata-merged-channels-images.storage-processor.extract-single-image-channels = BLUE, GREEN +genedata-merged-channels-images.storage-processor.deprecated-file-extractor = ch.systemsx.cisd.openbis.dss.etl.genedata.HCSImageFileExtractor +genedata-merged-channels-images.storage-processor.data-source = imaging-db + +# -------------------------------------------------------------- # The directory to watch for incoming data. -genedata-image-analysis-results.incoming-dir = targets/incoming-genedata-feature-vectors +genedata-image-analysis-results.incoming-dir = ${incoming-root-dir}/incoming-analysis-genedata genedata-image-analysis-results.incoming-data-completeness-condition = auto-detection # The extractor class to use for code extraction @@ -426,68 +328,3 @@ genedata-image-analysis-results.type-extractor.is-measured = false # The storage processor (IStorageProcessor implementation) genedata-image-analysis-results.storage-processor = ch.systemsx.cisd.openbis.dss.etl.genedata.FeatureStorageProcessor - -# --------------------------------------------------------------------------- - -# The directory to watch for incoming data. -pelk-raw-img-db.incoming-dir = targets/raw-images-pelk-db -pelk-raw-img-db.incoming-data-completeness-condition = auto-detection - -# The extractor class to use for code extraction -pelk-raw-img-db.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor -pelk-raw-img-db.data-set-info-extractor.entity-separator = ${data-set-file-name-entity-separator} -pelk-raw-img-db.data-set-info-extractor.index-of-sample-code = -1 -pelk-raw-img-db.data-set-info-extractor.index-of-data-producer-code = 1 -pelk-raw-img-db.data-set-info-extractor.index-of-data-production-date = 0 -pelk-raw-img-db.data-set-info-extractor.space-code = DEMO - -# The extractor class to use for type extraction -pelk-raw-img-db.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -pelk-raw-img-db.type-extractor.file-format-type = PNG -pelk-raw-img-db.type-extractor.locator-type = RELATIVE_LOCATION -pelk-raw-img-db.type-extractor.data-set-type = HCS_IMAGE -pelk-raw-img-db.type-extractor.is-measured = true - -pelk-raw-img-db.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor -pelk-raw-img-db.storage-processor.channel-names = blue, green -pelk-raw-img-db.storage-processor.well_geometry = 3x3 -pelk-raw-img-db.storage-processor.deprecated-file-extractor = ch.systemsx.cisd.etlserver.imsb.HCSImageFileExtractor -pelk-raw-img-db.storage-processor.data-source = imaging-db - - -# --------------------------------------------------------------------------- - -# The directory to watch for incoming data. -lmc-raw-img-db.incoming-dir = targets/raw-images-lmc-db -lmc-raw-img-db.incoming-data-completeness-condition = auto-detection - -# The extractor class to use for code extraction -lmc-raw-img-db.data-set-info-extractor = ch.systemsx.cisd.etlserver.DefaultDataSetInfoExtractor -lmc-raw-img-db.data-set-info-extractor.entity-separator = . -lmc-raw-img-db.data-set-info-extractor.index-of-sample-code = 0 -lmc-raw-img-db.data-set-info-extractor.index-of-data-producer-code = -lmc-raw-img-db.data-set-info-extractor.space-code = DEMO - -# The extractor class to use for type extraction -lmc-raw-img-db.type-extractor = ch.systemsx.cisd.etlserver.SimpleTypeExtractor -lmc-raw-img-db.type-extractor.file-format-type = JPG -lmc-raw-img-db.type-extractor.locator-type = RELATIVE_LOCATION -lmc-raw-img-db.type-extractor.data-set-type = HCS_IMAGE -lmc-raw-img-db.type-extractor.is-measured = true - -lmc-raw-img-db.storage-processor = ch.systemsx.cisd.openbis.dss.etl.PlateStorageProcessor -lmc-raw-img-db.storage-processor.channel-names = green, blue -lmc-raw-img-db.storage-processor.well_geometry = 3x3 -lmc-raw-img-db.storage-processor.file-extractor = ch.systemsx.cisd.openbis.dss.etl.lmc.HCSImageFileExtractor -lmc-raw-img-db.storage-processor.data-source = imaging-db -lmc-raw-img-db.storage-processor.extract-single-image-channels = BLUE, GREEN -#lmc-raw-img-db.storage-processor.compute_file_checksums = false - -# --------------------------------------------------------------------------- -# (optional) archiver configuration -# --------------------------------------------------------------------------- - -# Configuration of an archiver task. All properties are prefixed with 'archiver.'. - -# Archiver class specification (together with the list of packages this class belongs to). -#archiver.class = ch.systemsx.cisd.openbis.dss.generic.server.plugins.demo.DemoArchiver