Class SearchI

    • Constructor Detail

      • SearchI

        public SearchI​(ome.api.Search service,
                       BlitzExecutor be)
    • Method Detail

      • activeQueries_async

        public void activeQueries_async​(AMD_Search_activeQueries __cb,
                                        Ice.Current __current)
                                 throws ServerError
        Description copied from interface: _SearchOperations
        Returns the number of active queries. This means that activeQueries gives the minimum number of remaining calls to results when batches are not merged.
        Specified by:
        activeQueries_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • addOrderByAsc_async

        public void addOrderByAsc_async​(AMD_Search_addOrderByAsc __cb,
                                        java.lang.String path,
                                        Ice.Current __current)
                                 throws ServerError
        Description copied from interface: _SearchOperations
        A path from the target entity which will be added to the current stack of order statements applied to the query.
        Specified by:
        addOrderByAsc_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        path - Non-null.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • addOrderByDesc_async

        public void addOrderByDesc_async​(AMD_Search_addOrderByDesc __cb,
                                         java.lang.String path,
                                         Ice.Current __current)
                                  throws ServerError
        Description copied from interface: _SearchOperations
        A path from the target entity which will be added to the current stack of order statements applied to the query.
        Specified by:
        addOrderByDesc_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        path - Non-null.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • allTypes_async

        public void allTypes_async​(AMD_Search_allTypes __cb,
                                   Ice.Current __current)
                            throws ServerError
        Description copied from interface: _SearchOperations
        Permits all types to be returned. For some types of queries, this carries a performance penalty as every database table must be hit.
        Specified by:
        allTypes_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • and_async

        public void and_async​(AMD_Search_and __cb,
                              Ice.Current __current)
                       throws ServerError
        Description copied from interface: _SearchOperations
        Applies the next by* method to the previous by* method, so that a call hasNext, next, or results sees only the intersection of the two calls. For example,
         
         service.onlyType(Image.class);
         service.byFullText("foo");
         service.intersection();
         service.byAnnotatedWith(TagAnnotation.class);
         
         
        will return only the Images with TagAnnotations.

        Calling this method overrides a previous setting of or or not. If there is no active queries (i.e. activeQueries > 0), then an ApiUsageException will be thrown.

        Specified by:
        and_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • byAnnotatedWith_async

        public void byAnnotatedWith_async​(AMD_Search_byAnnotatedWith __cb,
                                          java.util.List<Annotation> examples,
                                          Ice.Current __current)
                                   throws ServerError
        Description copied from interface: _SearchOperations
        Finds entities annotated with an Annotation similar to the example. This does not use Hibernate's omero.api.IQuery.findByExample Query-By-Example} mechanism, since that cannot handle joins. The fields which are used are: If the main content is null it is assumed to be a wildcard searched, and only the type of the annotation is searched. Currently, ListAnnotations are not supported.
        Specified by:
        byAnnotatedWith_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        examples - Not empty.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • byFullText_async

        public void byFullText_async​(AMD_Search_byFullText __cb,
                                     java.lang.String query,
                                     Ice.Current __current)
                              throws ServerError
        Description copied from interface: _SearchOperations
        Passes the query as is to the Lucene backend.
        Specified by:
        byFullText_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        query - May not be null or of zero length.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • byLuceneQueryBuilder_async

        public void byLuceneQueryBuilder_async​(AMD_Search_byLuceneQueryBuilder __cb,
                                               java.lang.String fields,
                                               java.lang.String from,
                                               java.lang.String to,
                                               java.lang.String dateType,
                                               java.lang.String query,
                                               Ice.Current __current)
                                        throws ServerError
        Description copied from interface: _SearchOperations
        Builds a Lucene query and passes it to the Lucene backend.
        Specified by:
        byLuceneQueryBuilder_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        fields - The fields (comma separated) to search in (name, description, ...)
        from - The date range from, in the form YYYYMMDD (may be null)
        to - The date range to (inclusive), in the form YYYYMMDD (may be null)
        dateType - DATE_TYPE_ACQUISITION or DATE_TYPE_IMPORT
        query - May not be null or of zero length.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • byGroupForTags_async

        public void byGroupForTags_async​(AMD_Search_byGroupForTags __cb,
                                         java.lang.String group,
                                         Ice.Current __current)
                                  throws ServerError
        Description copied from interface: _SearchOperations
        Returns transient (without ID) TagAnnotation instances which represent all the TagAnnotation tags in the given group. The entities are transient and without ownership since multiple users can own the same tag. This method will override settings for types.
        Specified by:
        byGroupForTags_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        group - Can be null or empty to return all tags.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • byHqlQuery_async

        public void byHqlQuery_async​(AMD_Search_byHqlQuery __cb,
                                     java.lang.String query,
                                     Parameters params,
                                     Ice.Current __current)
                              throws ServerError
        Description copied from interface: _SearchOperations
        Delegates to omero.api.IQuery.findAllByQuery method to take advantage of the and, or, and not methods, or queue-semantics.
        Specified by:
        byHqlQuery_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        query - Not null.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • bySomeMustNone_async

        public void bySomeMustNone_async​(AMD_Search_bySomeMustNone __cb,
                                         java.util.List<java.lang.String> some,
                                         java.util.List<java.lang.String> must,
                                         java.util.List<java.lang.String> none,
                                         Ice.Current __current)
                                  throws ServerError
        Description copied from interface: _SearchOperations
        Builds a Lucene query and passes it to byFullText.
        Specified by:
        bySomeMustNone_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        some - Some (at least one) of these terms must be present in the document. May be null.
        must - All of these terms must be present in the document. May be null.
        none - None of these terms may be present in the document. May be null.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • byTagForGroups_async

        public void byTagForGroups_async​(AMD_Search_byTagForGroups __cb,
                                         java.lang.String tag,
                                         Ice.Current __current)
                                  throws ServerError
        Description copied from interface: _SearchOperations
        Creates a query which will return transient (without ID) TagAnnotation instances which represent all the TagAnnotation tag groups which the given tag belongs to. The entities are transient and without ownership since multiple users can own the same tag group. This method will override settings for types.
        Specified by:
        byTagForGroups_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        tag - Can be null or empty to return all groups.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • clearQueries_async

        public void clearQueries_async​(AMD_Search_clearQueries __cb,
                                       Ice.Current __current)
                                throws ServerError
        Description copied from interface: _SearchOperations
        Removes all active queries (leaving resetDefaults settings alone), such that activeQueries will return 0.
        Specified by:
        clearQueries_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • currentMetadataList_async

        public void currentMetadataList_async​(AMD_Search_currentMetadataList __cb,
                                              Ice.Current __current)
                                       throws ServerError
        Description copied from interface: _SearchOperations
        Provides access to the extra query information (for example Lucene score and boost values) for a single call to results. This method may only be called once for any given call to results.
        Specified by:
        currentMetadataList_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • currentMetadata_async

        public void currentMetadata_async​(AMD_Search_currentMetadata __cb,
                                          Ice.Current __current)
                                   throws ServerError
        Description copied from interface: _SearchOperations
        Provides access to the extra query information (for example Lucene score and boost values) for a single call to next. This method may only be called once for any given call to next.
        Specified by:
        currentMetadata_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • fetchAlso_async

        public void fetchAlso_async​(AMD_Search_fetchAlso __cb,
                                    java.util.List<java.lang.String> fetches,
                                    Ice.Current __current)
                             throws ServerError
        Description copied from interface: _SearchOperations
        Adds a fetch clause for loading non-annotation fields of returned entities. Each fetch is a hibernate clause in dot notation.
        Specified by:
        fetchAlso_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        fetches - Can be empty, which removes previous fetch setting.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • fetchAnnotations_async

        public void fetchAnnotations_async​(AMD_Search_fetchAnnotations __cb,
                                           java.util.List<java.lang.String> classes,
                                           Ice.Current __current)
                                    throws ServerError
        Description copied from interface: _SearchOperations
        Queries the database for all Annotation annotations of the given types for all returned instances.
        Specified by:
        fetchAnnotations_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        classes - Can be empty, which removes previous fetch setting.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • getBatchSize_async

        public void getBatchSize_async​(AMD_Search_getBatchSize __cb,
                                       Ice.Current __current)
                                throws ServerError
        Description copied from interface: _SearchOperations
        Returns the current batch size. If setBatchSize has not been called, the default value will be in effect.
        Specified by:
        getBatchSize_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • hasNext_async

        public void hasNext_async​(AMD_Search_hasNext __cb,
                                  Ice.Current __current)
                           throws ServerError
        Description copied from interface: _SearchOperations
        Returns true if another call to next is valid. A call to next may throw an exception for another reason, however.
        Specified by:
        hasNext_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • isCaseSensitive_async

        public void isCaseSensitive_async​(AMD_Search_isCaseSensitive __cb,
                                          Ice.Current __current)
                                   throws ServerError
        Description copied from interface: _SearchOperations
        Returns the current case sensitivity setting. If setCaseSensitive has not been called, the default value will be in effect.
        Specified by:
        isCaseSensitive_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • isReturnUnloaded_async

        public void isReturnUnloaded_async​(AMD_Search_isReturnUnloaded __cb,
                                           Ice.Current __current)
                                    throws ServerError
        Description copied from interface: _SearchOperations
        Returns the current return-unloaded setting. If true, all returned entities will be unloaded. If setReturnUnloaded has not been called, the default value will be in effect.
        Specified by:
        isReturnUnloaded_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • isUseProjections_async

        public void isUseProjections_async​(AMD_Search_isUseProjections __cb,
                                           Ice.Current __current)
                                    throws ServerError
        Description copied from interface: _SearchOperations
        Returns the current use-projection setting. If true, the client must be careful with all results that are returned. See setUseProjections for more. If setUseProjections has not been called, the default value will be in effect.
        Specified by:
        isUseProjections_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • next_async

        public void next_async​(AMD_Search_next __cb,
                               Ice.Current __current)
                        throws ServerError
        Description copied from interface: _SearchOperations
        Returns the next entity from the current query. If the previous call returned the last entity from a given query, the first entity from the next query will be returned and activeQueries decremented. Since this method only returns the entity itself, a single call to currentMetadata may follow this call to gather the extra metadata which is returned in the map via results.
        Specified by:
        next_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • not_async

        public void not_async​(AMD_Search_not __cb,
                              Ice.Current __current)
                       throws ServerError
        Description copied from interface: _SearchOperations
        Applies the next by* method to the previous by* method, so that a call hasNext, next, or results sees only the intersection of the two calls. For example,
         
         service.onlyType(Image.class);
         service.byFullText(&quot;foo&quot;);
         service.complement();
         service.byAnnotatedWith(TagAnnotation.class);
         
         
        will return all the Images not annotated with TagAnnotation.

        Calling this method overrides a previous setting of or or and. If there is no active queries (i.e. activeQueries > 0), then an ApiUsageException will be thrown.

        Specified by:
        not_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • onlyAnnotatedWith_async

        public void onlyAnnotatedWith_async​(AMD_Search_onlyAnnotatedWith __cb,
                                            java.util.List<java.lang.String> classes,
                                            Ice.Current __current)
                                     throws ServerError
        Description copied from interface: _SearchOperations
        Restricts entities to having an Annotation of all the given types. This is useful in combination with the other onlyAnnotated* methods to say, e.g., only annotated with a file by user X. By default, this value is null and imposes no restriction. Passing an empty array implies an object that is not annotated at all. Note: If the semantics were OR, then a client would have to query each class individually, and compare all the various values, checking which ids are where. However, since this method defaults to AND, multiple calls (optionally with isMergedBatches and isReturnUnloaded) and combine the results. Duplicate ids are still possible so a set of some form should be used to collect the results.
        Specified by:
        onlyAnnotatedWith_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        classes - Can be empty, in which case restriction is removed.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • onlyCreatedBetween_async

        public void onlyCreatedBetween_async​(AMD_Search_onlyCreatedBetween __cb,
                                             RTime start,
                                             RTime stop,
                                             Ice.Current __current)
                                      throws ServerError
        Description copied from interface: _SearchOperations
        Restricts the time between which an entity may have been created.
        Specified by:
        onlyCreatedBetween_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        start - Can be null, i.e. interval open to negative infinity.
        stop - Can be null, i.e. interval opens to positive infinity.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • onlyIds_async

        public void onlyIds_async​(AMD_Search_onlyIds __cb,
                                  java.util.List<java.lang.Long> ids,
                                  Ice.Current __current)
                           throws ServerError
        Description copied from interface: _SearchOperations
        Restricts the set of ids which will be checked. This is useful for testing one of the given restrictions on a reduced set of objects.
        Specified by:
        onlyIds_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        ids - Can be null, in which case the previous restriction is removed.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • onlyModifiedBetween_async

        public void onlyModifiedBetween_async​(AMD_Search_onlyModifiedBetween __cb,
                                              RTime start,
                                              RTime stop,
                                              Ice.Current __current)
                                       throws ServerError
        Description copied from interface: _SearchOperations
        Restricts the time between which an entity may have last been modified.
        Specified by:
        onlyModifiedBetween_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        start - Can be null, i.e. interval open to negative infinity.
        stop - Can be null, i.e. interval open to positive infinity.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • onlyType_async

        public void onlyType_async​(AMD_Search_onlyType __cb,
                                   java.lang.String klass,
                                   Ice.Current __current)
                            throws ServerError
        Description copied from interface: _SearchOperations
        Restricts the search to a single type. All return values will match this type.
        Specified by:
        onlyType_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • onlyTypes_async

        public void onlyTypes_async​(AMD_Search_onlyTypes __cb,
                                    java.util.List<java.lang.String> classes,
                                    Ice.Current __current)
                             throws ServerError
        Description copied from interface: _SearchOperations
        Restricts searches to a set of types. The entities returned are guaranteed to be one of these types.
        Specified by:
        onlyTypes_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • or_async

        public void or_async​(AMD_Search_or __cb,
                             Ice.Current __current)
                      throws ServerError
        Description copied from interface: _SearchOperations
        Applies the next by* method to the previous by* method, so that a call hasNext, next or results sees only the union of the two calls. For example,
         
         service.onlyType(Image.class);
         service.byFullText(&quot;foo&quot;);
         service.or();
         service.onlyType(Dataset.class);
         service.byFullText(&quot;foo&quot;);
         
         
        will return both Images and Datasets together. Calling this method overrides a previous setting of and or not. If there is no active queries (i.e. activeQueries > 0), then an ApiUsageException will be thrown.
        Specified by:
        or_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • results_async

        public void results_async​(AMD_Search_results __cb,
                                  Ice.Current __current)
                           throws ServerError
        Description copied from interface: _SearchOperations
        Returns up to getBatchSize batch size number of results along with the related query metadata. If isMergedBatches batches are merged then the results from multiple queries may be returned together.
        Specified by:
        results_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • setBatchSize_async

        public void setBatchSize_async​(AMD_Search_setBatchSize __cb,
                                       int size,
                                       Ice.Current __current)
                                throws ServerError
        Description copied from interface: _SearchOperations
        Sets the maximum number of results that will be returned by one call to results. If batches are not merged, then results may often be less than the batch size. If batches are merged, then only the last call to results can be less than batch size. Note: some query types may not support batching at the query level, and all instances must then be loaded into memory simultaneously.
        Specified by:
        setBatchSize_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        size - maximum number of results per call to results
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • setReturnUnloaded_async

        public void setReturnUnloaded_async​(AMD_Search_setReturnUnloaded __cb,
                                            boolean returnUnloaded,
                                            Ice.Current __current)
                                     throws ServerError
        Description copied from interface: _SearchOperations
        Determines if all results should be returned as unloaded objects. This is particularly useful for creating lists for further querying via IQuery. This value overrides the setUseProjections setting.
        Specified by:
        setReturnUnloaded_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • setUseProjections_async

        public void setUseProjections_async​(AMD_Search_setUseProjections __cb,
                                            boolean useProjections,
                                            Ice.Current __current)
                                     throws ServerError
        Description copied from interface: _SearchOperations
        Determines if Lucene queries should not hit the database. Instead all values which are stored in the index will be loaded into the object, which includes the id. However, the entity will not be marked unloaded and therefore it is especially important to not allow a projection-instance to be saved back to the server. This can result in DATA LOSS.
        Specified by:
        setUseProjections_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • bySimilarTerms_async

        public void bySimilarTerms_async​(AMD_Search_bySimilarTerms __cb,
                                         java.util.List<java.lang.String> terms,
                                         Ice.Current __current)
                                  throws ServerError
        Description copied from interface: _SearchOperations
        Returns transient (without ID) TextAnnotation instances which represent terms which are similar to the given terms. For example, if the argument is cell, one return value might have as its textValue: cellular while another has cellularize. No filtering or fetching is performed.
        Specified by:
        bySimilarTerms_async in interface _SearchOperations
        Parameters:
        __cb - The callback object for the operation.
        terms - Cannot be empty.
        __current - The Current object for the invocation.
        Throws:
        ServerError
      • preClose

        protected void preClose​(Ice.Current current)
                         throws java.lang.Throwable
        Specified by:
        preClose in class AbstractCloseableAmdServant
        Throws:
        java.lang.Throwable
      • postClose

        protected void postClose​(Ice.Current current)
        Description copied from class: AbstractCloseableAmdServant
        Should not throw any exceptions which should be detected by clients since it is called in a finally block after the client thread has been released.
        Specified by:
        postClose in class AbstractCloseableAmdServant