Interface IScreeningApiServer

  • All Superinterfaces:
    IRpcService

    public interface IScreeningApiServer
    extends IRpcService
    This interface is a part of the official public screening API. It is forbidden to change it in a non-backward-compatible manner without discussing it with all screening customers.
    • Field Detail

      • SERVICE_NAME

        static final java.lang.String SERVICE_NAME
        Name of this service for which it is registered at the RPC name server.
        See Also:
        Constant Field Values
      • MAJOR_VERSION

        static final int MAJOR_VERSION
        The major version of this service.
        See Also:
        Constant Field Values
      • SERVICE_URL

        static final java.lang.String SERVICE_URL
        Service part of the URL to access this service remotely.
        See Also:
        Constant Field Values
    • Method Detail

      • tryLoginScreening

        @Transactional
        java.lang.String tryLoginScreening​(java.lang.String userId,
                                           java.lang.String userPassword)
                                    throws java.lang.IllegalArgumentException
        Authenticates the user with a given password.
        Returns:
        sessionToken if authentication succeeded, null otherwise.
        Throws:
        java.lang.IllegalArgumentException
      • logoutScreening

        @Transactional(readOnly=true)
        void logoutScreening​(java.lang.String sessionToken)
                      throws java.lang.IllegalArgumentException
        Logout the session with the specified session token.
        Throws:
        java.lang.IllegalArgumentException
      • listPlates

        @Transactional(readOnly=true)
        java.util.List<Plate> listPlates​(java.lang.String sessionToken)
                                  throws java.lang.IllegalArgumentException
        Return the list of all visible plates assigned to any experiment, along with their hierarchical context (space, project, experiment).
        Throws:
        java.lang.IllegalArgumentException
      • listPlates

        @Transactional(readOnly=true)
        java.util.List<Plate> listPlates​(java.lang.String sessionToken,
                                         ExperimentIdentifier experiment)
                                  throws java.lang.IllegalArgumentException
        Return the list of all plates assigned to the given experiment.
        Throws:
        java.lang.IllegalArgumentException
        Since:
        1.5
      • getPlateMetadataList

        @Transactional(readOnly=true)
        java.util.List<PlateMetadata> getPlateMetadataList​(java.lang.String sessionToken,
                                                           java.util.List<? extends PlateIdentifier> plates)
                                                    throws java.lang.IllegalArgumentException
        Fetches the contents of a given list of plates. The result will contain well and material properties.
        Throws:
        java.lang.IllegalArgumentException
        Since:
        1.8
      • listExperiments

        @Transactional(readOnly=true)
        java.util.List<ExperimentIdentifier> listExperiments​(java.lang.String sessionToken)
        Return the list of all visible experiments, along with their hierarchical context (space, project).
        Since:
        1.1
      • listExperiments

        @Transactional(readOnly=true)
        java.util.List<ExperimentIdentifier> listExperiments​(java.lang.String sessionToken,
                                                             java.lang.String userId)
        Return the list of all experiments visible to user userId, along with their hierarchical context (space, project).
        Since:
        1.6
      • listFeatureVectorDatasets

        @Transactional(readOnly=true)
        java.util.List<FeatureVectorDatasetReference> listFeatureVectorDatasets​(java.lang.String sessionToken,
                                                                                java.util.List<? extends PlateIdentifier> plates)
                                                                         throws java.lang.IllegalArgumentException
        For a given set of plates (given by space / plate bar code), provide the list of all data sets containing feature vectors for each of these plates.
        Throws:
        java.lang.IllegalArgumentException
      • listImageDatasets

        @Transactional(readOnly=true)
        java.util.List<ImageDatasetReference> listImageDatasets​(java.lang.String sessionToken,
                                                                java.util.List<? extends PlateIdentifier> plates)
                                                         throws java.lang.IllegalArgumentException
        For a given set of plates provide the list of all data sets containing images for each of these plates.
        Throws:
        java.lang.IllegalArgumentException
      • getImageInfo

        @Transactional(readOnly=true)
        java.util.Map<java.lang.String,​LogicalImageInfo> getImageInfo​(java.lang.String sessionToken,
                                                                            java.util.List<java.lang.String> datasetCode)
        Returns information about logical image in the given image datasets.
      • getImageResolutions

        @Transactional(readOnly=true)
        java.util.Map<java.lang.String,​java.util.List<ImageResolution>> getImageResolutions​(java.lang.String sessionToken,
                                                                                                  java.util.List<java.lang.String> datasetCode)
        Returns information about available image resolutions for the given image datasets.
      • listRawImageDatasets

        @Transactional(readOnly=true)
        java.util.List<ImageDatasetReference> listRawImageDatasets​(java.lang.String sessionToken,
                                                                   java.util.List<? extends PlateIdentifier> plates)
                                                            throws java.lang.IllegalArgumentException
        For a given set of plates provide the list of all data sets containing raw images for each of these plates.
        Throws:
        java.lang.IllegalArgumentException
        Since:
        1.6
      • listSegmentationImageDatasets

        @Transactional(readOnly=true)
        java.util.List<ImageDatasetReference> listSegmentationImageDatasets​(java.lang.String sessionToken,
                                                                            java.util.List<? extends PlateIdentifier> plates)
                                                                     throws java.lang.IllegalArgumentException
        For a given set of plates provide the list of all data sets containing segmentation images for each of these plates.
        Throws:
        java.lang.IllegalArgumentException
        Since:
        1.6
      • getDatasetIdentifiers

        @Transactional(readOnly=true)
        java.util.List<IDatasetIdentifier> getDatasetIdentifiers​(java.lang.String sessionToken,
                                                                 java.util.List<java.lang.String> datasetCodes)
        Converts a given list of dataset codes to dataset identifiers.
      • listPlateWells

        @Transactional(readOnly=true)
        java.util.List<PlateWellReferenceWithDatasets> listPlateWells​(java.lang.String sessionToken,
                                                                      ExperimentIdentifier experimentIdentifer,
                                                                      MaterialIdentifier materialIdentifier,
                                                                      boolean findDatasets)
        For the given experimentIdentifier, find all plate locations that are connected to the specified materialIdentifier. If findDatasets == true, find also the connected image and image analysis data sets for the relevant plates.
        Since:
        1.1
      • listPlateWells

        @Transactional(readOnly=true)
        java.util.List<PlateWellReferenceWithDatasets> listPlateWells​(java.lang.String sessionToken,
                                                                      MaterialIdentifier materialIdentifier,
                                                                      boolean findDatasets)
        For the given materialIdentifier, find all plate locations that are connected to it. If findDatasets == true, find also the connected image and image analysis data sets for the relevant plates.
        Since:
        1.2
      • listPlateWells

        @Transactional(readOnly=true)
        java.util.List<WellIdentifier> listPlateWells​(java.lang.String sessionToken,
                                                      PlateIdentifier plateIdentifier)
        For the given plateIdentifier find all wells that are connected to it.
        Since:
        1.3
      • getWellSample

        @Transactional(readOnly=true)
        Sample getWellSample​(java.lang.String sessionToken,
                             WellIdentifier wellIdentifier)
        For a given wellIdentifier, return the corresponding Sample including properties.
        Since:
        1.3
      • getPlateSample

        @Transactional(readOnly=true)
        Sample getPlateSample​(java.lang.String sessionToken,
                              PlateIdentifier plateIdentifier)
        For a given plateIdentifier, return the corresponding Sample.
        Since:
        1.7
      • listPlateMaterialMapping

        @Transactional(readOnly=true)
        java.util.List<PlateWellMaterialMapping> listPlateMaterialMapping​(java.lang.String sessionToken,
                                                                          java.util.List<? extends PlateIdentifier> plates,
                                                                          MaterialTypeIdentifier materialTypeIdentifierOrNull)
        For a given list of plates, return the mapping of plate wells to materials contained in each well.
        Parameters:
        plates - The list of plates to get the mapping for
        materialTypeIdentifierOrNull - If not null, consider only materials of the given type for the mapping.
        Returns:
        A list of well to material mappings, one element for each plate.
        Since:
        1.2
      • getExperimentImageMetadata

        @Transactional(readOnly=true)
        ExperimentImageMetadata getExperimentImageMetadata​(java.lang.String sessionToken,
                                                           ExperimentIdentifier experimentIdentifer)
        Returns aggregated metadata for all images/plates within one experiment.
        Since:
        1.9
      • listAvailableFeatureCodes

        @Transactional(readOnly=true)
        java.util.List<java.lang.String> listAvailableFeatureCodes​(java.lang.String sessionToken,
                                                                   java.util.List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
        Groups the specified objects by a data store code and calls IDssServiceRpcScreening.listAvailableFeatureCodes(String, List) method for each group of objects on appropriate data store server. Results from the data stores are combined and returned as a result of this method.
        Since:
        1.10
      • loadImagesBase64

        @Transactional(readOnly=true)
        java.util.List<java.lang.String> loadImagesBase64​(java.lang.String sessionToken,
                                                          java.util.List<PlateImageReference> imageReferences,
                                                          boolean convertToPng)
        Groups the specified objects by a data store code and calls IDssServiceRpcScreening.loadImagesBase64(String, List, boolean) method for each group of objects on appropriate data store server. Results from the data stores are combined and returned as a result of this method.
        Since:
        1.10
      • loadThumbnailImagesBase64

        @Transactional(readOnly=true)
        java.util.List<java.lang.String> loadThumbnailImagesBase64​(java.lang.String sessionToken,
                                                                   java.util.List<PlateImageReference> imageReferences)
        Groups the specified objects by a data store code and calls IDssServiceRpcScreening.loadThumbnailImagesBase64(String, List) method for each group of objects on appropriate data store server. Results from the data stores are combined and returned as a result of this method.
        Since:
        1.10
      • loadImagesBase64

        @Transactional(readOnly=true)
        java.util.List<java.lang.String> loadImagesBase64​(java.lang.String sessionToken,
                                                          java.util.List<PlateImageReference> imageReferences,
                                                          ImageSize size)
        Groups the specified objects by a data store code and calls IDssServiceRpcScreening.loadImagesBase64(String, List, ImageSize) method for each group of objects on appropriate data store server. Results from the data stores are combined and returned as a result of this method.
        Since:
        1.10
      • loadImagesBase64

        @Transactional(readOnly=true)
        java.util.List<java.lang.String> loadImagesBase64​(java.lang.String sessionToken,
                                                          java.util.List<PlateImageReference> imageReferences)
        Groups the specified objects by a data store code and calls IDssServiceRpcScreening.loadImagesBase64(String, List) method for each group of objects on appropriate data store server. Results from the data stores are combined and returned as a result of this method.
        Since:
        1.10