Package com.couchbase.lite.internal.core
Class C4Database
- java.lang.Object
-
- com.couchbase.lite.internal.core.C4NativePeer
-
- com.couchbase.lite.internal.core.C4Database
-
- All Implemented Interfaces:
java.lang.AutoCloseable
public abstract class C4Database extends C4NativePeer
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
DB_EXTENSION
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
beginTransaction()
abstract void
close()
void
closeDb()
static void
copyDb(java.lang.String sourcePath, java.lang.String parentDir, java.lang.String name, int flags, int algorithm, byte[] encryptionKey)
C4Document
create(java.lang.String docID, FLSliceResult body, int flags)
C4DatabaseObserver
createDatabaseObserver(java.lang.Object context, C4DatabaseObserverListener listener)
C4DocumentObserver
createDocumentObserver(java.lang.String docID, java.lang.Object context, C4DocumentObserverListener listener)
void
createIndex(java.lang.String name, java.lang.String queryExpression, AbstractIndex.QueryLanguage queryLanguage, AbstractIndex.IndexType indexType, java.lang.String language, boolean ignoreDiacritics)
C4Query
createJsonQuery(java.lang.String expression)
C4Replicator
createLocalReplicator(C4Database otherLocalDB, int push, int pull, byte[] options, C4ReplicatorListener listener, C4ReplicationFilter pushFilter, C4ReplicationFilter pullFilter, AbstractReplicator replicatorContext)
C4Query
createN1qlQuery(java.lang.String expression)
C4Replicator
createRemoteReplicator(java.lang.String scheme, java.lang.String host, int port, java.lang.String path, java.lang.String remoteDatabaseName, int push, int pull, byte[] options, C4ReplicatorListener listener, C4ReplicationFilter pushFilter, C4ReplicationFilter pullFilter, AbstractReplicator replicatorContext, SocketFactory socketFactoryContext, int framing)
C4Replicator
createTargetReplicator(C4Socket openSocket, int push, int pull, byte[] options, C4ReplicatorListener listener, java.lang.Object replicatorContext)
void
deleteDb()
void
deleteIndex(java.lang.String name)
static void
deleteNamedDb(java.lang.String directory, java.lang.String name)
void
endTransaction(boolean commit)
C4Document
get(java.lang.String docID)
C4Document
get(java.lang.String docID, boolean mustExist)
C4BlobStore
getBlobStore()
java.lang.String
getCookies(java.net.URI uri)
static C4Database
getDatabase(java.lang.String parentDirPath, java.lang.String name, int flags, int algorithm, byte[] encryptionKey)
static java.io.File
getDatabaseFile(java.io.File directory, java.lang.String name)
java.lang.String
getDbDirectory()
java.lang.String
getDbFileName()
java.lang.String
getDbName()
java.lang.String
getDbPath()
long
getDocumentCount()
long
getExpiration(java.lang.String docID)
FLValue
getIndexesInfo()
byte[]
getPublicUUID()
FLEncoder
getSharedFleeceEncoder()
static C4Database
getUnmanagedDatabase(long peer)
boolean
performMaintenance(MaintenanceType type)
void
purgeDoc(java.lang.String docID)
C4Document
put(byte[] body, java.lang.String docID, int revFlags, boolean existingRevision, boolean allowConflict, java.lang.String[] history, boolean save, int maxRevTreeDepth, int remoteDBID)
void
rekey(int keyType, byte[] newKey)
void
setCookie(java.net.URI uri, java.lang.String setCookieHeader)
void
setExpiration(java.lang.String docID, long timestamp)
-
Methods inherited from class com.couchbase.lite.internal.core.C4NativePeer
toString
-
-
-
-
Field Detail
-
DB_EXTENSION
public static final java.lang.String DB_EXTENSION
- See Also:
- Constant Field Values
-
-
Method Detail
-
copyDb
public static void copyDb(@NonNull java.lang.String sourcePath, @NonNull java.lang.String parentDir, @NonNull java.lang.String name, int flags, int algorithm, @Nullable byte[] encryptionKey) throws LiteCoreException
- Throws:
LiteCoreException
-
deleteNamedDb
public static void deleteNamedDb(@NonNull java.lang.String directory, @NonNull java.lang.String name) throws LiteCoreException
- Throws:
LiteCoreException
-
getDatabaseFile
@NonNull public static java.io.File getDatabaseFile(@NonNull java.io.File directory, @NonNull java.lang.String name)
-
getUnmanagedDatabase
@NonNull public static C4Database getUnmanagedDatabase(long peer)
-
getDatabase
@NonNull public static C4Database getDatabase(@NonNull java.lang.String parentDirPath, @NonNull java.lang.String name, int flags, int algorithm, @Nullable byte[] encryptionKey) throws LiteCoreException
- Throws:
LiteCoreException
-
close
public abstract void close()
-
getDbPath
@Nullable public java.lang.String getDbPath()
-
getDbDirectory
@Nullable public java.lang.String getDbDirectory()
-
getDbFileName
@Nullable public java.lang.String getDbFileName()
-
getDbName
@Nullable public java.lang.String getDbName()
-
rekey
public void rekey(int keyType, byte[] newKey) throws LiteCoreException
- Throws:
LiteCoreException
-
closeDb
public void closeDb() throws LiteCoreException
- Throws:
LiteCoreException
-
deleteDb
public void deleteDb() throws LiteCoreException
- Throws:
LiteCoreException
-
getDocumentCount
public long getDocumentCount()
-
purgeDoc
public void purgeDoc(java.lang.String docID) throws LiteCoreException
- Throws:
LiteCoreException
-
getPublicUUID
@NonNull public byte[] getPublicUUID() throws LiteCoreException
- Throws:
LiteCoreException
-
beginTransaction
public void beginTransaction() throws LiteCoreException
- Throws:
LiteCoreException
-
endTransaction
public void endTransaction(boolean commit) throws LiteCoreException
- Throws:
LiteCoreException
-
getSharedFleeceEncoder
@NonNull public FLEncoder getSharedFleeceEncoder()
-
get
@NonNull public C4Document get(@NonNull java.lang.String docID) throws LiteCoreException
- Throws:
LiteCoreException
-
setExpiration
public void setExpiration(@NonNull java.lang.String docID, long timestamp) throws LiteCoreException
- Throws:
LiteCoreException
-
getExpiration
public long getExpiration(@NonNull java.lang.String docID) throws LiteCoreException
- Throws:
LiteCoreException
-
create
@NonNull public C4Document create(@NonNull java.lang.String docID, @Nullable FLSliceResult body, int flags) throws LiteCoreException
- Throws:
LiteCoreException
-
createDatabaseObserver
@NonNull public C4DatabaseObserver createDatabaseObserver(@NonNull java.lang.Object context, @NonNull C4DatabaseObserverListener listener)
-
createDocumentObserver
@NonNull public C4DocumentObserver createDocumentObserver(@NonNull java.lang.String docID, @NonNull java.lang.Object context, @NonNull C4DocumentObserverListener listener)
-
getBlobStore
@NonNull public C4BlobStore getBlobStore() throws LiteCoreException
- Throws:
LiteCoreException
-
createJsonQuery
@NonNull public C4Query createJsonQuery(@NonNull java.lang.String expression) throws LiteCoreException
- Throws:
LiteCoreException
-
createN1qlQuery
@NonNull public C4Query createN1qlQuery(@NonNull java.lang.String expression) throws LiteCoreException
- Throws:
LiteCoreException
-
createIndex
public void createIndex(@NonNull java.lang.String name, @NonNull java.lang.String queryExpression, @NonNull AbstractIndex.QueryLanguage queryLanguage, @NonNull AbstractIndex.IndexType indexType, @Nullable java.lang.String language, boolean ignoreDiacritics) throws LiteCoreException
- Throws:
LiteCoreException
-
deleteIndex
public void deleteIndex(java.lang.String name) throws LiteCoreException
- Throws:
LiteCoreException
-
getIndexesInfo
@NonNull public FLValue getIndexesInfo() throws LiteCoreException
- Throws:
LiteCoreException
-
performMaintenance
public boolean performMaintenance(MaintenanceType type) throws LiteCoreException
- Throws:
LiteCoreException
-
createRemoteReplicator
@NonNull public C4Replicator createRemoteReplicator(@Nullable java.lang.String scheme, @Nullable java.lang.String host, int port, @Nullable java.lang.String path, @Nullable java.lang.String remoteDatabaseName, int push, int pull, @Nullable byte[] options, @Nullable C4ReplicatorListener listener, @Nullable C4ReplicationFilter pushFilter, @Nullable C4ReplicationFilter pullFilter, @NonNull AbstractReplicator replicatorContext, @Nullable SocketFactory socketFactoryContext, int framing) throws LiteCoreException
- Throws:
LiteCoreException
-
createLocalReplicator
@NonNull public C4Replicator createLocalReplicator(@NonNull C4Database otherLocalDB, int push, int pull, @Nullable byte[] options, @Nullable C4ReplicatorListener listener, @Nullable C4ReplicationFilter pushFilter, @Nullable C4ReplicationFilter pullFilter, @NonNull AbstractReplicator replicatorContext) throws LiteCoreException
- Throws:
LiteCoreException
-
createTargetReplicator
@NonNull public C4Replicator createTargetReplicator(@NonNull C4Socket openSocket, int push, int pull, @Nullable byte[] options, @Nullable C4ReplicatorListener listener, @NonNull java.lang.Object replicatorContext) throws LiteCoreException
- Throws:
LiteCoreException
-
setCookie
public void setCookie(@NonNull java.net.URI uri, @NonNull java.lang.String setCookieHeader) throws LiteCoreException
- Throws:
LiteCoreException
-
getCookies
@Nullable public java.lang.String getCookies(@NonNull java.net.URI uri) throws LiteCoreException
- Throws:
LiteCoreException
-
get
@NonNull public C4Document get(@NonNull java.lang.String docID, boolean mustExist) throws LiteCoreException
- Throws:
LiteCoreException
-
put
@NonNull public C4Document put(@NonNull byte[] body, @NonNull java.lang.String docID, int revFlags, boolean existingRevision, boolean allowConflict, @NonNull java.lang.String[] history, boolean save, int maxRevTreeDepth, int remoteDBID) throws LiteCoreException
- Throws:
LiteCoreException
-
-