From 90c0ac9053d80ef96b701d94264725d8226bfde6 Mon Sep 17 00:00:00 2001 From: kaloyane <kaloyane> Date: Wed, 22 Jun 2011 11:04:48 +0000 Subject: [PATCH] refactoring: moved a "getMaterialInfo" from IGenericServer to ICommonServer SVN: 21803 --- .../web/client/ICommonClientService.java | 5 ++++ .../web/client/ICommonClientServiceAsync.java | 5 ++++ .../web/server/CommonClientService.java | 15 +++++++++++ .../openbis/generic/server/CommonServer.java | 11 ++++++++ .../generic/server/CommonServerLogger.java | 6 +++++ .../openbis/generic/shared/ICommonServer.java | 7 +++++ .../web/client/IGenericClientService.java | 6 ----- .../client/IGenericClientServiceAsync.java | 7 ----- .../material/GenericMaterialEditForm.java | 2 +- .../material/GenericMaterialViewer.java | 2 +- .../web/server/GenericClientService.java | 15 ----------- .../plugin/generic/server/GenericServer.java | 13 ---------- .../generic/server/GenericServerLogger.java | 7 ----- .../plugin/generic/shared/IGenericServer.java | 8 ------ .../web/server/CommonClientServiceTest.java | 26 +++++++++++++++++++ .../shared/ICommonServer.java.expected | 7 +++++ .../web/server/GenericClientServiceTest.java | 26 ------------------- .../shared/IGenericServer.java.expected | 8 ------ ...atchMaterialRegistrationAndUpdateTest.java | 2 +- .../detailviewers/ImagingMaterialViewer.java | 6 ++--- .../screening/server/ScreeningServer.java | 2 +- 21 files changed, 88 insertions(+), 98 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientService.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientService.java index cbc4486a436..c1a28f807e3 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientService.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientService.java @@ -784,6 +784,11 @@ public interface ICommonClientService extends IClientService */ public Material getMaterialInfo(MaterialIdentifier identifier) throws UserFailureException; + /** + * For given {@link MaterialIdentifier} returns the corresponding {@link Material}. + */ + public Material getMaterialInfo(TechId techId) throws UserFailureException; + /** * For given {@link MaterialIdentifier} returns the corresponding * {@link IEntityInformationHolderWithPermId}. diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientServiceAsync.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientServiceAsync.java index eadc781f655..a0e87eb0d62 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientServiceAsync.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/client/ICommonClientServiceAsync.java @@ -692,6 +692,11 @@ public interface ICommonClientServiceAsync extends IClientServiceAsync public void getMaterialInfo(MaterialIdentifier materialIdentifier, AsyncCallback<Material> callback); + /** + * @see ICommonClientService#getMaterialInfo(TechId) + */ + public Material getMaterialInfo(TechId techId, AsyncCallback<Material> callback); + /** * @see ICommonClientService#getMaterialInformationHolder(MaterialIdentifier) */ diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientService.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientService.java index 42797c1e693..56cd5a3ac38 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientService.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientService.java @@ -1955,6 +1955,21 @@ public final class CommonClientService extends AbstractClientService implements } } + public Material getMaterialInfo(TechId techId) + throws ch.systemsx.cisd.openbis.generic.client.web.client.exception.UserFailureException + { + final String sessionToken = getSessionToken(); + try + { + final Material material = commonServer.getMaterialInfo(sessionToken, techId); + transformXML(material); + return material; + } catch (final ch.systemsx.cisd.common.exceptions.UserFailureException e) + { + throw UserFailureExceptionTranslator.translate(e); + } + } + public String getTemplate(EntityKind entityKind, String type, boolean autoGenerate, boolean withExperiments, BatchOperationKind operationKind) { diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServer.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServer.java index 9715122a24d..13a98bf0008 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServer.java @@ -183,6 +183,7 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.FileFormatTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.GridCustomFilterPE; import ch.systemsx.cisd.openbis.generic.shared.dto.IEntityInformationHolderDTO; import ch.systemsx.cisd.openbis.generic.shared.dto.IEntityInformationWithPropertiesHolder; +import ch.systemsx.cisd.openbis.generic.shared.dto.MaterialPE; import ch.systemsx.cisd.openbis.generic.shared.dto.MaterialTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.NewRoleAssignment; import ch.systemsx.cisd.openbis.generic.shared.dto.PersonPE; @@ -1586,6 +1587,16 @@ public final class CommonServer extends AbstractCommonServer<ICommonServerForInt return MaterialTranslator.translate(materialBO.getMaterial()); } + public Material getMaterialInfo(final String sessionToken, final TechId materialId) + { + final Session session = getSession(sessionToken); + final IMaterialBO materialBO = businessObjectFactory.createMaterialBO(session); + materialBO.loadDataByTechId(materialId); + materialBO.enrichWithProperties(); + final MaterialPE material = materialBO.getMaterial(); + return MaterialTranslator.translate(material, true); + } + public IEntityInformationHolderWithPermId getMaterialInformationHolder(String sessionToken, MaterialIdentifier identifier) { diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServerLogger.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServerLogger.java index 9a003a8c76b..02a46f3ade1 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServerLogger.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/CommonServerLogger.java @@ -767,6 +767,12 @@ final class CommonServerLogger extends AbstractServerLogger implements ICommonSe return null; } + public Material getMaterialInfo(final String sessionToken, final TechId materialId) + { + logAccess(sessionToken, "get_material_info", "ID(%s)", materialId); + return null; + } + public Date updateMaterial(String sessionToken, TechId materialId, List<IEntityProperty> properties, Date version) { diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java index c1ed9bd8b4c..d4a129d61d2 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java @@ -1020,6 +1020,13 @@ public interface ICommonServer extends IServer @RolesAllowed(RoleWithHierarchy.SPACE_OBSERVER) public Material getMaterialInfo(String sessionToken, MaterialIdentifier identifier); + /** + * For given {@link TechId} returns the corresponding {@link Material}. + */ + @Transactional(readOnly = true) + @RolesAllowed(RoleWithHierarchy.SPACE_OBSERVER) + public Material getMaterialInfo(String sessionToken, TechId materialId); + /** * For given {@link MaterialIdentifier} returns the corresponding * {@link IEntityInformationHolder}. diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientService.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientService.java index 1363d956e8e..effeb4fef16 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientService.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientService.java @@ -32,7 +32,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdates; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.MaterialType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewSample; @@ -107,11 +106,6 @@ public interface IGenericClientService extends IClientService public List<BatchRegistrationResult> updateExperiments(final ExperimentType experimentType, final String sessionKey) throws UserFailureException; - /** - * For given {@link TechId} returns corresponding {@link Material}. - */ - public Material getMaterialInfo(final TechId materialId) throws UserFailureException; - /** * For given {@link TechId} returns corresponding {@link ExternalData}. */ diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientServiceAsync.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientServiceAsync.java index fb626504f1a..293c940df31 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientServiceAsync.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/IGenericClientServiceAsync.java @@ -34,7 +34,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdates; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.MaterialType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewSample; @@ -90,12 +89,6 @@ public interface IGenericClientServiceAsync extends IClientServiceAsync final AsyncCallback<List<BatchRegistrationResult>> asyncCallback) throws UserFailureException; - /** - * @see IGenericClientService#getMaterialInfo(TechId) - */ - public void getMaterialInfo(TechId materialId, - final AsyncCallback<Material> materialInfoCallback); - /** * @see IGenericClientService#getDataSetInfo(TechId) */ diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialEditForm.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialEditForm.java index a60486cf728..c4a482d3fe2 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialEditForm.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialEditForm.java @@ -132,7 +132,7 @@ public final class GenericMaterialEditForm extends @Override protected void loadForm() { - viewContext.getService().getMaterialInfo(techIdOrNull, + viewContext.getCommonService().getMaterialInfo(techIdOrNull, new MaterialInfoCallback(viewContext)); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java index 886203b9194..9311ef27986 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/client/application/material/GenericMaterialViewer.java @@ -83,7 +83,7 @@ abstract public class GenericMaterialViewer extends AbstractViewerWithVerticalSp protected void loadMaterialInfo(TechId materialTechId, AsyncCallback<Material> material) { - viewContext.getService().getMaterialInfo(materialTechId, material); + viewContext.getCommonService().getMaterialInfo(materialTechId, material); } }; viewer.reloadAllData(); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientService.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientService.java index 64a0e121dc3..8121483e16e 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientService.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientService.java @@ -50,7 +50,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdates; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.MaterialType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewAttachment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewDataSetsWithTypes; @@ -187,20 +186,6 @@ public class GenericClientService extends AbstractClientService implements IGene } - public final Material getMaterialInfo(final TechId materialId) - { - try - { - final String sessionToken = getSessionToken(); - final Material material = genericServer.getMaterialInfo(sessionToken, materialId); - transformXML(material); - return material; - } catch (final ch.systemsx.cisd.common.exceptions.UserFailureException e) - { - throw UserFailureExceptionTranslator.translate(e); - } - } - public final ExternalData getDataSetInfo(final TechId datasetId) { try diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServer.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServer.java index e538f35ff99..4ed12dc9945 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServer.java @@ -42,7 +42,6 @@ import ch.systemsx.cisd.openbis.generic.server.batch.BatchOperationExecutor; import ch.systemsx.cisd.openbis.generic.server.batch.IBatchOperation; import ch.systemsx.cisd.openbis.generic.server.business.IPropertiesBatchManager; import ch.systemsx.cisd.openbis.generic.server.business.bo.IExperimentBO; -import ch.systemsx.cisd.openbis.generic.server.business.bo.IMaterialBO; import ch.systemsx.cisd.openbis.generic.server.business.bo.IMaterialTable; import ch.systemsx.cisd.openbis.generic.server.business.bo.IProjectBO; import ch.systemsx.cisd.openbis.generic.server.business.bo.ISampleBO; @@ -89,7 +88,6 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentBatchUpdatesDTO; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentUpdatesDTO; -import ch.systemsx.cisd.openbis.generic.shared.dto.MaterialPE; import ch.systemsx.cisd.openbis.generic.shared.dto.MaterialTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.SampleBatchUpdatesDTO; import ch.systemsx.cisd.openbis.generic.shared.dto.SamplePE; @@ -107,7 +105,6 @@ import ch.systemsx.cisd.openbis.generic.shared.dto.identifier.SampleIdentifierFa import ch.systemsx.cisd.openbis.generic.shared.dto.properties.EntityKind; import ch.systemsx.cisd.openbis.generic.shared.translator.AttachmentTranslator; import ch.systemsx.cisd.openbis.generic.shared.translator.ExperimentTranslator; -import ch.systemsx.cisd.openbis.generic.shared.translator.MaterialTranslator; import ch.systemsx.cisd.openbis.generic.shared.translator.MaterialTypeTranslator; import ch.systemsx.cisd.openbis.generic.shared.translator.SampleTranslator; import ch.systemsx.cisd.openbis.generic.shared.util.ServerUtils; @@ -235,16 +232,6 @@ public final class GenericServer extends AbstractServer<IGenericServer> implemen ExperimentTranslator.LoadableFields.ATTACHMENTS); } - public Material getMaterialInfo(final String sessionToken, final TechId materialId) - { - final Session session = getSession(sessionToken); - final IMaterialBO materialBO = businessObjectFactory.createMaterialBO(session); - materialBO.loadDataByTechId(materialId); - materialBO.enrichWithProperties(); - final MaterialPE material = materialBO.getMaterial(); - return MaterialTranslator.translate(material, true); - } - public ExternalData getDataSetInfo(final String sessionToken, final TechId datasetId) { return commonServer.getDataSetInfo(sessionToken, datasetId); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerLogger.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerLogger.java index 4b0fb1eb2c3..da756e54b76 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerLogger.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/server/GenericServerLogger.java @@ -33,7 +33,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DataSetUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewAttachment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewDataSetsWithTypes; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; @@ -93,12 +92,6 @@ final class GenericServerLogger extends AbstractServerLogger implements IGeneric newSample.getSampleType(), newSample.getIdentifier(), attachments.size()); } - public Material getMaterialInfo(final String sessionToken, final TechId materialId) - { - logAccess(sessionToken, "get_material_info", "ID(%s)", materialId); - return null; - } - public ExternalData getDataSetInfo(final String sessionToken, final TechId datasetId) { logAccess(sessionToken, "get_data_set_info", "ID(%s)", datasetId); diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java index 7027063db24..60370725b4c 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java @@ -48,7 +48,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKin import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewAttachment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewDataSetsWithTypes; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; @@ -101,13 +100,6 @@ public interface IGenericServer extends IServer @AuthorizationGuard(guardClass = NewSamplePredicate.class) final NewSample newSample, final Collection<NewAttachment> attachments); - /** - * For given {@link TechId} returns the corresponding {@link Material}. - */ - @Transactional(readOnly = true) - @RolesAllowed(RoleWithHierarchy.SPACE_OBSERVER) - public Material getMaterialInfo(String sessionToken, TechId materialId); - /** * For given {@link TechId} returns the corresponding {@link ExternalData}. */ diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientServiceTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientServiceTest.java index 13f04c7e468..20a416851eb 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientServiceTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/client/web/server/CommonClientServiceTest.java @@ -64,6 +64,7 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.GridCustomColumn; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ISerializableComparable; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListSampleCriteria; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewVocabulary; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Project; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.PropertyType; @@ -577,6 +578,31 @@ public final class CommonClientServiceTest extends AbstractClientServiceTest context.assertIsSatisfied(); } + @Test + public void testGetMaterialInfo() + { + final TechId id = new TechId(4711L); + context.checking(new Expectations() + { + { + prepareGetSessionToken(this); + + one(commonServer).getMaterialInfo(SESSION_TOKEN, id); + Material material = new Material(); + material.setProperties(Arrays.asList(createXmlProperty())); + will(returnValue(material)); + } + }); + + Material info = commonClientService.getMaterialInfo(id); + + IEntityProperty transformedXMLProperty = info.getProperties().get(0); + assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?><b>hello</b>", + transformedXMLProperty.tryGetAsString()); + assertEquals("<root>hello</root>", transformedXMLProperty.tryGetOriginalValue()); + context.assertIsSatisfied(); + } + @Test public void testLogout() { diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java.expected b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java.expected index c1ed9bd8b4c..d4a129d61d2 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java.expected +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/shared/ICommonServer.java.expected @@ -1020,6 +1020,13 @@ public interface ICommonServer extends IServer @RolesAllowed(RoleWithHierarchy.SPACE_OBSERVER) public Material getMaterialInfo(String sessionToken, MaterialIdentifier identifier); + /** + * For given {@link TechId} returns the corresponding {@link Material}. + */ + @Transactional(readOnly = true) + @RolesAllowed(RoleWithHierarchy.SPACE_OBSERVER) + public Material getMaterialInfo(String sessionToken, TechId materialId); + /** * For given {@link MaterialIdentifier} returns the corresponding * {@link IEntityInformationHolder}. diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientServiceTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientServiceTest.java index bd40ba91d54..4ef6d6c1358 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientServiceTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/client/web/server/GenericClientServiceTest.java @@ -49,7 +49,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.GenericEntityProperty; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.MaterialType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewAttachment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; @@ -212,31 +211,6 @@ public final class GenericClientServiceTest extends AbstractClientServiceTest context.assertIsSatisfied(); } - @Test - public void testGetMaterialInfo() - { - final TechId id = new TechId(4711L); - context.checking(new Expectations() - { - { - prepareGetSessionToken(this); - - one(genericServer).getMaterialInfo(SESSION_TOKEN, id); - Material material = new Material(); - material.setProperties(Arrays.asList(createXmlProperty())); - will(returnValue(material)); - } - }); - - Material info = genericClientService.getMaterialInfo(id); - - IEntityProperty transformedXMLProperty = info.getProperties().get(0); - assertEquals("<?xml version=\"1.0\" encoding=\"UTF-8\"?><b>hello</b>", - transformedXMLProperty.tryGetAsString()); - assertEquals("<root>hello</root>", transformedXMLProperty.tryGetOriginalValue()); - context.assertIsSatisfied(); - } - @Test public final void testRegisterSample() { diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java.expected b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java.expected index 7027063db24..60370725b4c 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java.expected +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/plugin/generic/shared/IGenericServer.java.expected @@ -48,7 +48,6 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseModificationKin import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExperimentUpdateResult; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewAttachment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewDataSetsWithTypes; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewExperiment; @@ -101,13 +100,6 @@ public interface IGenericServer extends IServer @AuthorizationGuard(guardClass = NewSamplePredicate.class) final NewSample newSample, final Collection<NewAttachment> attachments); - /** - * For given {@link TechId} returns the corresponding {@link Material}. - */ - @Transactional(readOnly = true) - @RolesAllowed(RoleWithHierarchy.SPACE_OBSERVER) - public Material getMaterialInfo(String sessionToken, TechId materialId); - /** * For given {@link TechId} returns the corresponding {@link ExternalData}. */ diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/BatchMaterialRegistrationAndUpdateTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/BatchMaterialRegistrationAndUpdateTest.java index 578497dee94..aa57e311269 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/BatchMaterialRegistrationAndUpdateTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/systemtest/BatchMaterialRegistrationAndUpdateTest.java @@ -188,7 +188,7 @@ public class BatchMaterialRegistrationAndUpdateTest extends SystemTestCase IEntityInformationHolderWithPermId m = commonClientService.getMaterialInformationHolder(new MaterialIdentifier(code, MATERIAL_TYPE)); - Material materialInfo = genericClientService.getMaterialInfo(new TechId(m.getId())); + Material materialInfo = commonClientService.getMaterialInfo(new TechId(m.getId())); assertEquals(code, materialInfo.getCode()); Collections.sort(materialInfo.getProperties(), new Comparator<IEntityProperty>() { diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java index 5854c2f0432..ca934c964df 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingMaterialViewer.java @@ -26,11 +26,10 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.TabContent import ch.systemsx.cisd.openbis.generic.client.web.client.application.framework.DatabaseModificationAwareComponent; import ch.systemsx.cisd.openbis.generic.shared.basic.TechId; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material; -import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.GenericViewContext; import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.material.GenericMaterialViewer; import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.IScreeningClientServiceAsync; -import ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto.WellSearchCriteria.ExperimentSearchCriteria; import ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto.WellSearchCriteria.ExperimentSearchByProjectCriteria; +import ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto.WellSearchCriteria.ExperimentSearchCriteria; import ch.systemsx.cisd.openbis.plugin.screening.shared.basic.dto.WellSearchCriteria.SingleExperimentSearchCriteria; /** @@ -70,8 +69,7 @@ public class ImagingMaterialViewer extends GenericMaterialViewer @Override protected void loadMaterialInfo(TechId materialTechId, AsyncCallback<Material> callback) { - new GenericViewContext(screeningViewContext.getCommonViewContext()).getService() - .getMaterialInfo(materialTechId, callback); + screeningViewContext.getCommonService().getMaterialInfo(materialTechId, callback); } @Override diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java index d93b2bcac28..37460453df3 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java @@ -264,7 +264,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl public Material getMaterialInfo(String sessionToken, TechId materialId) { - return genericServer.getMaterialInfo(sessionToken, materialId); + return commonServer.getMaterialInfo(sessionToken, materialId); } public Vocabulary getVocabulary(String sessionToken, String code) throws UserFailureException -- GitLab