From 86ef0b42c2720f913c2c0d0d13545d421918d181 Mon Sep 17 00:00:00 2001 From: kaloyane <kaloyane> Date: Tue, 19 Jul 2011 11:11:57 +0000 Subject: [PATCH] [LMS-2138] FEATURE_VECTOR_SUMMARY working in embedded/simple mode SVN: 22206 --- .../ExperimentAnalysisSummaryGrid.java | 13 ++++++++---- .../ExperimentAnalysisSummarySection.java | 2 +- .../ExperimentAnalysisSummaryViewer.java | 21 +++++++++++-------- .../ExperimentAnalysisSummaryResolver.java | 20 +++++++++++++++--- 4 files changed, 39 insertions(+), 17 deletions(-) diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java index f04f3e8f2fc..13e851d2467 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java @@ -72,10 +72,12 @@ public class ExperimentAnalysisSummaryGrid extends TypedTableGrid<MaterialFeatur public static IDisposableComponent create( IViewContext<IScreeningClientServiceAsync> viewContext, IEntityInformationHolderWithIdentifier experiment, - boolean restrictGlobalScopeLinkToProject) + boolean restrictGlobalScopeLinkToProject, + AnalysisProcedureCriteria initialAnalysisProcedureOrNull) { return new ExperimentAnalysisSummaryGrid(viewContext, experiment, - restrictGlobalScopeLinkToProject).asDisposableWithoutToolbar(); + restrictGlobalScopeLinkToProject, initialAnalysisProcedureOrNull) + .asDisposableWithoutToolbar(); } private ICellListenerAndLinkGenerator<MaterialFeatureVectorSummary> createMaterialReplicaSummaryLinkGenerator() @@ -117,13 +119,16 @@ public class ExperimentAnalysisSummaryGrid extends TypedTableGrid<MaterialFeatur ExperimentAnalysisSummaryGrid(IViewContext<IScreeningClientServiceAsync> viewContext, final IEntityInformationHolderWithIdentifier experiment, - boolean restrictGlobalScopeLinkToProject) + boolean restrictGlobalScopeLinkToProject, + AnalysisProcedureCriteria initialAnalysisProcedureOrNull) { - super(viewContext.getCommonViewContext(), BROWSER_ID, false, + super(viewContext.getCommonViewContext(), BROWSER_ID, + initialAnalysisProcedureOrNull != null, DisplayTypeIDGenerator.EXPERIMENT_FEATURE_VECTOR_SUMMARY_SECTION); this.screeningViewContext = viewContext; this.experiment = experiment; this.restrictGlobalScopeLinkToProject = restrictGlobalScopeLinkToProject; + this.analysisProcedureCriteria = initialAnalysisProcedureOrNull; ICellListenerAndLinkGenerator<MaterialFeatureVectorSummary> linkGenerator = createMaterialReplicaSummaryLinkGenerator(); diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummarySection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummarySection.java index 49a407df67d..ad1df363b68 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummarySection.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummarySection.java @@ -36,7 +36,7 @@ public class ExperimentAnalysisSummarySection extends DisposableTabContent setIds(DisplayTypeIDGenerator.EXPERIMENT_FEATURE_VECTOR_SUMMARY_SECTION); analysisGridDisposableComponent = - ExperimentAnalysisSummaryGrid.create(screeningViewContext, experiment, false); + ExperimentAnalysisSummaryGrid.create(screeningViewContext, experiment, false, null); } @Override diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryViewer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryViewer.java index 3525dff9319..84a32b8773a 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryViewer.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryViewer.java @@ -34,6 +34,7 @@ import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.D import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ScreeningModule; import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.utils.MaterialComponentUtils; import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ui.columns.specific.ScreeningLinkExtractor; +import ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto.WellSearchCriteria.AnalysisProcedureCriteria; /** * A grid showing feature vector summary for an experiment. @@ -46,7 +47,7 @@ public class ExperimentAnalysisSummaryViewer public static void openTab( final IViewContext<IScreeningClientServiceAsync> screeningViewContext, String experimentPermId, final boolean restrictGlobalScopeLinkToProject, - final String analysisProcedureOrNull) + final AnalysisProcedureCriteria analysisProcedureCriteria) { screeningViewContext.getCommonService().getEntityInformationHolder(EntityKind.EXPERIMENT, experimentPermId, @@ -57,7 +58,7 @@ public class ExperimentAnalysisSummaryViewer { TechId experimentId = new TechId(experiment); openTab(screeningViewContext, experimentId, - restrictGlobalScopeLinkToProject, analysisProcedureOrNull); + restrictGlobalScopeLinkToProject, analysisProcedureCriteria); } }); } @@ -65,7 +66,7 @@ public class ExperimentAnalysisSummaryViewer public static void openTab( final IViewContext<IScreeningClientServiceAsync> screeningViewContext, TechId experimentId, final boolean restrictGlobalScopeLinkToProject, - final String analysisProcedureOrNull) + final AnalysisProcedureCriteria analysisProcedureCriteria) { screeningViewContext.getCommonService().getExperimentInfo(experimentId, new AbstractAsyncCallback<Experiment>(screeningViewContext) @@ -76,7 +77,7 @@ public class ExperimentAnalysisSummaryViewer AbstractTabItemFactory factory = createTabFactory(screeningViewContext, result, restrictGlobalScopeLinkToProject, - analysisProcedureOrNull); + analysisProcedureCriteria); DispatcherHelper.dispatchNaviEvent(factory); } }); @@ -85,7 +86,8 @@ public class ExperimentAnalysisSummaryViewer private static AbstractTabItemFactory createTabFactory( final IViewContext<IScreeningClientServiceAsync> viewContext, final IEntityInformationHolderWithProperties experiment, - final boolean restrictGlobalScopeLinkToProject, final String analysisProcedureOrNull) + final boolean restrictGlobalScopeLinkToProject, + final AnalysisProcedureCriteria analysisProcedureCriteria) { return new AbstractTabItemFactory() { @@ -103,7 +105,7 @@ public class ExperimentAnalysisSummaryViewer { IDisposableComponent tabComponent = createViewer(viewContext, experiment, restrictGlobalScopeLinkToProject, - analysisProcedureOrNull); + analysisProcedureCriteria); return DefaultTabItem.create(getTabTitle(), tabComponent, viewContext); } @@ -112,7 +114,7 @@ public class ExperimentAnalysisSummaryViewer { return ScreeningLinkExtractor.createExperimentAnalysisSummaryBrowserLink( experiment.getPermId(), restrictGlobalScopeLinkToProject, - analysisProcedureOrNull); + analysisProcedureCriteria.tryGetAnalysisProcedureCode()); } @Override @@ -133,12 +135,13 @@ public class ExperimentAnalysisSummaryViewer private static IDisposableComponent createViewer( IViewContext<IScreeningClientServiceAsync> viewContext, IEntityInformationHolderWithProperties experiment, - boolean restrictGlobalScopeLinkToProject, String analysisProcedureOrNull) + boolean restrictGlobalScopeLinkToProject, + AnalysisProcedureCriteria analysisProcedureCriteria) { String headingText = viewContext.getMessage(Dict.ASSAY_HEADER, experiment.getCode()); final IDisposableComponent gridComponent = ExperimentAnalysisSummaryGrid.create(viewContext, experiment, - restrictGlobalScopeLinkToProject); + restrictGlobalScopeLinkToProject, analysisProcedureCriteria); return MaterialComponentUtils.createExperimentViewer(viewContext, experiment, headingText, gridComponent); diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java index 5d471dc39fd..985324f99c7 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java @@ -1,5 +1,6 @@ package ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.locator; +import ch.systemsx.cisd.common.shared.basic.utils.StringUtils; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; import ch.systemsx.cisd.openbis.generic.client.web.client.application.locator.AbstractViewLocatorResolver; import ch.systemsx.cisd.openbis.generic.client.web.client.application.locator.ViewLocator; @@ -7,6 +8,7 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.exception.UserFailureE import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.IScreeningClientServiceAsync; import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.ExperimentAnalysisSummaryViewer; import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ui.columns.specific.ScreeningLinkExtractor; +import ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto.WellSearchCriteria.AnalysisProcedureCriteria; /** * Locator resolver for experiment analysis summary view. @@ -33,10 +35,22 @@ public class ExperimentAnalysisSummaryResolver extends AbstractViewLocatorResolv getOptionalBooleanParameter(locator, ScreeningLinkExtractor.RESTRICT_GLOBAL_SEARCH_TO_PROJECT, false); - String analysisProcedureOrNull = - getOptionalParameter(locator, ScreeningLinkExtractor.ANALYSIS_PROCEDURE_KEY); + AnalysisProcedureCriteria analysisProcedureCriteria = + extractAnalysisProcedureCriteria(locator); + ExperimentAnalysisSummaryViewer.openTab(viewContext, experimentPermId, - restrictGlobalScopeLinkToProject, analysisProcedureOrNull); + restrictGlobalScopeLinkToProject, analysisProcedureCriteria); + + } + private AnalysisProcedureCriteria extractAnalysisProcedureCriteria(ViewLocator locator) + { + String analysisProcedureCode = + getOptionalParameter(locator, ScreeningLinkExtractor.ANALYSIS_PROCEDURE_KEY); + + return StringUtils.isBlank(analysisProcedureCode) ? AnalysisProcedureCriteria + .createAllProcedures() : AnalysisProcedureCriteria + .createFromCode(analysisProcedureCode); } + } \ No newline at end of file -- GitLab