Class AnnotatableWrapper<T extends DataObject>

    • Constructor Detail

      • AnnotatableWrapper

        protected AnnotatableWrapper​(T o)
        Constructor of the class GenericRepositoryObjectWrapper.
        Parameters:
        o - The annotatable DataObject to wrap in the GenericRepositoryObjectWrapper.
    • Method Detail

      • annotationLinkType

        protected abstract java.lang.String annotationLinkType()
        Returns the type of annotation link for this object.
        Returns:
        See above.
      • isLinked

        public <A extends GenericAnnotationWrapper<?>> boolean isLinked​(Client client,
                                                                        A annotation)
                                                                 throws ServiceException,
                                                                        AccessException,
                                                                        java.util.concurrent.ExecutionException
        Checks if a specific annotation is linked to the object.
        Type Parameters:
        A - The type of the annotation.
        Parameters:
        client - The client handling the connection.
        annotation - Annotation to be checked.
        Returns:
        True if the object is linked to the given annotation, false otherwise.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • link

        public <A extends GenericAnnotationWrapper<?>> void link​(Client client,
                                                                 A annotation)
                                                          throws ServiceException,
                                                                 AccessException,
                                                                 java.util.concurrent.ExecutionException
        Adds an annotation to the object in OMERO, if possible.
        Type Parameters:
        A - The type of the annotation.
        Parameters:
        client - The client handling the connection.
        annotation - Annotation to be added.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • link

        public void link​(Client client,
                         GenericAnnotationWrapper<?>... annotations)
                  throws ServiceException,
                         AccessException,
                         java.util.concurrent.ExecutionException
        Adds multiple annotations to the object in OMERO, if possible.
        Parameters:
        client - The client handling the connection.
        annotations - Annotations to add.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • linkIfNotLinked

        public void linkIfNotLinked​(Client client,
                                    GenericAnnotationWrapper<?>... annotations)
                             throws ServiceException,
                                    AccessException,
                                    java.util.concurrent.ExecutionException
        Adds multiple annotations to the object in OMERO if they are not already linked.
        Parameters:
        client - The client handling the connection.
        annotations - Annotations to add.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addTag

        public void addTag​(Client client,
                           java.lang.String name,
                           java.lang.String description)
                    throws ServiceException,
                           AccessException,
                           java.util.concurrent.ExecutionException
        Adds a newly created tag to the object in OMERO, if possible.
        Parameters:
        client - The client handling the connection.
        name - Tag Name.
        description - Tag description.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addTag

        public void addTag​(Client client,
                           java.lang.Long id)
                    throws ServiceException,
                           AccessException,
                           java.util.concurrent.ExecutionException
        Adds a tag to the object in OMERO, if possible.
        Parameters:
        client - The client handling the connection.
        id - ID of the tag to add to the object.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addTags

        public void addTags​(Client client,
                            java.lang.Long... ids)
                     throws ServiceException,
                            AccessException,
                            java.util.concurrent.ExecutionException
        Adds multiple tags by ID to the object in OMERO, if possible.
        Parameters:
        client - The client handling the connection.
        ids - Array of tag id in OMERO to add.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • getTags

        public java.util.List<TagAnnotationWrapper> getTags​(Client client)
                                                     throws ServiceException,
                                                            AccessException,
                                                            java.util.concurrent.ExecutionException
        Gets all tags linked to an object in OMERO, if possible.
        Parameters:
        client - The client handling the connection.
        Returns:
        See above.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • getMapAnnotations

        public java.util.List<MapAnnotationWrapper> getMapAnnotations​(Client client)
                                                               throws ServiceException,
                                                                      AccessException,
                                                                      java.util.concurrent.ExecutionException
        Gets all map annotations linked to an object in OMERO, if possible.
        Parameters:
        client - The client handling the connection.
        Returns:
        See above.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addPairKeyValue

        @Deprecated
        public void addPairKeyValue​(Client client,
                                    java.lang.String key,
                                    java.lang.String value)
                             throws ServiceException,
                                    AccessException,
                                    java.util.concurrent.ExecutionException
        Deprecated.
        Adds a single Key-Value pair to the object.
        Parameters:
        client - The client handling the connection.
        key - Name of the key.
        value - Value associated to the key.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addKeyValuePair

        public void addKeyValuePair​(Client client,
                                    java.lang.String key,
                                    java.lang.String value)
                             throws ServiceException,
                                    AccessException,
                                    java.util.concurrent.ExecutionException
        Adds a single Key-Value pair to the object.
        Parameters:
        client - The client handling the connection.
        key - Name of the key.
        value - Value associated to the key.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • getKeyValuePairs

        public java.util.Map<java.lang.String,​java.lang.String> getKeyValuePairs​(Client client)
                                                                                throws ServiceException,
                                                                                       AccessException,
                                                                                       java.util.concurrent.ExecutionException
        Gets the List of key-value pairs associated to an object as a map (no duplicate key should exist).
        Parameters:
        client - The client handling the connection.
        Returns:
        See above.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • getValue

        public java.lang.String getValue​(Client client,
                                         java.lang.String key)
                                  throws ServiceException,
                                         AccessException,
                                         java.util.concurrent.ExecutionException
        Gets the value from a Key-Value pair associated to the object.
        Parameters:
        client - The client handling the connection.
        key - Key researched.
        Returns:
        Value associated to the key.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.NoSuchElementException - Key not found.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • rate

        public void rate​(Client client,
                         int rating)
                  throws ServiceException,
                         AccessException,
                         java.util.concurrent.ExecutionException,
                         OMEROServerError,
                         java.lang.InterruptedException
        Rates the object (using a rating annotation).
        Parameters:
        client - The client handling the connection.
        rating - The rating.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        OMEROServerError - Server error.
        java.lang.InterruptedException - The thread was interrupted.
      • getMyRating

        public int getMyRating​(Client client)
                        throws ServiceException,
                               AccessException,
                               java.util.concurrent.ExecutionException
        Returns the user rating for this object (averaged if multiple ratings are linked).
        Parameters:
        client - The client handling the connection.
        Returns:
        See above.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addMapAnnotation

        @Deprecated
        public void addMapAnnotation​(Client client,
                                     MapAnnotationWrapper mapAnnotation)
                              throws ServiceException,
                                     AccessException,
                                     java.util.concurrent.ExecutionException
        Deprecated.
        Adds a List of Key-Value pair to the object. Use link(fr.igred.omero.Client, A) instead.

        The list is contained in the map annotation.

        Parameters:
        client - The client handling the connection.
        mapAnnotation - The map annotation.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addTable

        public void addTable​(Client client,
                             TableWrapper table)
                      throws ServiceException,
                             AccessException,
                             java.util.concurrent.ExecutionException
        Adds a table to the object in OMERO.
        Parameters:
        client - The client handling the connection.
        table - Table to add to the object.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addAndReplaceTable

        public void addAndReplaceTable​(Client client,
                                       TableWrapper table,
                                       GenericRepositoryObjectWrapper.ReplacePolicy policy)
                                throws ServiceException,
                                       AccessException,
                                       java.util.concurrent.ExecutionException,
                                       OMEROServerError,
                                       java.lang.InterruptedException
        Adds a table to the object in OMERO and unlinks or deletes previous tables with the same name.
        Parameters:
        client - The client handling the connection.
        table - Table to add to the object.
        policy - Whether older tables should be unlinked, deleted or deleted only if they become orphaned.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        java.lang.InterruptedException - The thread was interrupted.
        OMEROServerError - Server error.
      • addAndReplaceTable

        public void addAndReplaceTable​(Client client,
                                       TableWrapper table)
                                throws ServiceException,
                                       AccessException,
                                       java.util.concurrent.ExecutionException,
                                       OMEROServerError,
                                       java.lang.InterruptedException
        Adds a table to the object in OMERO and unlinks previous tables with the same name, or deletes them if they're orphaned.
        Parameters:
        client - The client handling the connection.
        table - Table to add to the object.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        java.lang.InterruptedException - The thread was interrupted.
        OMEROServerError - Server error.
      • getTable

        public TableWrapper getTable​(Client client,
                                     java.lang.Long fileId)
                              throws ServiceException,
                                     AccessException,
                                     java.util.concurrent.ExecutionException
        Gets a certain table linked to the object in OMERO.
        Parameters:
        client - The client handling the connection.
        fileId - FileId of the table researched.
        Returns:
        See above.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • getTables

        public java.util.List<TableWrapper> getTables​(Client client)
                                               throws ServiceException,
                                                      AccessException,
                                                      java.util.concurrent.ExecutionException
        Gets all tables linked to the object in OMERO.
        Parameters:
        client - The client handling the connection.
        Returns:
        See above.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • addFile

        public long addFile​(Client client,
                            java.io.File file)
                     throws java.util.concurrent.ExecutionException,
                            java.lang.InterruptedException
        Uploads a file and links it to the object
        Parameters:
        client - The client handling the connection.
        file - File to add.
        Returns:
        ID of the file created in OMERO.
        Throws:
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        java.lang.InterruptedException - The thread was interrupted.
      • addAndReplaceFile

        public long addAndReplaceFile​(Client client,
                                      java.io.File file,
                                      GenericRepositoryObjectWrapper.ReplacePolicy policy)
                               throws java.util.concurrent.ExecutionException,
                                      java.lang.InterruptedException,
                                      AccessException,
                                      ServiceException,
                                      OMEROServerError
        Uploads a file, links it to the object and unlinks or deletes previous files with the same name.
        Parameters:
        client - The client handling the connection.
        file - File to add.
        policy - Whether older files should be unlinked, deleted or deleted only if they become orphaned.
        Returns:
        ID of the file created in OMERO.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        java.lang.InterruptedException - The thread was interrupted.
        OMEROServerError - Server error.
      • addAndReplaceFile

        public long addAndReplaceFile​(Client client,
                                      java.io.File file)
                               throws java.util.concurrent.ExecutionException,
                                      java.lang.InterruptedException,
                                      AccessException,
                                      ServiceException,
                                      OMEROServerError
        Uploads a file, links it to the object and unlinks previous files with the same name, or deletes them if they're orphaned.
        Parameters:
        client - The client handling the connection.
        file - File to add.
        Returns:
        ID of the file created in OMERO.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        java.lang.InterruptedException - The thread was interrupted.
        OMEROServerError - Server error.
      • getFileAnnotations

        public java.util.List<FileAnnotationWrapper> getFileAnnotations​(Client client)
                                                                 throws java.util.concurrent.ExecutionException,
                                                                        ServiceException,
                                                                        AccessException
        Returns the file annotations
        Parameters:
        client - The client handling the connection.
        Returns:
        The list of tile annotations.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • unlink

        public <A extends GenericAnnotationWrapper<?>> void unlink​(Client client,
                                                                   A annotation)
                                                            throws ServiceException,
                                                                   AccessException,
                                                                   java.util.concurrent.ExecutionException,
                                                                   OMEROServerError,
                                                                   java.lang.InterruptedException
        Unlinks the given annotation from the current object.
        Type Parameters:
        A - The type of the annotation.
        Parameters:
        client - The client handling the connection.
        annotation - An annotation.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        OMEROServerError - Server error.
        java.lang.InterruptedException - If block(long) does not return.
      • removeLink

        protected void removeLink​(Client client,
                                  java.lang.String linkType,
                                  long childId)
                           throws ServiceException,
                                  OMEROServerError,
                                  AccessException,
                                  java.util.concurrent.ExecutionException,
                                  java.lang.InterruptedException
        Removes the link of the given type with the given child ID.
        Parameters:
        client - The client handling the connection.
        linkType - The link type.
        childId - Link child ID.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
        OMEROServerError - Server error.
        java.lang.InterruptedException - If block(long) does not return.
      • getAnnotations

        public AnnotationList getAnnotations​(Client client)
                                      throws AccessException,
                                             ServiceException,
                                             java.util.concurrent.ExecutionException
        Retrieves annotations linked to the object (of known types).
        Parameters:
        client - The client handling the connection.
        Returns:
        A list of annotations.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.
      • copyAnnotationLinks

        public void copyAnnotationLinks​(Client client,
                                        AnnotatableWrapper<?> object)
                                 throws AccessException,
                                        ServiceException,
                                        java.util.concurrent.ExecutionException
        Copies annotation links from some other object to this one.
        Parameters:
        client - The client handling the connection.
        object - Other repository object to copy annotations from.
        Throws:
        ServiceException - Cannot connect to OMERO.
        AccessException - Cannot access data.
        java.util.concurrent.ExecutionException - A Facility can't be retrieved or instantiated.