diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/MatchingEntitiesPanel.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/MatchingEntitiesPanel.java index b1775852a4a07a56709f4f49b97a288de6632d56..720b078635fbedb6fba30bc6e9a7b536731747a7 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/MatchingEntitiesPanel.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/MatchingEntitiesPanel.java @@ -149,17 +149,19 @@ final class MatchingEntitiesPanel extends AbstractBrowserGrid<MatchingEntity, Ma } @Override - protected void showEntityViewer(MatchingEntity matchingEntity, boolean editMode, boolean inBackground) + protected void showEntityViewer(MatchingEntity matchingEntity, boolean editMode, + boolean inBackground) { final EntityKind entityKind = matchingEntity.getEntityKind(); BasicEntityType entityType = matchingEntity.getEntityType(); final IClientPluginFactory clientPluginFactory = viewContext.getClientPluginFactoryProvider().getClientPluginFactory(entityKind, entityType); - final IClientPlugin<BasicEntityType, IIdentifiable> createClientPlugin = + // NOTE: createEntityViewer is the only allowed operation for MatchingEntityPanel + final IClientPlugin<BasicEntityType, IIdentifiable> clientPlugin = clientPluginFactory.createClientPlugin(entityKind); final AbstractTabItemFactory tabView = - createClientPlugin.createEntityViewer(entityType, matchingEntity.asIdentifiable()); + clientPlugin.createEntityViewer(entityType, matchingEntity.asIdentifiable()); tabView.setInBackground(inBackground); DispatcherHelper.dispatchNaviEvent(tabView); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/ClientPluginAdapter.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/ClientPluginAdapter.java index e7b729be8f4d0fa20705bdcad3a1b784c8ea37dd..c853592f95ca516fe76a46e9658c49c38e0b7e5d 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/ClientPluginAdapter.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/ClientPluginAdapter.java @@ -18,8 +18,8 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.plugin; import com.google.gwt.user.client.ui.Widget; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareWidget; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareWidget; import ch.systemsx.cisd.openbis.generic.shared.basic.IIdentifiable; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BasicEntityType; @@ -47,7 +47,8 @@ public class ClientPluginAdapter<E extends BasicEntityType, I extends IIdentifia throw new UnsupportedOperationException("Not yet implemented."); } - public AbstractTabItemFactory createEntityViewer(final E entityType, final I identifiable) + public AbstractTabItemFactory createEntityViewer(final BasicEntityType entityType, + final IIdentifiable identifiable) { throw new UnsupportedOperationException("Not yet implemented."); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/IClientPlugin.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/IClientPlugin.java index cbc5a2b62710114bc49ce0d8fa7298b227bf946a..d310dbbf114e82228761d359a06bb24e390cc096 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/IClientPlugin.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/plugin/IClientPlugin.java @@ -18,8 +18,8 @@ package ch.systemsx.cisd.openbis.generic.client.web.client.application.plugin; import com.google.gwt.user.client.ui.Widget; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareWidget; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareWidget; import ch.systemsx.cisd.openbis.generic.shared.basic.IIdentifiable; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BasicEntityType; @@ -40,8 +40,10 @@ public interface IClientPlugin<T extends BasicEntityType, I extends IIdentifiabl /** * Shows a detailed view of the entity specified by its <var>identifier</var>. */ - public AbstractTabItemFactory createEntityViewer(final T entityType, final I identifiable); - + // NOTE: BasicEntityType is used here to allow viewing entities from MatchingEntitiesPanel + public AbstractTabItemFactory createEntityViewer(final BasicEntityType entityType, + final IIdentifiable identifiable); + /** * Shows a registration form for entities of given <var>entityType</var>. */ @@ -58,7 +60,7 @@ public interface IClientPlugin<T extends BasicEntityType, I extends IIdentifiabl public Widget createBatchUpdateForEntityType(final T entityType); /** - * Shows a editor of the specified entity.. + * Shows a editor of the specified entity. */ public AbstractTabItemFactory createEntityEditor(final T entityType, final I identifiable); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java index d6adf0de608f8d398ef7b4e4a6abfa68487aded5..37787102587baff664d954a0d0b50d2e38647d6e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/application/ui/sample/SampleBrowserGrid.java @@ -70,7 +70,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BasicEntityType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKind; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.EntityKind; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.EntityType; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListSampleCriteria; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.PropertyType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample; @@ -163,7 +162,7 @@ public class SampleBrowserGrid extends public static IDisposableComponent createGridForExperimentSamples( final IViewContext<ICommonClientServiceAsync> viewContext, final TechId experimentId, - final String gridId, final ExperimentType experimentType) + final String gridId, final BasicEntityType experimentType) { final ListSampleDisplayCriteria criteria = ListSampleDisplayCriteria.createForExperiment(experimentId); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java index b431b59b2f161811a005d5afcf297ac7826a0352..fd29053662790c07fc971cf8ba6b1bd6867fa101 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/demo/client/web/client/application/ClientPluginFactory.java @@ -25,11 +25,11 @@ import com.google.gwt.user.client.ui.Widget; import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAsync; import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractClientPluginFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareWidget; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DefaultTabItem; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DummyComponent; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.ITabItem; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier; import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier.HelpPageAction; import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier.HelpPageDomain; @@ -112,7 +112,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV // IViewClientPlugin // - public final AbstractTabItemFactory createEntityViewer(final SampleType sampleType, + public final AbstractTabItemFactory createEntityViewer(final BasicEntityType sampleType, final IIdentifiable identifiable) { final TechId sampleId = TechId.create(identifiable); @@ -196,8 +196,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<DemoV // @Override - public final AbstractTabItemFactory createEntityViewer(final ExperimentType experimentType, - final IIdentifiable identifiable) + public final AbstractTabItemFactory createEntityViewer( + final BasicEntityType experimentType, final IIdentifiable identifiable) { return new AbstractTabItemFactory() { diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java index af06b82b93fe05486607db952bd889847fe7a04c..aa8b8618ae415f7bdc061a3c5b8db262cb1877a5 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/ClientPluginFactory.java @@ -24,11 +24,11 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.ICommonClientServiceAs import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractClientPluginFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict; import ch.systemsx.cisd.openbis.generic.client.web.client.application.IViewContext; +import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareComponent; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareWidget; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DefaultTabItem; import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.ITabItem; -import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.AbstractTabItemFactory; import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier; import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier.HelpPageAction; import ch.systemsx.cisd.openbis.generic.client.web.client.application.help.HelpPageIdentifier.HelpPageDomain; @@ -139,7 +139,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener // IViewClientPlugin // - public AbstractTabItemFactory createEntityViewer(final SampleType sampleType, + public AbstractTabItemFactory createEntityViewer(final BasicEntityType sampleType, final IIdentifiable identifiable) { return new AbstractTabItemFactory() @@ -226,7 +226,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener } @Override - public final AbstractTabItemFactory createEntityViewer(final MaterialType materialType, + public final AbstractTabItemFactory createEntityViewer(final BasicEntityType materialType, final IIdentifiable identifiable) { final TechId techId = TechId.create(identifiable); @@ -295,8 +295,8 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener // @Override - public final AbstractTabItemFactory createEntityViewer(final ExperimentType experimentType, - final IIdentifiable experimentId) + public final AbstractTabItemFactory createEntityViewer( + final BasicEntityType experimentType, final IIdentifiable experimentId) { return new AbstractTabItemFactory() { @@ -370,7 +370,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Gener { @Override - public final AbstractTabItemFactory createEntityViewer(final DataSetType dataSetType, + public final AbstractTabItemFactory createEntityViewer(final BasicEntityType dataSetType, final IIdentifiable identifiable) { return new AbstractTabItemFactory() diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentDataSetBrowser.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentDataSetBrowser.java index c07bf8d401b08ff3f0c586133e51f3552eb1585c..0edcbf373b6f7f4e42d941261d73e7e25615ed05 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentDataSetBrowser.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentDataSetBrowser.java @@ -26,7 +26,7 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.grid.ID import ch.systemsx.cisd.openbis.generic.client.web.client.dto.DefaultResultSetConfig; import ch.systemsx.cisd.openbis.generic.client.web.client.dto.ResultSetWithEntityTypes; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BasicEntityType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; /** @@ -39,7 +39,7 @@ public class ExperimentDataSetBrowser extends AbstractExternalDataGrid public static final String ID_PREFIX = GenericConstants.ID_PREFIX + PREFIX; static IDisposableComponent create(IViewContext<?> viewContext, TechId experimentId, - final ExperimentType experimentType) + final BasicEntityType experimentType) { IViewContext<ICommonClientServiceAsync> commonViewContext = viewContext.getCommonViewContext(); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentSamplesSection.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentSamplesSection.java index 0c7001a1d3ce2f69db3b9c8cce3be32f45d44d39..1da1d76e815ef70887ea755222d5fbec0025f673 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentSamplesSection.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/ExperimentSamplesSection.java @@ -24,7 +24,7 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.grid.ID import ch.systemsx.cisd.openbis.generic.client.web.client.application.ui.sample.SampleBrowserGrid; import ch.systemsx.cisd.openbis.generic.shared.basic.IIdentifiable; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BasicEntityType; /** * {@link SingleSectionPanel} containing experiment samples. @@ -37,11 +37,11 @@ public class ExperimentSamplesSection extends DisposableSectionPanel public static final String ID_PREFIX = GenericConstants.ID_PREFIX + PREFIX; - private final ExperimentType experimentType; + private final BasicEntityType experimentType; private final TechId experimentId; - public ExperimentSamplesSection(IViewContext<?> viewContext, ExperimentType experimentType, + public ExperimentSamplesSection(IViewContext<?> viewContext, BasicEntityType experimentType, IIdentifiable experimentId) { super("Samples", viewContext); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentViewer.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentViewer.java index a8db7a761ee2cfdea11f7e916463a27c227cea59..a39b96a5c327e9a1debbbbbc3df8a2ae76a077e9 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentViewer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/experiment/GenericExperimentViewer.java @@ -45,9 +45,9 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.IAttachmentHolder; import ch.systemsx.cisd.openbis.generic.shared.basic.IIdentifiable; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.AttachmentHolderKind; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BasicEntityType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKind; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType; import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.IGenericClientServiceAsync; /** @@ -68,7 +68,7 @@ public class GenericExperimentViewer extends AbstractViewer<Experiment> implemen protected final IIdentifiable experimentId; - protected final ExperimentType experimentType; + protected final BasicEntityType experimentType; private ExperimentPropertiesPanel propertiesPanelOrNull; @@ -76,7 +76,7 @@ public class GenericExperimentViewer extends AbstractViewer<Experiment> implemen public static DatabaseModificationAwareComponent create( final IViewContext<IGenericClientServiceAsync> viewContext, - final ExperimentType experimentType, final IIdentifiable identifiable) + final BasicEntityType experimentType, final IIdentifiable identifiable) { GenericExperimentViewer viewer = new GenericExperimentViewer(viewContext, experimentType, identifiable); @@ -84,7 +84,7 @@ public class GenericExperimentViewer extends AbstractViewer<Experiment> implemen } protected GenericExperimentViewer(final IViewContext<IGenericClientServiceAsync> viewContext, - final ExperimentType experimentType, final IIdentifiable experimentId) + final BasicEntityType experimentType, final IIdentifiable experimentId) { super(viewContext, createId(experimentId));