All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.java.com.cloudant.client.api.views.AllDocsResponse Maven / Gradle / Ivy

There is a newer version: 2.20.1
Show newest version
/*
 * Copyright © 2015, 2018 IBM Corp. All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the
 * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
 * either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */

package com.cloudant.client.api.views;

import com.cloudant.client.api.model.Document;

import java.util.List;
import java.util.Map;

/**
 * Encapsulates a response from an _all_docs request.
 * 

* Provides methods to facilitate processing of the response. *

* * @since 2.0.0 */ public interface AllDocsResponse { /** *

* Get the document information from an _all_docs request. *

*

* Note that if requesting docs using {@link AllDocsRequestBuilder#keys(Object[])} the list of * documents may include deleted documents that have one of the specified ids. *

*

* Note if {@link AllDocsRequestBuilder#includeDocs(boolean)} is false then attachment metadata * will not be present. *

* @return a list of Document objects from the _all_docs request * @since 2.0.0 */ List getDocs(); /** *

* Gets a map of the document id and revision for each result in the _all_docs request. *

*

* Note that if requesting docs using {@link AllDocsRequestBuilder#keys(Object[])} the ids and * revs may include deleted documents that have one of the specified ids. *

* * @return a map with an entry for each document, key of _id and value of _rev * @since 2.0.0 */ Map getIdsAndRevs(); /** *

* Deserializes the included full content of result documents to a list of the specified type. *

*

* Note that if requesting docs using {@link AllDocsRequestBuilder#keys(Object[])} the list of * documents may include deleted documents that have one of the specified ids. You may * want to ensure that your document type can support checking of the deleted flag. *

* * @param docType the class type to deserialize the JSON document to * @param the type of the document * @return the deserialized document * @throws IllegalStateException if include_docs was {@code false} * @since 2.0.0 */ List getDocsAs(Class docType); /** * @return a list of the document ids */ List getDocIds(); /** * Gets a map of the document id and error message if an error exists for any result * in the _all_docs request. * For example, if a doc id does not exist the error message will show "not_found". * * @return a map with an entry for key of the doc id and value of error * @since 2.10.0 */ Map getErrors(); /** * @return the total number of rows in the _all_docs view, before any filtering has taken place * @since 2.19.0 */ Long getTotalRowCount(); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy