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

com.arangodb.ArangoCollectionAsync Maven / Gradle / Ivy

There is a newer version: 7.16.0
Show newest version
/*
 * DISCLAIMER
 *
 * Copyright 2016 ArangoDB GmbH, Cologne, Germany
 *
 * 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.
 *
 * Copyright holder is ArangoDB GmbH, Cologne, Germany
 */

package com.arangodb;

import com.arangodb.entity.*;
import com.arangodb.model.*;
import com.arangodb.util.RawData;

import javax.annotation.concurrent.ThreadSafe;
import java.util.Collection;
import java.util.concurrent.CompletableFuture;

/**
 * Asynchronous version of {@link ArangoCollection}
 */
@ThreadSafe
public interface ArangoCollectionAsync extends ArangoSerdeAccessor {

    /**
     * @return database async API
     */
    ArangoDatabaseAsync db();

    /**
     * @return collection name
     */
    String name();

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocument(Object)}
     */
    CompletableFuture> insertDocument(Object value);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocument(Object, DocumentCreateOptions)}
     */
     CompletableFuture> insertDocument(T value, DocumentCreateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocument(Object, DocumentCreateOptions, Class)}
     */
     CompletableFuture> insertDocument(T value, DocumentCreateOptions options, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocuments(RawData)}
     */
    CompletableFuture>> insertDocuments(RawData values);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocuments(RawData, DocumentCreateOptions)}
     */
    CompletableFuture>> insertDocuments(
            RawData values, DocumentCreateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocuments(Iterable)}
     */
    CompletableFuture>> insertDocuments(Iterable values);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocuments(Iterable, DocumentCreateOptions)}
     */
    CompletableFuture>> insertDocuments(
            Iterable values, DocumentCreateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#insertDocuments(Iterable, DocumentCreateOptions, Class)}
     */
     CompletableFuture>> insertDocuments(
            Iterable values, DocumentCreateOptions options, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#importDocuments(Iterable)}
     */
    CompletableFuture importDocuments(Iterable values);

    /**
     * Asynchronous version of {@link ArangoCollection#importDocuments(Iterable, DocumentImportOptions)}
     */
    CompletableFuture importDocuments(Iterable values, DocumentImportOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#importDocuments(RawData)}
     */
    CompletableFuture importDocuments(RawData values);

    /**
     * Asynchronous version of {@link ArangoCollection#importDocuments(RawData, DocumentImportOptions)}
     */
    CompletableFuture importDocuments(RawData values, DocumentImportOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#getDocument(String, Class)}
     */
     CompletableFuture getDocument(String key, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#getDocument(String, Class, DocumentReadOptions)}
     */
     CompletableFuture getDocument(String key, Class type, DocumentReadOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#getDocuments(Iterable, Class)}
     */
     CompletableFuture> getDocuments(Iterable keys, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#getDocuments(Iterable, Class, DocumentReadOptions)}
     */
     CompletableFuture> getDocuments(Iterable keys, Class type, DocumentReadOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocument(String, Object)}
     */
    CompletableFuture> replaceDocument(String key, Object value);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocument(String, Object, DocumentReplaceOptions)}
     */
     CompletableFuture> replaceDocument(String key, T value, DocumentReplaceOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocument(String, Object, DocumentReplaceOptions, Class)}
     */
     CompletableFuture> replaceDocument(String key, T value, DocumentReplaceOptions options, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocuments(RawData)}
     */
    CompletableFuture>> replaceDocuments(RawData values);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocuments(RawData, DocumentReplaceOptions)}
     */
    CompletableFuture>> replaceDocuments(
            RawData values, DocumentReplaceOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocuments(Iterable)} )}
     */
    CompletableFuture>> replaceDocuments(Iterable values);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocuments(Iterable, DocumentReplaceOptions)}
     */
    CompletableFuture>> replaceDocuments(
            Iterable values, DocumentReplaceOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#replaceDocuments(Iterable, DocumentReplaceOptions, Class)}
     */
     CompletableFuture>> replaceDocuments(
            Iterable values, DocumentReplaceOptions options, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocument(String, Object)}
     */
    CompletableFuture> updateDocument(String key, Object value);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocument(String, Object, DocumentUpdateOptions)}
     */
     CompletableFuture> updateDocument(String key, T value, DocumentUpdateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocument(String, Object, DocumentUpdateOptions, Class)}
     */
     CompletableFuture> updateDocument(String key, Object value, DocumentUpdateOptions options,
                                               Class returnType);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocuments(RawData)}
     */
    CompletableFuture>> updateDocuments(RawData values);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocuments(RawData, DocumentUpdateOptions)}
     */
    CompletableFuture>> updateDocuments(
            RawData values, DocumentUpdateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocuments(Iterable)}
     */
    CompletableFuture>> updateDocuments(Iterable values);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocuments(Iterable, DocumentUpdateOptions)}
     */
    CompletableFuture>> updateDocuments(
            Iterable values, DocumentUpdateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#updateDocuments(Iterable, DocumentUpdateOptions, Class)}
     */
     CompletableFuture>> updateDocuments(
            Iterable values, DocumentUpdateOptions options, Class returnType);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocument(String)}
     */
    CompletableFuture> deleteDocument(String key);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocument(String, DocumentDeleteOptions)}
     */
    CompletableFuture> deleteDocument(String key, DocumentDeleteOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocument(String, DocumentDeleteOptions, Class)}
     */
     CompletableFuture> deleteDocument(String key, DocumentDeleteOptions options, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocuments(RawData)}
     */
    CompletableFuture>> deleteDocuments(RawData values);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocuments(RawData, DocumentDeleteOptions)}
     */
    CompletableFuture>> deleteDocuments(
            RawData values, DocumentDeleteOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocuments(Iterable)}
     */
    CompletableFuture>> deleteDocuments(Iterable values);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocuments(Iterable, DocumentDeleteOptions)}
     */
    CompletableFuture>> deleteDocuments(
            Iterable values, DocumentDeleteOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteDocuments(Iterable, DocumentDeleteOptions, Class)}
     */
     CompletableFuture>> deleteDocuments(
            Iterable values, DocumentDeleteOptions options, Class type);

    /**
     * Asynchronous version of {@link ArangoCollection#documentExists(String)}
     */
    CompletableFuture documentExists(String key);

    /**
     * Asynchronous version of {@link ArangoCollection#documentExists(String, DocumentExistsOptions)}
     */
    CompletableFuture documentExists(String key, DocumentExistsOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#getIndex(String)}
     */
    CompletableFuture getIndex(String id);

    /**
     * Asynchronous version of {@link ArangoCollection#getInvertedIndex(String)}
     */
    CompletableFuture getInvertedIndex(String id);

    /**
     * Asynchronous version of {@link ArangoCollection#deleteIndex(String)}
     */
    CompletableFuture deleteIndex(String id);

    /**
     * Asynchronous version of {@link ArangoCollection#ensurePersistentIndex(Iterable, PersistentIndexOptions)}
     */
    CompletableFuture ensurePersistentIndex(Iterable fields, PersistentIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureGeoIndex(Iterable, GeoIndexOptions)}
     */
    CompletableFuture ensureGeoIndex(Iterable fields, GeoIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureFulltextIndex(Iterable, FulltextIndexOptions)}
     */
    @Deprecated
    CompletableFuture ensureFulltextIndex(Iterable fields, FulltextIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureTtlIndex(Iterable, TtlIndexOptions)}
     */
    CompletableFuture ensureTtlIndex(Iterable fields, TtlIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureZKDIndex(Iterable, ZKDIndexOptions)}
     *
     * @deprecated since ArangoDB 3.12, use {@link #ensureMDIndex(Iterable, MDIndexOptions)} or
     *             {@link #ensureMDPrefixedIndex(Iterable, MDPrefixedIndexOptions)} instead.
     */
    @Deprecated
    CompletableFuture ensureZKDIndex(Iterable fields, ZKDIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureMDIndex(Iterable, MDIndexOptions)}
     */
    CompletableFuture ensureMDIndex(Iterable fields, MDIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureMDPrefixedIndex(Iterable, MDPrefixedIndexOptions)}
     */
    CompletableFuture ensureMDPrefixedIndex(Iterable fields, MDPrefixedIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#ensureInvertedIndex(InvertedIndexOptions)}
     */
    CompletableFuture ensureInvertedIndex(InvertedIndexOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#getIndexes()}
     */
    CompletableFuture> getIndexes();

    /**
     * Asynchronous version of {@link ArangoCollection#getInvertedIndexes()}
     */
    CompletableFuture> getInvertedIndexes();

    /**
     * Asynchronous version of {@link ArangoCollection#exists()}
     */
    CompletableFuture exists();

    /**
     * Asynchronous version of {@link ArangoCollection#truncate()}
     */
    CompletableFuture truncate();

    /**
     * Asynchronous version of {@link ArangoCollection#truncate(CollectionTruncateOptions)}
     */
    CompletableFuture truncate(CollectionTruncateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#count()}
     */
    CompletableFuture count();

    /**
     * Asynchronous version of {@link ArangoCollection#count(CollectionCountOptions)}
     */
    CompletableFuture count(CollectionCountOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#create()}
     */
    CompletableFuture create();

    /**
     * Asynchronous version of {@link ArangoCollection#create(CollectionCreateOptions)}
     */
    CompletableFuture create(CollectionCreateOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#drop()}
     */
    CompletableFuture drop();

    /**
     * Asynchronous version of {@link ArangoCollection#drop(boolean)}
     */
    CompletableFuture drop(boolean isSystem);

    /**
     * Asynchronous version of {@link ArangoCollection#getInfo()}
     */
    CompletableFuture getInfo();

    /**
     * Asynchronous version of {@link ArangoCollection#getProperties()}
     */
    CompletableFuture getProperties();

    /**
     * Asynchronous version of {@link ArangoCollection#changeProperties(CollectionPropertiesOptions)}
     */
    CompletableFuture changeProperties(CollectionPropertiesOptions options);

    /**
     * Asynchronous version of {@link ArangoCollection#rename(String)}
     */
    CompletableFuture rename(String newName);

    /**
     * Asynchronous version of {@link ArangoCollection#getResponsibleShard(Object)}
     */
    CompletableFuture getResponsibleShard(final Object value);

    /**
     * Asynchronous version of {@link ArangoCollection#getRevision()}
     */
    CompletableFuture getRevision();

    /**
     * Asynchronous version of {@link ArangoCollection#grantAccess(String, Permissions)}
     */
    CompletableFuture grantAccess(String user, Permissions permissions);

    /**
     * Asynchronous version of {@link ArangoCollection#revokeAccess(String)}
     */
    CompletableFuture revokeAccess(String user);

    /**
     * Asynchronous version of {@link ArangoCollection#resetAccess(String)}
     */
    CompletableFuture resetAccess(String user);

    /**
     * Asynchronous version of {@link ArangoCollection#getPermissions(String)}
     */
    CompletableFuture getPermissions(String user);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy