Back to godoc.org
github.com/couchbase/gocb/v2

package gocb

v2.1.1
Latest Go to latest
Published: May 19, 2020 | License: Apache-2.0 | Module: github.com/couchbase/gocb/v2

Index

Constants

const (
	// AnalyticsScanConsistencyNotBounded indicates no data consistency is required.
	AnalyticsScanConsistencyNotBounded = AnalyticsScanConsistency(1)
	// AnalyticsScanConsistencyRequestPlus indicates that request-level data consistency is required.
	AnalyticsScanConsistencyRequestPlus = AnalyticsScanConsistency(2)
)
const (
	// DesignDocumentNamespaceProduction means that a design document resides in the production namespace.
	DesignDocumentNamespaceProduction = DesignDocumentNamespace(0)

	// DesignDocumentNamespaceDevelopment means that a design document resides in the development namespace.
	DesignDocumentNamespaceDevelopment = DesignDocumentNamespace(1)
)
const (
	// CouchbaseBucketType indicates a Couchbase bucket type.
	CouchbaseBucketType = BucketType("membase")

	// MemcachedBucketType indicates a Memcached bucket type.
	MemcachedBucketType = BucketType("memcached")

	// EphemeralBucketType indicates an Ephemeral bucket type.
	EphemeralBucketType = BucketType("ephemeral")
)
const (
	// ConflictResolutionTypeTimestamp specifies to use timestamp conflict resolution on the bucket.
	ConflictResolutionTypeTimestamp = ConflictResolutionType("lww")

	// ConflictResolutionTypeSequenceNumber specifies to use sequence number conflict resolution on the bucket.
	ConflictResolutionTypeSequenceNumber = ConflictResolutionType("seqno")
)
const (
	// EvictionPolicyTypeFull specifies to use full eviction for a bucket.
	EvictionPolicyTypeFull = EvictionPolicyType("fullEviction")

	// EvictionPolicyTypeValueOnly specifies to use value only eviction for a bucket.
	EvictionPolicyTypeValueOnly = EvictionPolicyType("valueOnly")
)
const (
	// CompressionModeOff specifies to use no compression for a bucket.
	CompressionModeOff = CompressionMode("off")

	// CompressionModePassive specifies to use passive compression for a bucket.
	CompressionModePassive = CompressionMode("passive")

	// CompressionModeActive specifies to use active compression for a bucket.
	CompressionModeActive = CompressionMode("active")
)
const (
	// StoreSemanticsReplace signifies to Replace the document, and fail if it does not exist.
	// This is the default action
	StoreSemanticsReplace = StoreSemantics(0)

	// StoreSemanticsUpsert signifies to replace the document or create it if it doesn't exist.
	StoreSemanticsUpsert = StoreSemantics(1)

	// StoreSemanticsInsert signifies to create the document, and fail if it exists.
	StoreSemanticsInsert = StoreSemantics(2)
)
const (
	// QueryIndexTypeGsi indicates that GSI was used to build the index.
	QueryIndexTypeGsi = QueryIndexType("gsi")

	// QueryIndexTypeView indicates that views were used to build the index.
	QueryIndexTypeView = QueryIndexType("views")
)
const (
	// QueryStatusRunning indicates the query is still running
	QueryStatusRunning = QueryStatus("running")

	// QueryStatusSuccess indicates the query was successful.
	QueryStatusSuccess = QueryStatus("success")

	// QueryStatusErrors indicates a query completed with errors.
	QueryStatusErrors = QueryStatus("errors")

	// QueryStatusCompleted indicates a query has completed.
	QueryStatusCompleted = QueryStatus("completed")

	// QueryStatusStopped indicates a query has been stopped.
	QueryStatusStopped = QueryStatus("stopped")

	// QueryStatusTimeout indicates a query timed out.
	QueryStatusTimeout = QueryStatus("timeout")

	// QueryStatusClosed indicates that a query was closed.
	QueryStatusClosed = QueryStatus("closed")

	// QueryStatusFatal indicates that a query ended with a fatal error.
	QueryStatusFatal = QueryStatus("fatal")

	// QueryStatusAborted indicates that a query was aborted.
	QueryStatusAborted = QueryStatus("aborted")

	// QueryStatusUnknown indicates that the query status is unknown.
	QueryStatusUnknown = QueryStatus("unknown")
)
const (
	// ServiceTypeManagement represents a management service.
	ServiceTypeManagement = ServiceType(gocbcore.MgmtService)

	// ServiceTypeKeyValue represents a memcached service.
	ServiceTypeKeyValue = ServiceType(gocbcore.MemdService)

	// ServiceTypeViews represents a views service.
	ServiceTypeViews = ServiceType(gocbcore.CapiService)

	// ServiceTypeQuery represents a query service.
	ServiceTypeQuery = ServiceType(gocbcore.N1qlService)

	// ServiceTypeSearch represents a full-text-search service.
	ServiceTypeSearch = ServiceType(gocbcore.FtsService)

	// ServiceTypeAnalytics represents an analytics service.
	ServiceTypeAnalytics = ServiceType(gocbcore.CbasService)
)
const (
	// QueryProfileModeNone disables query profiling
	QueryProfileModeNone = QueryProfileMode("off")

	// QueryProfileModePhases includes phase profiling information in the query response
	QueryProfileModePhases = QueryProfileMode("phases")

	// QueryProfileModeTimings includes timing profiling information in the query response
	QueryProfileModeTimings = QueryProfileMode("timings")
)
const (
	// SubdocFlagNone indicates no special behaviours
	SubdocFlagNone = SubdocFlag(memd.SubdocFlagNone)

	// SubdocFlagCreatePath indicates you wish to recursively create the tree of paths
	// if it does not already exist within the document.
	SubdocFlagCreatePath = SubdocFlag(memd.SubdocFlagMkDirP)

	// SubdocFlagXattr indicates your path refers to an extended attribute rather than the document.
	SubdocFlagXattr = SubdocFlag(memd.SubdocFlagXattrPath)

	// SubdocFlagUseMacros indicates that you wish macro substitution to occur on the value
	SubdocFlagUseMacros = SubdocFlag(memd.SubdocFlagExpandMacros)
)
const (
	// SubdocDocFlagNone indicates no special behaviours
	SubdocDocFlagNone = SubdocDocFlag(memd.SubdocDocFlagNone)

	// SubdocDocFlagMkDoc indicates that the document should be created if it does not already exist.
	SubdocDocFlagMkDoc = SubdocDocFlag(memd.SubdocDocFlagMkDoc)

	// SubdocDocFlagAddDoc indices that the document should be created only if it does not already exist.
	SubdocDocFlagAddDoc = SubdocDocFlag(memd.SubdocDocFlagAddDoc)

	// SubdocDocFlagAccessDeleted indicates that you wish to receive soft-deleted documents.
	SubdocDocFlagAccessDeleted = SubdocDocFlag(memd.SubdocDocFlagAccessDeleted)
)
const (
	// DurabilityLevelMajority specifies that a mutation must be replicated (held in memory) to a majority of nodes.
	DurabilityLevelMajority = DurabilityLevel(1)

	// DurabilityLevelMajorityAndPersistOnMaster specifies that a mutation must be replicated (held in memory) to a
	// majority of nodes and also persisted (written to disk) on the active node.
	DurabilityLevelMajorityAndPersistOnMaster = DurabilityLevel(2)

	// DurabilityLevelPersistToMajority specifies that a mutation must be persisted (written to disk) to a majority
	// of nodes.
	DurabilityLevelPersistToMajority = DurabilityLevel(3)
)
const (
	// MutationMacroCAS can be used to tell the server to use the CAS macro.
	MutationMacroCAS = MutationMacro("\"${Mutation.CAS}\"")

	// MutationMacroSeqNo can be used to tell the server to use the seqno macro.
	MutationMacroSeqNo = MutationMacro("\"${Mutation.seqno}\"")

	// MutationMacroValueCRC32c can be used to tell the server to use the value_crc32c macro.
	MutationMacroValueCRC32c = MutationMacro("\"${Mutation.value_crc32c}\"")
)
const (
	// ClusterStateOnline indicates that all nodes are online and reachable.
	ClusterStateOnline = ClusterState(1)

	// ClusterStateDegraded indicates that all services will function, but possibly not optimally.
	ClusterStateDegraded = ClusterState(2)

	// ClusterStateOffline indicates that no nodes were reachable.
	ClusterStateOffline = ClusterState(3)
)
const (
	// EndpointStateDisconnected indicates the endpoint socket is unreachable.
	EndpointStateDisconnected = EndpointState(1)

	// EndpointStateConnecting indicates the endpoint socket is connecting.
	EndpointStateConnecting = EndpointState(2)

	// EndpointStateConnected indicates the endpoint socket is connected and ready.
	EndpointStateConnected = EndpointState(3)

	// EndpointStateDisconnecting indicates the endpoint socket is disconnecting.
	EndpointStateDisconnecting = EndpointState(4)
)
const (
	// PingStateOk indicates that the ping operation was successful.
	PingStateOk = PingState(1)

	// PingStateTimeout indicates that the ping operation timed out.
	PingStateTimeout = PingState(2)

	// PingStateError indicates that the ping operation failed.
	PingStateError = PingState(3)
)
const (
	LogError        = LogLevel(gocbcore.LogError)
	LogWarn         = LogLevel(gocbcore.LogWarn)
	LogInfo         = LogLevel(gocbcore.LogInfo)
	LogDebug        = LogLevel(gocbcore.LogDebug)
	LogTrace        = LogLevel(gocbcore.LogTrace)
	LogSched        = LogLevel(gocbcore.LogSched)
	LogMaxVerbosity = LogLevel(gocbcore.LogMaxVerbosity)
)

Various logging levels (or subsystems) which can categorize the message. Currently these are ordered in decreasing severity.

const (
	// RedactNone indicates to perform no redactions
	RedactNone = LogRedactLevel(0)

	// RedactPartial indicates to redact all possible user-identifying information from logs.
	RedactPartial = LogRedactLevel(1)

	// RedactFull indicates to fully redact all possible identifying information from logs.
	RedactFull = LogRedactLevel(2)
)
const (
	// QueryScanConsistencyNotBounded indicates no data consistency is required.
	QueryScanConsistencyNotBounded = QueryScanConsistency(1)
	// QueryScanConsistencyRequestPlus indicates that request-level data consistency is required.
	QueryScanConsistencyRequestPlus = QueryScanConsistency(2)
)
const (
	// DefaultHighlightStyle specifies to use the default to highlight search result hits.
	DefaultHighlightStyle = SearchHighlightStyle("")

	// HTMLHighlightStyle specifies to use HTML tags to highlight search result hits.
	HTMLHighlightStyle = SearchHighlightStyle("html")

	// AnsiHightlightStyle specifies to use ANSI tags to highlight search result hits.
	AnsiHightlightStyle = SearchHighlightStyle("ansi")
)
const (
	// ViewScanConsistencyNotBounded indicates that no special behaviour should be used.
	ViewScanConsistencyNotBounded = ViewScanConsistency(1)
	// ViewScanConsistencyRequestPlus indicates to update the index before querying it.
	ViewScanConsistencyRequestPlus = ViewScanConsistency(2)
	// ViewScanConsistencyUpdateAfter indicates to update the index asynchronously after querying.
	ViewScanConsistencyUpdateAfter = ViewScanConsistency(3)
)
const (
	// ViewOrderingAscending indicates the query results should be sorted from lowest to highest.
	ViewOrderingAscending = ViewOrdering(1)
	// ViewOrderingDescending indicates the query results should be sorted from highest to lowest.
	ViewOrderingDescending = ViewOrdering(2)
)
const (
	// ViewErrorModeContinue indicates to continue gathering results on error.
	ViewErrorModeContinue = ViewErrorMode(1)

	// ViewErrorModeStop indicates to stop gathering results on error
	ViewErrorModeStop = ViewErrorMode(2)
)
const (

	// SearchScanConsistencyNotBounded indicates no data consistency is required.
	SearchScanConsistencyNotBounded = SearchScanConsistency(1)
)

Variables

var (
	// ErrTimeout occurs when an operation does not receive a response in a timely manner.
	ErrTimeout = gocbcore.ErrTimeout

	// ErrRequestCanceled occurs when an operation has been canceled.
	ErrRequestCanceled = gocbcore.ErrRequestCanceled

	// ErrInvalidArgument occurs when an invalid argument is provided for an operation.
	ErrInvalidArgument = gocbcore.ErrInvalidArgument

	// ErrServiceNotAvailable occurs when the requested service is not available.
	ErrServiceNotAvailable = gocbcore.ErrServiceNotAvailable

	// ErrInternalServerFailure occurs when the server encounters an internal server error.
	ErrInternalServerFailure = gocbcore.ErrInternalServerFailure

	// ErrAuthenticationFailure occurs when authentication has failed.
	ErrAuthenticationFailure = gocbcore.ErrAuthenticationFailure

	// ErrTemporaryFailure occurs when an operation has failed for a reason that is temporary.
	ErrTemporaryFailure = gocbcore.ErrTemporaryFailure

	// ErrParsingFailure occurs when a query has failed to be parsed by the server.
	ErrParsingFailure = gocbcore.ErrParsingFailure

	// ErrCasMismatch occurs when an operation has been performed with a cas value that does not the value on the server.
	ErrCasMismatch = gocbcore.ErrCasMismatch

	// ErrBucketNotFound occurs when the requested bucket could not be found.
	ErrBucketNotFound = gocbcore.ErrBucketNotFound

	// ErrCollectionNotFound occurs when the requested collection could not be found.
	ErrCollectionNotFound = gocbcore.ErrCollectionNotFound

	// ErrEncodingFailure occurs when encoding of a value failed.
	ErrEncodingFailure = gocbcore.ErrEncodingFailure

	// ErrDecodingFailure occurs when decoding of a value failed.
	ErrDecodingFailure = gocbcore.ErrDecodingFailure

	// ErrUnsupportedOperation occurs when an operation that is unsupported or unknown is performed against the server.
	ErrUnsupportedOperation = gocbcore.ErrUnsupportedOperation

	// ErrAmbiguousTimeout occurs when an operation does not receive a response in a timely manner for a reason that
	//
	ErrAmbiguousTimeout = gocbcore.ErrAmbiguousTimeout

	// ErrAmbiguousTimeout occurs when an operation does not receive a response in a timely manner for a reason that
	// it can be safely established that
	ErrUnambiguousTimeout = gocbcore.ErrUnambiguousTimeout

	// ErrFeatureNotAvailable occurs when an operation is performed on a bucket which does not support it.
	ErrFeatureNotAvailable = gocbcore.ErrFeatureNotAvailable

	// ErrScopeNotFound occurs when the requested scope could not be found.
	ErrScopeNotFound = gocbcore.ErrScopeNotFound

	// ErrIndexNotFound occurs when the requested index could not be found.
	ErrIndexNotFound = gocbcore.ErrIndexNotFound

	// ErrIndexExists occurs when creating an index that already exists.
	ErrIndexExists = gocbcore.ErrIndexExists
)

Shared Error Definitions RFC#58@15

var (
	// ErrDocumentNotFound occurs when the requested document could not be found.
	ErrDocumentNotFound = gocbcore.ErrDocumentNotFound

	// ErrDocumentUnretrievable occurs when GetAnyReplica cannot find the document on any replica.
	ErrDocumentUnretrievable = gocbcore.ErrDocumentUnretrievable

	// ErrDocumentLocked occurs when a mutation operation is attempted against a document that is locked.
	ErrDocumentLocked = gocbcore.ErrDocumentLocked

	// ErrValueTooLarge occurs when a document has gone over the maximum size allowed by the server.
	ErrValueTooLarge = gocbcore.ErrValueTooLarge

	// ErrDocumentExists occurs when an attempt is made to insert a document but a document with that key already exists.
	ErrDocumentExists = gocbcore.ErrDocumentExists

	// ErrValueNotJSON occurs when a sub-document operation is performed on a
	// document which is not JSON.
	ErrValueNotJSON = gocbcore.ErrValueNotJSON

	// ErrDurabilityLevelNotAvailable occurs when an invalid durability level was requested.
	ErrDurabilityLevelNotAvailable = gocbcore.ErrDurabilityLevelNotAvailable

	// ErrDurabilityImpossible occurs when a request is performed with impossible
	// durability level requirements.
	ErrDurabilityImpossible = gocbcore.ErrDurabilityImpossible

	// ErrDurabilityAmbiguous occurs when an SyncWrite does not complete in the specified
	// time and the result is ambiguous.
	ErrDurabilityAmbiguous = gocbcore.ErrDurabilityAmbiguous

	// ErrDurableWriteInProgress occurs when an attempt is made to write to a key that has
	// a SyncWrite pending.
	ErrDurableWriteInProgress = gocbcore.ErrDurableWriteInProgress

	// ErrDurableWriteReCommitInProgress occurs when an SyncWrite is being recommitted.
	ErrDurableWriteReCommitInProgress = gocbcore.ErrDurableWriteReCommitInProgress

	// ErrMutationLost occurs when a mutation was lost.
	ErrMutationLost = gocbcore.ErrMutationLost

	// ErrPathNotFound occurs when a sub-document operation targets a path
	// which does not exist in the specified document.
	ErrPathNotFound = gocbcore.ErrPathNotFound

	// ErrPathMismatch occurs when a sub-document operation specifies a path
	// which does not match the document structure (field access on an array).
	ErrPathMismatch = gocbcore.ErrPathMismatch

	// ErrPathInvalid occurs when a sub-document path could not be parsed.
	ErrPathInvalid = gocbcore.ErrPathInvalid

	// ErrPathTooBig occurs when a sub-document path is too big.
	ErrPathTooBig = gocbcore.ErrPathTooBig

	// ErrPathTooDeep occurs when an operation would cause a document to be
	// nested beyond the depth limits allowed by the sub-document specification.
	ErrPathTooDeep = gocbcore.ErrPathTooDeep

	// ErrValueTooDeep occurs when a sub-document operation specifies a value
	// which is deeper than the depth limits of the sub-document specification.
	ErrValueTooDeep = gocbcore.ErrValueTooDeep

	// ErrValueInvalid occurs when a sub-document operation could not insert.
	ErrValueInvalid = gocbcore.ErrValueInvalid

	// ErrDocumentNotJSON occurs when a sub-document operation is performed on a
	// document which is not JSON.
	ErrDocumentNotJSON = gocbcore.ErrDocumentNotJSON

	// ErrNumberTooBig occurs when a sub-document operation is performed with
	// a bad range.
	ErrNumberTooBig = gocbcore.ErrNumberTooBig

	// ErrDeltaInvalid occurs when a sub-document counter operation is performed
	// and the specified delta is not valid.
	ErrDeltaInvalid = gocbcore.ErrDeltaInvalid

	// ErrPathExists occurs when a sub-document operation expects a path not
	// to exists, but the path was found in the document.
	ErrPathExists = gocbcore.ErrPathExists

	// ErrXattrUnknownMacro occurs when an invalid macro value is specified.
	ErrXattrUnknownMacro = gocbcore.ErrXattrUnknownMacro

	// ErrXattrInvalidFlagCombo occurs when an invalid set of
	// extended-attribute flags is passed to a sub-document operation.
	ErrXattrInvalidFlagCombo = gocbcore.ErrXattrInvalidFlagCombo

	// ErrXattrInvalidKeyCombo occurs when an invalid set of key operations
	// are specified for a extended-attribute sub-document operation.
	ErrXattrInvalidKeyCombo = gocbcore.ErrXattrInvalidKeyCombo

	// ErrXattrUnknownVirtualAttribute occurs when an invalid virtual attribute is specified.
	ErrXattrUnknownVirtualAttribute = gocbcore.ErrXattrUnknownVirtualAttribute

	// ErrXattrCannotModifyVirtualAttribute occurs when a mutation is attempted upon
	// a virtual attribute (which are immutable by definition).
	ErrXattrCannotModifyVirtualAttribute = gocbcore.ErrXattrCannotModifyVirtualAttribute

	// ErrXattrInvalidOrder occurs when a set key key operations are specified for a extended-attribute sub-document
	// operation in the incorrect order.
	ErrXattrInvalidOrder = gocbcore.ErrXattrInvalidOrder
)

Key Value Error Definitions RFC#58@15

var (
	// ErrPlanningFailure occurs when the query service was unable to create a query plan.
	ErrPlanningFailure = gocbcore.ErrPlanningFailure

	// ErrIndexFailure occurs when there was an issue with the index specified.
	ErrIndexFailure = gocbcore.ErrIndexFailure

	// ErrPreparedStatementFailure occurs when there was an issue with the prepared statement.
	ErrPreparedStatementFailure = gocbcore.ErrPreparedStatementFailure
)

Query Error Definitions RFC#58@15

var (
	// ErrCompilationFailure occurs when there was an issue executing the analytics query because it could not
	// be compiled.
	ErrCompilationFailure = gocbcore.ErrCompilationFailure

	// ErrJobQueueFull occurs when the analytics service job queue is full.
	ErrJobQueueFull = gocbcore.ErrJobQueueFull

	// ErrDatasetNotFound occurs when the analytics dataset requested could not be found.
	ErrDatasetNotFound = gocbcore.ErrDatasetNotFound

	// ErrDataverseNotFound occurs when the analytics dataverse requested could not be found.
	ErrDataverseNotFound = gocbcore.ErrDataverseNotFound

	// ErrDatasetExists occurs when creating an analytics dataset failed because it already exists.
	ErrDatasetExists = gocbcore.ErrDatasetExists

	// ErrDataverseExists occurs when creating an analytics dataverse failed because it already exists.
	ErrDataverseExists = gocbcore.ErrDataverseExists

	// ErrLinkNotFound occurs when the analytics link requested could not be found.
	ErrLinkNotFound = gocbcore.ErrLinkNotFound
)

Analytics Error Definitions RFC#58@15

var (
	// ErrViewNotFound occurs when the view requested could not be found.
	ErrViewNotFound = gocbcore.ErrViewNotFound

	// ErrDesignDocumentNotFound occurs when the design document requested could not be found.
	ErrDesignDocumentNotFound = gocbcore.ErrDesignDocumentNotFound
)

View Error Definitions RFC#58@15

var (
	// ErrCollectionExists occurs when creating a collection failed because it already exists.
	ErrCollectionExists = gocbcore.ErrCollectionExists

	// ErrScopeExists occurs when creating a scope failed because it already exists.
	ErrScopeExists = gocbcore.ErrScopeExists

	// ErrUserNotFound occurs when the user requested could not be found.
	ErrUserNotFound = gocbcore.ErrUserNotFound

	// ErrGroupNotFound occurs when the group requested could not be found.
	ErrGroupNotFound = gocbcore.ErrGroupNotFound

	// ErrBucketExists occurs when creating a bucket failed because it already exists.
	ErrBucketExists = gocbcore.ErrBucketExists

	// ErrUserExists occurs when creating a user failed because it already exists.
	ErrUserExists = gocbcore.ErrUserExists

	// ErrBucketNotFlushable occurs when a bucket could not be flushed because flushing is not enabled.
	ErrBucketNotFlushable = gocbcore.ErrBucketNotFlushable
)

Management Error Definitions RFC#58@15

var (
	// ErrOverload occurs when too many operations are dispatched and all queues are full.
	ErrOverload = gocbcore.ErrOverload

	// ErrNoResult occurs when no results are available to a query.
	ErrNoResult = errors.New("no result was available")
)

SDK specific error definitions

var (
	// UnknownRetryReason indicates that the operation failed for an unknown reason.
	UnknownRetryReason = RetryReason(gocbcore.UnknownRetryReason)

	// SocketNotAvailableRetryReason indicates that the operation failed because the underlying socket was not available.
	SocketNotAvailableRetryReason = RetryReason(gocbcore.SocketNotAvailableRetryReason)

	// ServiceNotAvailableRetryReason indicates that the operation failed because the requested service was not available.
	ServiceNotAvailableRetryReason = RetryReason(gocbcore.ServiceNotAvailableRetryReason)

	// NodeNotAvailableRetryReason indicates that the operation failed because the requested node was not available.
	NodeNotAvailableRetryReason = RetryReason(gocbcore.NodeNotAvailableRetryReason)

	// KVNotMyVBucketRetryReason indicates that the operation failed because it was sent to the wrong node for the vbucket.
	KVNotMyVBucketRetryReason = RetryReason(gocbcore.KVNotMyVBucketRetryReason)

	// KVCollectionOutdatedRetryReason indicates that the operation failed because the collection ID on the request is outdated.
	KVCollectionOutdatedRetryReason = RetryReason(gocbcore.KVCollectionOutdatedRetryReason)

	// KVErrMapRetryReason indicates that the operation failed for an unsupported reason but the KV error map indicated
	// that the operation can be retried.
	KVErrMapRetryReason = RetryReason(gocbcore.KVErrMapRetryReason)

	// KVLockedRetryReason indicates that the operation failed because the document was locked.
	KVLockedRetryReason = RetryReason(gocbcore.KVLockedRetryReason)

	// KVTemporaryFailureRetryReason indicates that the operation failed because of a temporary failure.
	KVTemporaryFailureRetryReason = RetryReason(gocbcore.KVTemporaryFailureRetryReason)

	// KVSyncWriteInProgressRetryReason indicates that the operation failed because a sync write is in progress.
	KVSyncWriteInProgressRetryReason = RetryReason(gocbcore.KVSyncWriteInProgressRetryReason)

	// KVSyncWriteRecommitInProgressRetryReason indicates that the operation failed because a sync write recommit is in progress.
	KVSyncWriteRecommitInProgressRetryReason = RetryReason(gocbcore.KVSyncWriteRecommitInProgressRetryReason)

	// ServiceResponseCodeIndicatedRetryReason indicates that the operation failed and the service responded stating that
	// the request should be retried.
	ServiceResponseCodeIndicatedRetryReason = RetryReason(gocbcore.ServiceResponseCodeIndicatedRetryReason)

	// SocketCloseInFlightRetryReason indicates that the operation failed because the socket was closed whilst the operation
	// was in flight.
	SocketCloseInFlightRetryReason = RetryReason(gocbcore.SocketCloseInFlightRetryReason)

	// CircuitBreakerOpenRetryReason indicates that the operation failed because the circuit breaker on the connection
	// was open.
	CircuitBreakerOpenRetryReason = RetryReason(gocbcore.CircuitBreakerOpenRetryReason)

	// QueryIndexNotFoundRetryReason indicates that the operation failed to to a missing query index
	QueryIndexNotFoundRetryReason = RetryReason(gocbcore.QueryIndexNotFoundRetryReason)

	// QueryPreparedStatementFailureRetryReason indicates that the operation failed due to a prepared statement failure
	QueryPreparedStatementFailureRetryReason = RetryReason(gocbcore.QueryPreparedStatementFailureRetryReason)

	// AnalyticsTemporaryFailureRetryReason indicates that an analytics operation failed due to a temporary failure
	AnalyticsTemporaryFailureRetryReason = RetryReason(gocbcore.AnalyticsTemporaryFailureRetryReason)

	// SearchTooManyRequestsRetryReason indicates that a search operation failed due to too many requests
	SearchTooManyRequestsRetryReason = RetryReason(gocbcore.SearchTooManyRequestsRetryReason)
)

func Identifier

func Identifier() string

Identifier returns a string representation of the current SDK identifier.

func SetLogRedactionLevel

func SetLogRedactionLevel(level LogRedactLevel)

SetLogRedactionLevel specifies the level with which logs should be redacted.

func SetLogger

func SetLogger(logger Logger)

SetLogger sets a logger to be used by the library. A logger can be obtained via the DefaultStdioLogger() or VerboseStdioLogger() functions. You can also implement your own logger using the Logger interface.

func Version

func Version() string

Version returns a string representation of the current SDK version.

type AllowQueryingSearchIndexOptions

type AllowQueryingSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

AllowQueryingSearchIndexOptions is the set of options available to the search index AllowQuerying operation.

type AnalyticsDataset

type AnalyticsDataset struct {
	Name          string
	DataverseName string
	LinkName      string
	BucketName    string
}

AnalyticsDataset contains information about an analytics dataset.

type AnalyticsError

type AnalyticsError struct {
	InnerError      error                `json:"-"`
	Statement       string               `json:"statement,omitempty"`
	ClientContextID string               `json:"client_context_id,omitempty"`
	Errors          []AnalyticsErrorDesc `json:"errors,omitempty"`
	Endpoint        string               `json:"endpoint,omitempty"`
	RetryReasons    []RetryReason        `json:"retry_reasons,omitempty"`
	RetryAttempts   uint32               `json:"retry_attempts,omitempty"`
}

AnalyticsError is the error type of all analytics query errors. UNCOMMITTED: This API may change in the future.

func (AnalyticsError) Error

func (e AnalyticsError) Error() string

Error returns the string representation of this error.

func (AnalyticsError) Unwrap

func (e AnalyticsError) Unwrap() error

Unwrap returns the underlying cause for this error.

type AnalyticsErrorDesc

type AnalyticsErrorDesc struct {
	Code    uint32
	Message string
}

AnalyticsErrorDesc represents a specific error returned from the analytics service.

type AnalyticsIndex

type AnalyticsIndex struct {
	Name          string
	DatasetName   string
	DataverseName string
	IsPrimary     bool
}

AnalyticsIndex contains information about an analytics index.

type AnalyticsIndexManager

type AnalyticsIndexManager struct {
	// contains filtered or unexported fields
}

AnalyticsIndexManager provides methods for performing Couchbase Analytics index management.

func (am *AnalyticsIndexManager) ConnectLink(opts *ConnectAnalyticsLinkOptions) error

ConnectLink connects an analytics link.

func (*AnalyticsIndexManager) CreateDataset

func (am *AnalyticsIndexManager) CreateDataset(datasetName, bucketName string, opts *CreateAnalyticsDatasetOptions) error

CreateDataset creates a new analytics dataset.

func (*AnalyticsIndexManager) CreateDataverse

func (am *AnalyticsIndexManager) CreateDataverse(dataverseName string, opts *CreateAnalyticsDataverseOptions) error

CreateDataverse creates a new analytics dataset.

func (*AnalyticsIndexManager) CreateIndex

func (am *AnalyticsIndexManager) CreateIndex(datasetName, indexName string, fields map[string]string, opts *CreateAnalyticsIndexOptions) error

CreateIndex creates a new analytics dataset.

func (am *AnalyticsIndexManager) DisconnectLink(opts *DisconnectAnalyticsLinkOptions) error

DisconnectLink disconnects an analytics link.

func (*AnalyticsIndexManager) DropDataset

func (am *AnalyticsIndexManager) DropDataset(datasetName string, opts *DropAnalyticsDatasetOptions) error

DropDataset drops an analytics dataset.

func (*AnalyticsIndexManager) DropDataverse

func (am *AnalyticsIndexManager) DropDataverse(dataverseName string, opts *DropAnalyticsDataverseOptions) error

DropDataverse drops an analytics dataset.

func (*AnalyticsIndexManager) DropIndex

func (am *AnalyticsIndexManager) DropIndex(datasetName, indexName string, opts *DropAnalyticsIndexOptions) error

DropIndex drops an analytics index.

func (*AnalyticsIndexManager) GetAllDatasets

func (am *AnalyticsIndexManager) GetAllDatasets(opts *GetAllAnalyticsDatasetsOptions) ([]AnalyticsDataset, error)

GetAllDatasets gets all analytics datasets.

func (*AnalyticsIndexManager) GetAllIndexes

func (am *AnalyticsIndexManager) GetAllIndexes(opts *GetAllAnalyticsIndexesOptions) ([]AnalyticsIndex, error)

GetAllIndexes gets all analytics indexes.

func (*AnalyticsIndexManager) GetPendingMutations

func (am *AnalyticsIndexManager) GetPendingMutations(opts *GetPendingMutationsAnalyticsOptions) (map[string]uint64, error)

GetPendingMutations returns the number of pending mutations for all indexes in the form of dataverse.dataset:mutations.

type AnalyticsMetaData

type AnalyticsMetaData struct {
	RequestID       string
	ClientContextID string
	Metrics         AnalyticsMetrics
	Signature       interface{}
	Warnings        []AnalyticsWarning
	// contains filtered or unexported fields
}

AnalyticsMetaData provides access to the meta-data properties of a query result.

type AnalyticsMetrics

type AnalyticsMetrics struct {
	ElapsedTime      time.Duration
	ExecutionTime    time.Duration
	ResultCount      uint64
	ResultSize       uint64
	MutationCount    uint64
	SortCount        uint64
	ErrorCount       uint64
	WarningCount     uint64
	ProcessedObjects uint64
}

AnalyticsMetrics encapsulates various metrics gathered during a queries execution.

type AnalyticsOptions

type AnalyticsOptions struct {
	// ClientContextID provides a unique ID for this query which can be used matching up requests between client and
	// server. If not provided will be assigned a uuid value.
	ClientContextID string

	// Priority sets whether this query should be assigned as high priority by the analytics engine.
	Priority             bool
	PositionalParameters []interface{}
	NamedParameters      map[string]interface{}
	Readonly             bool
	ScanConsistency      AnalyticsScanConsistency

	// Raw provides a way to provide extra parameters in the request body for the query.
	Raw map[string]interface{}

	Timeout       time.Duration
	RetryStrategy RetryStrategy
	// contains filtered or unexported fields
}

AnalyticsOptions is the set of options available to an Analytics query.

type AnalyticsResult

type AnalyticsResult struct {
	// contains filtered or unexported fields
}

AnalyticsResult allows access to the results of a query.

func (*AnalyticsResult) Close

func (r *AnalyticsResult) Close() error

Close marks the results as closed, returning any errors that occurred during reading the results.

func (*AnalyticsResult) Err

func (r *AnalyticsResult) Err() error

Err returns any errors that have occurred on the stream

func (*AnalyticsResult) MetaData

func (r *AnalyticsResult) MetaData() (*AnalyticsMetaData, error)

MetaData returns any meta-data that was available from this query. Note that the meta-data will only be available once the object has been closed (either implicitly or explicitly).

func (*AnalyticsResult) Next

func (r *AnalyticsResult) Next() bool

Next assigns the next result from the results into the value pointer, returning whether the read was successful.

func (*AnalyticsResult) One

func (r *AnalyticsResult) One(valuePtr interface{}) error

One assigns the first value from the results into the value pointer. It will close the results but not before iterating through all remaining results, as such this should only be used for very small resultsets - ideally of, at most, length 1.

func (*AnalyticsResult) Row

func (r *AnalyticsResult) Row(valuePtr interface{}) error

Row returns the value of the current row

type AnalyticsScanConsistency

type AnalyticsScanConsistency uint

AnalyticsScanConsistency indicates the level of data consistency desired for an analytics query.

type AnalyticsWarning

type AnalyticsWarning struct {
	Code    uint32
	Message string
}

AnalyticsWarning encapsulates any warnings returned by a query.

type AnalyzeDocumentOptions

type AnalyzeDocumentOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

AnalyzeDocumentOptions is the set of options available to the search index AnalyzeDocument operation.

type AppendOp

type AppendOp struct {
	ID     string
	Value  string
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

AppendOp represents a type of `BulkOp` used for Append operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type AppendOptions

type AppendOptions struct {
	Timeout         time.Duration
	DurabilityLevel DurabilityLevel
	PersistTo       uint
	ReplicateTo     uint
	Cas             Cas
	RetryStrategy   RetryStrategy
}

AppendOptions are the options available to the Append operation.

type ArrayAddUniqueSpecOptions

type ArrayAddUniqueSpecOptions struct {
	CreatePath bool
	IsXattr    bool
}

ArrayAddUniqueSpecOptions are the options available to subdocument ArrayAddUnique operations.

type ArrayAppendSpecOptions

type ArrayAppendSpecOptions struct {
	CreatePath bool
	IsXattr    bool
	// HasMultiple adds multiple values as elements to an array.
	// When used `value` in the spec must be an array type
	// ArrayAppend("path", []int{1,2,3,4}, ArrayAppendSpecOptions{HasMultiple:true}) =>
	//   "path" [..., 1,2,3,4]
	//
	// This is a more efficient version (at both the network and server levels)
	// of doing
	// spec.ArrayAppend("path", 1, nil)
	// spec.ArrayAppend("path", 2, nil)
	// spec.ArrayAppend("path", 3, nil)
	HasMultiple bool
}

ArrayAppendSpecOptions are the options available to subdocument ArrayAppend operations.

type ArrayInsertSpecOptions

type ArrayInsertSpecOptions struct {
	CreatePath bool
	IsXattr    bool
	// HasMultiple adds multiple values as elements to an array.
	// When used `value` in the spec must be an array type
	// ArrayInsert("path[1]", []int{1,2,3,4}, ArrayInsertSpecOptions{HasMultiple:true}) =>
	//   "path" [..., 1,2,3,4]
	//
	// This is a more efficient version (at both the network and server levels)
	// of doing
	// spec.ArrayInsert("path[2]", 1, nil)
	// spec.ArrayInsert("path[3]", 2, nil)
	// spec.ArrayInsert("path[4]", 3, nil)
	HasMultiple bool
}

ArrayInsertSpecOptions are the options available to subdocument ArrayInsert operations.

type ArrayPrependSpecOptions

type ArrayPrependSpecOptions struct {
	CreatePath bool
	IsXattr    bool
	// HasMultiple adds multiple values as elements to an array.
	// When used `value` in the spec must be an array type
	// ArrayPrepend("path", []int{1,2,3,4}, ArrayPrependSpecOptions{HasMultiple:true}) =>
	//   "path" [1,2,3,4, ....]
	//
	// This is a more efficient version (at both the network and server levels)
	// of doing
	// spec.ArrayPrepend("path", 1, nil)
	// spec.ArrayPrepend("path", 2, nil)
	// spec.ArrayPrepend("path", 3, nil)
	HasMultiple bool
}

ArrayPrependSpecOptions are the options available to subdocument ArrayPrepend operations.

type AuthCertRequest

type AuthCertRequest struct {
	Service  ServiceType
	Endpoint string
}

AuthCertRequest encapsulates the data for a certificate request from the new Authenticator interface. VOLATILE: This API is subject to change at any time.

type AuthCredsRequest

type AuthCredsRequest struct {
	Service  ServiceType
	Endpoint string
}

AuthCredsRequest encapsulates the data for a credential request from the new Authenticator interface. VOLATILE: This API is subject to change at any time.

type AuthDomain

type AuthDomain string

AuthDomain specifies the user domain of a specific user

const (
	// LocalDomain specifies users that are locally stored in Couchbase.
	LocalDomain AuthDomain = "local"

	// ExternalDomain specifies users that are externally stored
	// (in LDAP for instance).
	ExternalDomain AuthDomain = "external"
)

type Authenticator

type Authenticator interface {
	// VOLATILE: This API is subject to change at any time.
	SupportsTLS() bool

	// VOLATILE: This API is subject to change at any time.
	SupportsNonTLS() bool

	// VOLATILE: This API is subject to change at any time.
	Certificate(req AuthCertRequest) (*tls.Certificate, error)

	// VOLATILE: This API is subject to change at any time.
	Credentials(req AuthCredsRequest) ([]UserPassPair, error)
}

Authenticator provides an interface to authenticate to each service. Note that only authenticators implemented via the SDK are stable.

type BackoffCalculator

type BackoffCalculator func(retryAttempts uint32) time.Duration

BackoffCalculator defines how backoff durations will be calculated by the retry API.

type BestEffortRetryStrategy

type BestEffortRetryStrategy struct {
	BackoffCalculator BackoffCalculator
}

BestEffortRetryStrategy represents a strategy that will keep retrying until it succeeds (or the caller times out the request).

func NewBestEffortRetryStrategy

func NewBestEffortRetryStrategy(calculator BackoffCalculator) *BestEffortRetryStrategy

NewBestEffortRetryStrategy returns a new BestEffortRetryStrategy which will use the supplied calculator function to calculate retry durations. If calculator is nil then a controlled backoff will be used.

func (*BestEffortRetryStrategy) RetryAfter

func (rs *BestEffortRetryStrategy) RetryAfter(req RetryRequest, reason RetryReason) RetryAction

RetryAfter calculates and returns a RetryAction describing how long to wait before retrying an operation.

type BinaryCollection

type BinaryCollection struct {
	// contains filtered or unexported fields
}

BinaryCollection is a set of binary operations.

func (*BinaryCollection) Append

func (c *BinaryCollection) Append(id string, val []byte, opts *AppendOptions) (mutOut *MutationResult, errOut error)

Append appends a byte value to a document.

func (*BinaryCollection) Decrement

func (c *BinaryCollection) Decrement(id string, opts *DecrementOptions) (countOut *CounterResult, errOut error)

Decrement performs an atomic subtraction for an integer document. Passing a non-negative `initial` value will cause the document to be created if it did not already exist.

func (*BinaryCollection) Increment

func (c *BinaryCollection) Increment(id string, opts *IncrementOptions) (countOut *CounterResult, errOut error)

Increment performs an atomic addition for an integer document. Passing a non-negative `initial` value will cause the document to be created if it did not already exist.

func (*BinaryCollection) Prepend

func (c *BinaryCollection) Prepend(id string, val []byte, opts *PrependOptions) (mutOut *MutationResult, errOut error)

Prepend prepends a byte value to a document.

type Bucket

type Bucket struct {
	// contains filtered or unexported fields
}

Bucket represents a single bucket within a cluster.

func (*Bucket) Collection

func (b *Bucket) Collection(collectionName string) *Collection

Collection returns an instance of a collection from within the default scope. VOLATILE: This API is subject to change at any time.

func (*Bucket) Collections

func (b *Bucket) Collections() *CollectionManager

Collections provides functions for managing collections.

func (*Bucket) DefaultCollection

func (b *Bucket) DefaultCollection() *Collection

DefaultCollection returns an instance of the default collection.

func (*Bucket) DefaultScope

func (b *Bucket) DefaultScope() *Scope

DefaultScope returns an instance of the default scope. VOLATILE: This API is subject to change at any time.

func (*Bucket) Name

func (b *Bucket) Name() string

Name returns the name of the bucket.

func (*Bucket) Ping

func (b *Bucket) Ping(opts *PingOptions) (*PingResult, error)

Ping will ping a list of services and verify they are active and responding in an acceptable period of time.

func (*Bucket) Scope

func (b *Bucket) Scope(scopeName string) *Scope

Scope returns an instance of a Scope. VOLATILE: This API is subject to change at any time.

func (*Bucket) ViewIndexes

func (b *Bucket) ViewIndexes() *ViewIndexManager

ViewIndexes returns a ViewIndexManager instance for managing views.

func (*Bucket) ViewQuery

func (b *Bucket) ViewQuery(designDoc string, viewName string, opts *ViewOptions) (*ViewResult, error)

ViewQuery performs a view query and returns a list of rows or an error.

func (*Bucket) WaitUntilReady

func (b *Bucket) WaitUntilReady(timeout time.Duration, opts *WaitUntilReadyOptions) error

WaitUntilReady will wait for the bucket object to be ready for use. At present this will wait until memd connections have been established with the server and are ready to be used.

type BucketManager

type BucketManager struct {
	// contains filtered or unexported fields
}

BucketManager provides methods for performing bucket management operations. See BucketManager for methods that allow creating and removing buckets themselves.

func (*BucketManager) CreateBucket

func (bm *BucketManager) CreateBucket(settings CreateBucketSettings, opts *CreateBucketOptions) error

CreateBucket creates a bucket on the cluster.

func (*BucketManager) DropBucket

func (bm *BucketManager) DropBucket(name string, opts *DropBucketOptions) error

DropBucket will delete a bucket from the cluster by name.

func (*BucketManager) FlushBucket

func (bm *BucketManager) FlushBucket(name string, opts *FlushBucketOptions) error

FlushBucket will delete all the of the data from a bucket. Keep in mind that you must have flushing enabled in the buckets configuration.

func (*BucketManager) GetAllBuckets

func (bm *BucketManager) GetAllBuckets(opts *GetAllBucketsOptions) (map[string]BucketSettings, error)

GetAllBuckets returns a list of all active buckets on the cluster.

func (*BucketManager) GetBucket

func (bm *BucketManager) GetBucket(bucketName string, opts *GetBucketOptions) (*BucketSettings, error)

GetBucket returns settings for a bucket on the cluster.

func (*BucketManager) UpdateBucket

func (bm *BucketManager) UpdateBucket(settings BucketSettings, opts *UpdateBucketOptions) error

UpdateBucket updates a bucket on the cluster.

type BucketSettings

type BucketSettings struct {
	Name                 string
	FlushEnabled         bool
	ReplicaIndexDisabled bool // inverted so that zero value matches server default.
	RAMQuotaMB           uint64
	NumReplicas          uint32     // NOTE: If not set this will set 0 replicas.
	BucketType           BucketType // Defaults to CouchbaseBucketType.
	EvictionPolicy       EvictionPolicyType
	MaxTTL               time.Duration
	CompressionMode      CompressionMode
}

BucketSettings holds information about the settings for a bucket.

type BucketType

type BucketType string

BucketType specifies the kind of bucket.

type BuildDeferredQueryIndexOptions

type BuildDeferredQueryIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

BuildDeferredQueryIndexOptions is the set of options available to the query indexes BuildDeferredIndexes operation.

type BulkOp

type BulkOp interface {
	// contains filtered or unexported methods
}

BulkOp represents a single operation that can be submitted (within a list of more operations) to .Do() You can create a bulk operation by instantiating one of the implementations of BulkOp, such as GetOp, UpsertOp, ReplaceOp, and more. UNCOMMITTED: This API may change in the future.

type BulkOpOptions

type BulkOpOptions struct {
	Timeout       time.Duration
	Transcoder    Transcoder
	RetryStrategy RetryStrategy
}

BulkOpOptions are the set of options available when performing BulkOps using Do.

type Cas

type Cas gocbcore.Cas

Cas represents the specific state of a document on the cluster.

type CertificateAuthenticator

type CertificateAuthenticator struct {
	ClientCertificate *tls.Certificate
}

CertificateAuthenticator implements an Authenticator which can be used with certificate authentication.

func (CertificateAuthenticator) Certificate

func (ca CertificateAuthenticator) Certificate(req AuthCertRequest) (*tls.Certificate, error)

Certificate returns the certificate to use when connecting to a specified server. VOLATILE: This API is subject to change at any time.

func (CertificateAuthenticator) Credentials

func (ca CertificateAuthenticator) Credentials(req AuthCredsRequest) ([]UserPassPair, error)

Credentials returns the credentials for a particular service. VOLATILE: This API is subject to change at any time.

func (CertificateAuthenticator) SupportsNonTLS

func (ca CertificateAuthenticator) SupportsNonTLS() bool

SupportsNonTLS returns whether this authenticator can authenticate a non-TLS connection. VOLATILE: This API is subject to change at any time.

func (CertificateAuthenticator) SupportsTLS

func (ca CertificateAuthenticator) SupportsTLS() bool

SupportsTLS returns whether this authenticator can authenticate a TLS connection. VOLATILE: This API is subject to change at any time.

type CircuitBreakerCallback

type CircuitBreakerCallback func(error) bool

CircuitBreakerCallback is the callback used by the circuit breaker to determine if an error should count toward the circuit breaker failure count.

type CircuitBreakerConfig

type CircuitBreakerConfig struct {
	Disabled                 bool
	VolumeThreshold          int64
	ErrorThresholdPercentage float64
	SleepWindow              time.Duration
	RollingWindow            time.Duration
	CompletionCallback       CircuitBreakerCallback
	CanaryTimeout            time.Duration
}

CircuitBreakerConfig are the settings for configuring circuit breakers.

type Cluster

type Cluster struct {
	// contains filtered or unexported fields
}

Cluster represents a connection to a specific Couchbase cluster.

func Connect

func Connect(connStr string, opts ClusterOptions) (*Cluster, error)

Connect creates and returns a Cluster instance created using the provided options and a connection string.

func (*Cluster) AnalyticsIndexes

func (c *Cluster) AnalyticsIndexes() *AnalyticsIndexManager

AnalyticsIndexes returns an AnalyticsIndexManager for managing analytics indexes.

func (*Cluster) AnalyticsQuery

func (c *Cluster) AnalyticsQuery(statement string, opts *AnalyticsOptions) (*AnalyticsResult, error)

AnalyticsQuery executes the analytics query statement on the server.

func (*Cluster) Bucket

func (c *Cluster) Bucket(bucketName string) *Bucket

Bucket connects the cluster to server(s) and returns a new Bucket instance.

func (*Cluster) Buckets

func (c *Cluster) Buckets() *BucketManager

Buckets returns a BucketManager for managing buckets.

func (*Cluster) Close

func (c *Cluster) Close(opts *ClusterCloseOptions) error

Close shuts down all buckets in this cluster and invalidates any references this cluster has.

func (*Cluster) Diagnostics

func (c *Cluster) Diagnostics(opts *DiagnosticsOptions) (*DiagnosticsResult, error)

Diagnostics returns information about the internal state of the SDK.

func (*Cluster) Ping

func (c *Cluster) Ping(opts *PingOptions) (*PingResult, error)

Ping will ping a list of services and verify they are active and responding in an acceptable period of time.

func (*Cluster) Query

func (c *Cluster) Query(statement string, opts *QueryOptions) (*QueryResult, error)

Query executes the query statement on the server.

func (*Cluster) QueryIndexes

func (c *Cluster) QueryIndexes() *QueryIndexManager

QueryIndexes returns a QueryIndexManager for managing query indexes.

func (*Cluster) SearchIndexes

func (c *Cluster) SearchIndexes() *SearchIndexManager

SearchIndexes returns a SearchIndexManager for managing search indexes.

func (*Cluster) SearchQuery

func (c *Cluster) SearchQuery(indexName string, query cbsearch.Query, opts *SearchOptions) (*SearchResult, error)

SearchQuery executes the analytics query statement on the server.

func (*Cluster) Users

func (c *Cluster) Users() *UserManager

Users returns a UserManager for managing users.

func (*Cluster) WaitUntilReady

func (c *Cluster) WaitUntilReady(timeout time.Duration, opts *WaitUntilReadyOptions) error

WaitUntilReady will wait for the cluster object to be ready for use. At present this will wait until memd connections have been established with the server and are ready to be used.

type ClusterCloseOptions

type ClusterCloseOptions struct {
}

ClusterCloseOptions is the set of options available when disconnecting from a Cluster.

type ClusterOptions

type ClusterOptions struct {
	// Authenticator specifies the authenticator to use with the cluster.
	Authenticator Authenticator

	// Username & Password specifies the cluster username and password to
	// authenticate with.  This is equivalent to passing PasswordAuthenticator
	// as the Authenticator parameter with the same values.
	Username string
	Password string

	// Timeouts specifies various operation timeouts.
	TimeoutsConfig TimeoutsConfig

	// Transcoder is used for trancoding data used in KV operations.
	Transcoder Transcoder

	// RetryStrategy is used to automatically retry operations if they fail.
	RetryStrategy RetryStrategy

	// Tracer specifies the tracer to use for requests.
	// VOLATILE: This API is subject to change at any time.
	Tracer requestTracer

	// OrphanReporterConfig specifies options for the orphan reporter.
	OrphanReporterConfig OrphanReporterConfig

	// CircuitBreakerConfig specifies options for the circuit breakers.
	CircuitBreakerConfig CircuitBreakerConfig

	// IoConfig specifies IO related configuration options.
	IoConfig IoConfig

	// SecurityConfig specifies security related configuration options.
	SecurityConfig SecurityConfig

	// Internal: This should never be used and is not supported.
	InternalConfig InternalConfig
}

ClusterOptions is the set of options available for creating a Cluster.

type ClusterState

type ClusterState uint

ClusterState specifies the current state of the cluster

type Collection

type Collection struct {
	// contains filtered or unexported fields
}

Collection represents a single collection.

func (*Collection) Binary

func (c *Collection) Binary() *BinaryCollection

Binary creates and returns a BinaryCollection object.

func (*Collection) Do

func (c *Collection) Do(ops []BulkOp, opts *BulkOpOptions) error

Do execute one or more `BulkOp` items in parallel. UNCOMMITTED: This API may change in the future.

func (*Collection) Exists

func (c *Collection) Exists(id string, opts *ExistsOptions) (docOut *ExistsResult, errOut error)

Exists checks if a document exists for the given id.

func (*Collection) Get

func (c *Collection) Get(id string, opts *GetOptions) (docOut *GetResult, errOut error)

Get performs a fetch operation against the collection. This can take 3 paths, a standard full document fetch, a subdocument full document fetch also fetching document expiry (when WithExpiry is set), or a subdocument fetch (when Project is used).

func (*Collection) GetAllReplicas

func (c *Collection) GetAllReplicas(id string, opts *GetAllReplicaOptions) (docOut *GetAllReplicasResult, errOut error)

GetAllReplicas returns the value of a particular document from all replica servers. This will return an iterable which streams results one at a time.

func (*Collection) GetAndLock

func (c *Collection) GetAndLock(id string, lockTime time.Duration, opts *GetAndLockOptions) (docOut *GetResult, errOut error)

GetAndLock locks a document for a period of time, providing exclusive RW access to it. A lockTime value of over 30 seconds will be treated as 30 seconds. The resolution used to send this value to the server is seconds and is calculated using uint32(lockTime/time.Second).

func (*Collection) GetAndTouch

func (c *Collection) GetAndTouch(id string, expiry time.Duration, opts *GetAndTouchOptions) (docOut *GetResult, errOut error)

GetAndTouch retrieves a document and simultaneously updates its expiry time.

func (*Collection) GetAnyReplica

func (c *Collection) GetAnyReplica(id string, opts *GetAnyReplicaOptions) (docOut *GetReplicaResult, errOut error)

GetAnyReplica returns the value of a particular document from a replica server.

func (*Collection) Insert

func (c *Collection) Insert(id string, val interface{}, opts *InsertOptions) (mutOut *MutationResult, errOut error)

Insert creates a new document in the Collection.

func (*Collection) List

func (c *Collection) List(id string) *CouchbaseList

List returns a new CouchbaseList for the document specified by id.

func (*Collection) LookupIn

func (c *Collection) LookupIn(id string, ops []LookupInSpec, opts *LookupInOptions) (docOut *LookupInResult, errOut error)

LookupIn performs a set of subdocument lookup operations on the document identified by id.

func (*Collection) Map

func (c *Collection) Map(id string) *CouchbaseMap

Map returns a new CouchbaseMap.

func (*Collection) MutateIn

func (c *Collection) MutateIn(id string, ops []MutateInSpec, opts *MutateInOptions) (mutOut *MutateInResult, errOut error)

MutateIn performs a set of subdocument mutations on the document specified by id.

func (*Collection) Name

func (c *Collection) Name() string

Name returns the name of the collection.

func (*Collection) Queue

func (c *Collection) Queue(id string) *CouchbaseQueue

Queue returns a new CouchbaseQueue.

func (*Collection) Remove

func (c *Collection) Remove(id string, opts *RemoveOptions) (mutOut *MutationResult, errOut error)

Remove removes a document from the collection.

func (*Collection) Replace

func (c *Collection) Replace(id string, val interface{}, opts *ReplaceOptions) (mutOut *MutationResult, errOut error)

Replace updates a document in the collection.

func (*Collection) Set

func (c *Collection) Set(id string) *CouchbaseSet

Set returns a new CouchbaseSet.

func (*Collection) Touch

func (c *Collection) Touch(id string, expiry time.Duration, opts *TouchOptions) (mutOut *MutationResult, errOut error)

Touch touches a document, specifying a new expiry time for it.

func (*Collection) Unlock

func (c *Collection) Unlock(id string, cas Cas, opts *UnlockOptions) (errOut error)

Unlock unlocks a document which was locked with GetAndLock.

func (*Collection) Upsert

func (c *Collection) Upsert(id string, val interface{}, opts *UpsertOptions) (mutOut *MutationResult, errOut error)

Upsert creates a new document in the Collection if it does not exist, if it does exist then it updates it.

type CollectionManager

type CollectionManager struct {
	// contains filtered or unexported fields
}

CollectionManager provides methods for performing collections management.

func (*CollectionManager) CreateCollection

func (cm *CollectionManager) CreateCollection(spec CollectionSpec, opts *CreateCollectionOptions) error

CreateCollection creates a new collection on the bucket.

func (*CollectionManager) CreateScope

func (cm *CollectionManager) CreateScope(scopeName string, opts *CreateScopeOptions) error

CreateScope creates a new scope on the bucket.

func (*CollectionManager) DropCollection

func (cm *CollectionManager) DropCollection(spec CollectionSpec, opts *DropCollectionOptions) error

DropCollection removes a collection.

func (*CollectionManager) DropScope

func (cm *CollectionManager) DropScope(scopeName string, opts *DropScopeOptions) error

DropScope removes a scope.

func (*CollectionManager) GetAllScopes

func (cm *CollectionManager) GetAllScopes(opts *GetAllScopesOptions) ([]ScopeSpec, error)

GetAllScopes gets all scopes from the bucket.

type CollectionSpec

type CollectionSpec struct {
	Name      string
	ScopeName string
	MaxExpiry time.Duration
}

CollectionSpec describes the specification of a collection.

type CompressionMode

type CompressionMode string

CompressionMode specifies the kind of compression to use for a bucket.

type ConflictResolutionType

type ConflictResolutionType string

ConflictResolutionType specifies the kind of conflict resolution to use for a bucket.

type ConnectAnalyticsLinkOptions

type ConnectAnalyticsLinkOptions struct {
	LinkName string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

ConnectAnalyticsLinkOptions is the set of options available to the AnalyticsManager ConnectLink operation.

type CouchbaseList

type CouchbaseList struct {
	// contains filtered or unexported fields
}

CouchbaseList represents a list document.

func (*CouchbaseList) Append

func (cl *CouchbaseList) Append(val interface{}) error

Append appends an item to the list.

func (*CouchbaseList) At

func (cl *CouchbaseList) At(index int, valuePtr interface{}) error

At retrieves the value specified at the given index from the list.

func (*CouchbaseList) Clear

func (cl *CouchbaseList) Clear() error

Clear clears a list, also removing it.

func (*CouchbaseList) IndexOf

func (cl *CouchbaseList) IndexOf(val interface{}) (int, error)

IndexOf gets the index of the item in the list.

func (*CouchbaseList) Iterator

func (cl *CouchbaseList) Iterator() ([]interface{}, error)

Iterator returns an iterable for all items in the list.

func (*CouchbaseList) Prepend

func (cl *CouchbaseList) Prepend(val interface{}) error

Prepend prepends an item to the list.

func (*CouchbaseList) RemoveAt

func (cl *CouchbaseList) RemoveAt(index int) error

RemoveAt removes the value specified at the given index from the list.

func (*CouchbaseList) Size

func (cl *CouchbaseList) Size() (int, error)

Size returns the size of the list.

type CouchbaseMap

type CouchbaseMap struct {
	// contains filtered or unexported fields
}

CouchbaseMap represents a map document.

func (*CouchbaseMap) Add

func (cl *CouchbaseMap) Add(id string, val interface{}) error

Add adds an item to the map.

func (*CouchbaseMap) At

func (cl *CouchbaseMap) At(id string, valuePtr interface{}) error

At retrieves the item for the given id from the map.

func (*CouchbaseMap) Clear

func (cl *CouchbaseMap) Clear() error

Clear clears a map, also removing it.

func (*CouchbaseMap) Exists

func (cl *CouchbaseMap) Exists(id string) (bool, error)

Exists verifies whether or a id exists in the map.

func (*CouchbaseMap) Iterator

func (cl *CouchbaseMap) Iterator() (map[string]interface{}, error)

Iterator returns an iterable for all items in the map.

func (*CouchbaseMap) Keys

func (cl *CouchbaseMap) Keys() ([]string, error)

Keys returns all of the keys within the map.

func (*CouchbaseMap) Remove

func (cl *CouchbaseMap) Remove(id string) error

Remove removes an item from the map.

func (*CouchbaseMap) Size

func (cl *CouchbaseMap) Size() (int, error)

Size returns the size of the map.

func (*CouchbaseMap) Values

func (cl *CouchbaseMap) Values() ([]interface{}, error)

Values returns all of the values within the map.

type CouchbaseQueue

type CouchbaseQueue struct {
	// contains filtered or unexported fields
}

CouchbaseQueue represents a queue document.

func (*CouchbaseQueue) Clear

func (cs *CouchbaseQueue) Clear() error

Clear clears a queue, also removing it.

func (*CouchbaseQueue) Iterator

func (cs *CouchbaseQueue) Iterator() ([]interface{}, error)

Iterator returns an iterable for all items in the queue.

func (*CouchbaseQueue) Pop

func (cs *CouchbaseQueue) Pop(valuePtr interface{}) error

Pop pops an items off of the queue.

func (*CouchbaseQueue) Push

func (cs *CouchbaseQueue) Push(val interface{}) error

Push pushes a value onto the queue.

func (*CouchbaseQueue) Size

func (cs *CouchbaseQueue) Size() (int, error)

Size returns the size of the queue.

type CouchbaseSet

type CouchbaseSet struct {
	// contains filtered or unexported fields
}

CouchbaseSet represents a set document.

func (*CouchbaseSet) Add

func (cs *CouchbaseSet) Add(val interface{}) error

Add adds a value to the set.

func (*CouchbaseSet) Clear

func (cs *CouchbaseSet) Clear() error

Clear clears a set, also removing it.

func (*CouchbaseSet) Contains

func (cs *CouchbaseSet) Contains(val string) (bool, error)

Contains verifies whether or not a value exists within the set.

func (*CouchbaseSet) Iterator

func (cs *CouchbaseSet) Iterator() ([]interface{}, error)

Iterator returns an iterable for all items in the set.

func (*CouchbaseSet) Remove

func (cs *CouchbaseSet) Remove(val string) error

Remove removes an value from the set.

func (*CouchbaseSet) Size

func (cs *CouchbaseSet) Size() (int, error)

Size returns the size of the set

func (*CouchbaseSet) Values

func (cs *CouchbaseSet) Values() ([]interface{}, error)

Values returns all of the values within the set.

type CountSpecOptions

type CountSpecOptions struct {
	IsXattr bool
}

CountSpecOptions are the options available to LookupIn subdoc Count operations.

type CounterResult

type CounterResult struct {
	MutationResult
	// contains filtered or unexported fields
}

CounterResult is the return type of counter operations.

func (CounterResult) Cas

func (mr CounterResult) Cas() Cas

Cas returns the Cas value for a document following an operation.

func (CounterResult) Content

func (mr CounterResult) Content() uint64

Content returns the new value for the counter document.

func (CounterResult) MutationToken

func (mr CounterResult) MutationToken() *MutationToken

MutationToken returns the mutation token belonging to an operation.

type CounterSpecOptions

type CounterSpecOptions struct {
	CreatePath bool
	IsXattr    bool
}

CounterSpecOptions are the options available to subdocument Increment and Decrement operations.

type CreateAnalyticsDatasetOptions

type CreateAnalyticsDatasetOptions struct {
	IgnoreIfExists bool
	Condition      string
	DataverseName  string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateAnalyticsDatasetOptions is the set of options available to the AnalyticsManager CreateDataset operation.

type CreateAnalyticsDataverseOptions

type CreateAnalyticsDataverseOptions struct {
	IgnoreIfExists bool

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateAnalyticsDataverseOptions is the set of options available to the AnalyticsManager CreateDataverse operation.

type CreateAnalyticsIndexOptions

type CreateAnalyticsIndexOptions struct {
	IgnoreIfExists bool
	DataverseName  string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateAnalyticsIndexOptions is the set of options available to the AnalyticsManager CreateIndex operation.

type CreateBucketOptions

type CreateBucketOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateBucketOptions is the set of options available to the bucket manager CreateBucket operation.

type CreateBucketSettings

type CreateBucketSettings struct {
	BucketSettings
	ConflictResolutionType ConflictResolutionType
}

CreateBucketSettings are the settings available when creating a bucket.

type CreateCollectionOptions

type CreateCollectionOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateCollectionOptions is the set of options available to the CreateCollection operation.

type CreatePrimaryQueryIndexOptions

type CreatePrimaryQueryIndexOptions struct {
	IgnoreIfExists bool
	Deferred       bool
	CustomName     string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreatePrimaryQueryIndexOptions is the set of options available to the query indexes CreatePrimaryIndex operation.

type CreateQueryIndexOptions

type CreateQueryIndexOptions struct {
	IgnoreIfExists bool
	Deferred       bool

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateQueryIndexOptions is the set of options available to the query indexes CreateIndex operation.

type CreateScopeOptions

type CreateScopeOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

CreateScopeOptions is the set of options available to the CreateScope operation.

type DecrementOp

type DecrementOp struct {
	ID      string
	Delta   int64
	Initial int64
	Expiry  time.Duration

	Result *CounterResult
	Err    error
	// contains filtered or unexported fields
}

DecrementOp represents a type of `BulkOp` used for Decrement operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type DecrementOptions

type DecrementOptions struct {
	Timeout time.Duration
	// Expiry is the length of time that the document will be stored in Couchbase.
	// A value of 0 will set the document to never expire.
	Expiry time.Duration
	// Initial, if non-negative, is the `initial` value to use for the document if it does not exist.
	// If present, this is the value that will be returned by a successful operation.
	Initial int64
	// Delta is the value to use for incrementing/decrementing if Initial is not present.
	Delta           uint64
	DurabilityLevel DurabilityLevel
	PersistTo       uint
	ReplicateTo     uint
	Cas             Cas
	RetryStrategy   RetryStrategy
}

DecrementOptions are the options available to the Decrement operation.

type DesignDocument

type DesignDocument struct {
	Name  string
	Views map[string]View
}

DesignDocument represents a Couchbase design document containing multiple views.

type DesignDocumentNamespace

type DesignDocumentNamespace uint

DesignDocumentNamespace represents which namespace a design document resides in.

type DiagnosticsOptions

type DiagnosticsOptions struct {
	ReportID string
}

DiagnosticsOptions are the options that are available for use with the Diagnostics operation.

type DiagnosticsResult

type DiagnosticsResult struct {
	ID       string
	Services map[string][]EndPointDiagnostics

	State ClusterState
	// contains filtered or unexported fields
}

DiagnosticsResult encapsulates the results of a Diagnostics operation.

func (*DiagnosticsResult) MarshalJSON

func (report *DiagnosticsResult) MarshalJSON() ([]byte, error)

MarshalJSON generates a JSON representation of this diagnostics report.

type DisallowQueryingSearchIndexOptions

type DisallowQueryingSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DisallowQueryingSearchIndexOptions is the set of options available to the search index DisallowQuerying operation.

type DisconnectAnalyticsLinkOptions

type DisconnectAnalyticsLinkOptions struct {
	LinkName string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DisconnectAnalyticsLinkOptions is the set of options available to the AnalyticsManager DisconnectLink operation.

type DropAnalyticsDatasetOptions

type DropAnalyticsDatasetOptions struct {
	IgnoreIfNotExists bool
	DataverseName     string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropAnalyticsDatasetOptions is the set of options available to the AnalyticsManager DropDataset operation.

type DropAnalyticsDataverseOptions

type DropAnalyticsDataverseOptions struct {
	IgnoreIfNotExists bool

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropAnalyticsDataverseOptions is the set of options available to the AnalyticsManager DropDataverse operation.

type DropAnalyticsIndexOptions

type DropAnalyticsIndexOptions struct {
	IgnoreIfNotExists bool
	DataverseName     string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropAnalyticsIndexOptions is the set of options available to the AnalyticsManager DropIndex operation.

type DropBucketOptions

type DropBucketOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropBucketOptions is the set of options available to the bucket manager DropBucket operation.

type DropCollectionOptions

type DropCollectionOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropCollectionOptions is the set of options available to the DropCollection operation.

type DropDesignDocumentOptions

type DropDesignDocumentOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropDesignDocumentOptions is the set of options available to the ViewIndexManager Upsert operation.

type DropGroupOptions

type DropGroupOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropGroupOptions is the set of options available to the group manager Drop operation.

type DropPrimaryQueryIndexOptions

type DropPrimaryQueryIndexOptions struct {
	IgnoreIfNotExists bool
	CustomName        string

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropPrimaryQueryIndexOptions is the set of options available to the query indexes DropPrimaryIndex operation.

type DropQueryIndexOptions

type DropQueryIndexOptions struct {
	IgnoreIfNotExists bool

	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropQueryIndexOptions is the set of options available to the query indexes DropIndex operation.

type DropScopeOptions

type DropScopeOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropScopeOptions is the set of options available to the DropScope operation.

type DropSearchIndexOptions

type DropSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

DropSearchIndexOptions is the set of options available to the search index DropIndex operation.

type DropUserOptions

type DropUserOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy

	DomainName string
}

DropUserOptions is the set of options available to the user manager Drop operation.

type DurabilityLevel

type DurabilityLevel uint8

DurabilityLevel specifies the level of synchronous replication to use.

type EndPointDiagnostics

type EndPointDiagnostics struct {
	Type         ServiceType
	ID           string
	Local        string
	Remote       string
	LastActivity time.Time
	State        EndpointState
	Namespace    string
}

EndPointDiagnostics represents a single entry in a diagnostics report.

type EndpointPingReport

type EndpointPingReport struct {
	ID        string
	Local     string
	Remote    string
	State     PingState
	Error     string
	Namespace string
	Latency   time.Duration
}

EndpointPingReport represents a single entry in a ping report.

type EndpointState

type EndpointState uint

EndpointState specifies the current state of an endpoint.

type EvictionPolicyType

type EvictionPolicyType string

EvictionPolicyType specifies the kind of eviction policy to use for a bucket.

type ExistsOptions

type ExistsOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

ExistsOptions are the options available to the Exists command.

type ExistsResult

type ExistsResult struct {
	Result
	// contains filtered or unexported fields
}

ExistsResult is the return type of Exist operations.

func (*ExistsResult) Exists

func (d *ExistsResult) Exists() bool

Exists returns whether or not the document exists.

type ExistsSpecOptions

type ExistsSpecOptions struct {
	IsXattr bool
}

ExistsSpecOptions are the options available to LookupIn subdoc Exists operations.

type FlushBucketOptions

type FlushBucketOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

FlushBucketOptions is the set of options available to the bucket manager FlushBucket operation.

type FreezePlanSearchIndexOptions

type FreezePlanSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

FreezePlanSearchIndexOptions is the set of options available to the search index FreezePlan operation.

type GetAllAnalyticsDatasetsOptions

type GetAllAnalyticsDatasetsOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllAnalyticsDatasetsOptions is the set of options available to the AnalyticsManager GetAllDatasets operation.

type GetAllAnalyticsIndexesOptions

type GetAllAnalyticsIndexesOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllAnalyticsIndexesOptions is the set of options available to the AnalyticsManager GetAllIndexes operation.

type GetAllBucketsOptions

type GetAllBucketsOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllBucketsOptions is the set of options available to the bucket manager GetAll operation.

type GetAllDesignDocumentsOptions

type GetAllDesignDocumentsOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllDesignDocumentsOptions is the set of options available to the ViewIndexManager GetAllDesignDocuments operation.

type GetAllGroupsOptions

type GetAllGroupsOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllGroupsOptions is the set of options available to the group manager GetAll operation.

type GetAllQueryIndexesOptions

type GetAllQueryIndexesOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllQueryIndexesOptions is the set of options available to the query indexes GetAllIndexes operation.

type GetAllReplicaOptions

type GetAllReplicaOptions struct {
	Transcoder    Transcoder
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllReplicaOptions are the options available to the GetAllReplicas command.

type GetAllReplicasResult

type GetAllReplicasResult struct {
	// contains filtered or unexported fields
}

GetAllReplicasResult represents the results of a GetAllReplicas operation.

func (*GetAllReplicasResult) Close

func (r *GetAllReplicasResult) Close() error

Close cancels all remaining get replica requests.

func (*GetAllReplicasResult) Next

func (r *GetAllReplicasResult) Next() *GetReplicaResult

Next fetches the next replica result.

type GetAllScopesOptions

type GetAllScopesOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllScopesOptions is the set of options available to the GetAllScopes operation.

type GetAllSearchIndexOptions

type GetAllSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAllSearchIndexOptions is the set of options available to the search indexes GetAllIndexes operation.

type GetAllUsersOptions

type GetAllUsersOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy

	DomainName string
}

GetAllUsersOptions is the set of options available to the user manager GetAll operation.

type GetAndLockOptions

type GetAndLockOptions struct {
	Transcoder    Transcoder
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAndLockOptions are the options available to the GetAndLock operation.

type GetAndTouchOp

type GetAndTouchOp struct {
	ID     string
	Expiry time.Duration
	Result *GetResult
	Err    error
	// contains filtered or unexported fields
}

GetAndTouchOp represents a type of `BulkOp` used for GetAndTouch operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type GetAndTouchOptions

type GetAndTouchOptions struct {
	Transcoder    Transcoder
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAndTouchOptions are the options available to the GetAndTouch operation.

type GetAnyReplicaOptions

type GetAnyReplicaOptions struct {
	Transcoder    Transcoder
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetAnyReplicaOptions are the options available to the GetAnyReplica command.

type GetBucketOptions

type GetBucketOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetBucketOptions is the set of options available to the bucket manager GetBucket operation.

type GetDesignDocumentOptions

type GetDesignDocumentOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetDesignDocumentOptions is the set of options available to the ViewIndexManager GetDesignDocument operation.

type GetGroupOptions

type GetGroupOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetGroupOptions is the set of options available to the group manager Get operation.

type GetIndexedDocumentsCountOptions

type GetIndexedDocumentsCountOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetIndexedDocumentsCountOptions is the set of options available to the search index GetIndexedDocumentsCount operation.

type GetOp

type GetOp struct {
	ID     string
	Result *GetResult
	Err    error
	// contains filtered or unexported fields
}

GetOp represents a type of `BulkOp` used for Get operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type GetOptions

type GetOptions struct {
	WithExpiry bool
	// Project causes the Get operation to only fetch the fields indicated
	// by the paths. The result of the operation is then treated as a
	// standard GetResult.
	Project       []string
	Transcoder    Transcoder
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetOptions are the options available to a Get operation.

type GetPendingMutationsAnalyticsOptions

type GetPendingMutationsAnalyticsOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetPendingMutationsAnalyticsOptions is the set of options available to the user manager GetPendingMutations operation.

type GetReplicaResult

type GetReplicaResult struct {
	GetResult
	// contains filtered or unexported fields
}

GetReplicaResult is the return type of GetReplica operations.

func (*GetReplicaResult) IsReplica

func (r *GetReplicaResult) IsReplica() bool

IsReplica returns whether or not this result came from a replica server.

type GetResult

type GetResult struct {
	Result
	// contains filtered or unexported fields
}

GetResult is the return type of Get operations.

func (*GetResult) Content

func (d *GetResult) Content(valuePtr interface{}) error

Content assigns the value of the result into the valuePtr using default decoding.

func (*GetResult) Expiry

func (d *GetResult) Expiry() *time.Duration

Expiry returns the expiry value for the result if it available. Note that a nil pointer indicates that the Expiry was fetched, while a valid pointer to a zero Duration indicates that the document will never expire.

type GetRolesOptions

type GetRolesOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetRolesOptions is the set of options available to the user manager GetRoles operation.

type GetSearchIndexOptions

type GetSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

GetSearchIndexOptions is the set of options available to the search indexes GetIndex operation.

type GetSpecOptions

type GetSpecOptions struct {
	IsXattr bool
}

GetSpecOptions are the options available to LookupIn subdoc Get operations.

type GetUserOptions

type GetUserOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy

	DomainName string
}

GetUserOptions is the set of options available to the user manager Get operation.

type Group

type Group struct {
	Name               string
	Description        string
	Roles              []Role
	LDAPGroupReference string
}

Group represents a user group on the server.

type HTTPError

type HTTPError struct {
	InnerError    error         `json:"-"`
	UniqueID      string        `json:"unique_id,omitempty"`
	Endpoint      string        `json:"endpoint,omitempty"`
	RetryReasons  []RetryReason `json:"retry_reasons,omitempty"`
	RetryAttempts uint32        `json:"retry_attempts,omitempty"`
}

HTTPError is the error type of management HTTP errors. UNCOMMITTED: This API may change in the future.

func (HTTPError) Error

func (e HTTPError) Error() string

Error returns the string representation of this error.

func (HTTPError) Unwrap

func (e HTTPError) Unwrap() error

Unwrap returns the underlying cause for this error.

type IncrementOp

type IncrementOp struct {
	ID      string
	Delta   int64
	Initial int64
	Expiry  time.Duration

	Result *CounterResult
	Err    error
	// contains filtered or unexported fields
}

IncrementOp represents a type of `BulkOp` used for Increment operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type IncrementOptions

type IncrementOptions struct {
	Timeout time.Duration
	// Expiry is the length of time that the document will be stored in Couchbase.
	// A value of 0 will set the document to never expire.
	Expiry time.Duration
	// Initial, if non-negative, is the `initial` value to use for the document if it does not exist.
	// If present, this is the value that will be returned by a successful operation.
	Initial int64
	// Delta is the value to use for incrementing/decrementing if Initial is not present.
	Delta           uint64
	DurabilityLevel DurabilityLevel
	PersistTo       uint
	ReplicateTo     uint
	Cas             Cas
	RetryStrategy   RetryStrategy
}

IncrementOptions are the options available to the Increment operation.

type InsertOp

type InsertOp struct {
	ID     string
	Value  interface{}
	Expiry time.Duration
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

InsertOp represents a type of `BulkOp` used for Insert operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type InsertOptions

type InsertOptions struct {
	Expiry          time.Duration
	PersistTo       uint
	ReplicateTo     uint
	DurabilityLevel DurabilityLevel
	Transcoder      Transcoder
	Timeout         time.Duration
	RetryStrategy   RetryStrategy
}

InsertOptions are options that can be applied to an Insert operation.

type InsertSpecOptions

type InsertSpecOptions struct {
	CreatePath bool
	IsXattr    bool
}

InsertSpecOptions are the options available to subdocument Insert operations.

type InternalConfig

type InternalConfig struct {
	TLSRootCAProvider func() *x509.CertPool
}

InternalConfig specifies options for controlling various internal items. Internal: This should never be used and is not supported.

type IoConfig

type IoConfig struct {
	DisableMutationTokens  bool
	DisableServerDurations bool
}

IoConfig specifies IO related configuration options.

type JSONTranscoder

type JSONTranscoder struct {
}

JSONTranscoder implements the default transcoding behavior and applies JSON transcoding to all values.

This will apply the following behavior to the value: binary ([]byte) -> error. default -> JSON value, JSON Flags.

func NewJSONTranscoder

func NewJSONTranscoder() *JSONTranscoder

NewJSONTranscoder returns a new JSONTranscoder.

func (*JSONTranscoder) Decode

func (t *JSONTranscoder) Decode(bytes []byte, flags uint32, out interface{}) error

Decode applies JSON transcoding behaviour to decode into a Go type.

func (*JSONTranscoder) Encode

func (t *JSONTranscoder) Encode(value interface{}) ([]byte, uint32, error)

Encode applies JSON transcoding behaviour to encode a Go type.

type KeyValueError

type KeyValueError struct {
	InnerError         error           `json:"-"`
	StatusCode         memd.StatusCode `json:"status_code,omitempty"`
	BucketName         string          `json:"bucket,omitempty"`
	ScopeName          string          `json:"scope,omitempty"`
	CollectionName     string          `json:"collection,omitempty"`
	CollectionID       uint32          `json:"collection_id,omitempty"`
	ErrorName          string          `json:"error_name,omitempty"`
	ErrorDescription   string          `json:"error_description,omitempty"`
	Opaque             uint32          `json:"opaque,omitempty"`
	Context            string          `json:"context,omitempty"`
	Ref                string          `json:"ref,omitempty"`
	RetryReasons       []RetryReason   `json:"retry_reasons,omitempty"`
	RetryAttempts      uint32          `json:"retry_attempts,omitempty"`
	LastDispatchedTo   string          `json:"last_dispatched_to,omitempty"`
	LastDispatchedFrom string          `json:"last_dispatched_from,omitempty"`
	LastConnectionID   string          `json:"last_connection_id,omitempty"`
}

KeyValueError wraps key-value errors that occur within the SDK. UNCOMMITTED: This API may change in the future.

func (KeyValueError) Error

func (e KeyValueError) Error() string

Error returns the string representation of a kv error.

func (KeyValueError) Unwrap

func (e KeyValueError) Unwrap() error

Unwrap returns the underlying reason for the error

type LegacyTranscoder

type LegacyTranscoder struct {
}

LegacyTranscoder implements the behaviour for a backward-compatible transcoder. This transcoder implements behaviour matching that of gocb v1.

This will apply the following behavior to the value: binary ([]byte) -> binary bytes, Binary expectedFlags. string -> string bytes, String expectedFlags. default -> JSON value, JSON expectedFlags.

func NewLegacyTranscoder

func NewLegacyTranscoder() *LegacyTranscoder

NewLegacyTranscoder returns a new LegacyTranscoder.

func (*LegacyTranscoder) Decode

func (t *LegacyTranscoder) Decode(bytes []byte, flags uint32, out interface{}) error

Decode applies legacy transcoding behaviour to decode into a Go type.

func (*LegacyTranscoder) Encode

func (t *LegacyTranscoder) Encode(value interface{}) ([]byte, uint32, error)

Encode applies legacy transcoding behavior to encode a Go type.

type LogLevel

type LogLevel gocbcore.LogLevel

LogLevel specifies the severity of a log message.

type LogRedactLevel

type LogRedactLevel uint

LogRedactLevel specifies the degree with which to redact the logs.

type Logger

type Logger interface {
	// Outputs logging information:
	// level is the verbosity level
	// offset is the position within the calling stack from which the message
	// originated. This is useful for contextual loggers which retrieve file/line
	// information.
	Log(level LogLevel, offset int, format string, v ...interface{}) error
}

Logger defines a logging interface. You can either use one of the default loggers (DefaultStdioLogger(), VerboseStdioLogger()) or implement your own.

func DefaultStdioLogger

func DefaultStdioLogger() Logger

DefaultStdioLogger gets the default standard I/O logger.

gocb.SetLogger(gocb.DefaultStdioLogger())

func VerboseStdioLogger

func VerboseStdioLogger() Logger

VerboseStdioLogger is a more verbose level of DefaultStdioLogger(). Messages pertaining to the scheduling of ordinary commands (and their responses) will also be emitted.

gocb.SetLogger(gocb.VerboseStdioLogger())

type LookupInOptions

type LookupInOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

LookupInOptions are the set of options available to LookupIn.

type LookupInResult

type LookupInResult struct {
	Result
	// contains filtered or unexported fields
}

LookupInResult is the return type for LookupIn.

func (*LookupInResult) ContentAt

func (lir *LookupInResult) ContentAt(idx uint, valuePtr interface{}) error

ContentAt retrieves the value of the operation by its index. The index is the position of the operation as it was added to the builder.

func (*LookupInResult) Exists

func (lir *LookupInResult) Exists(idx uint) bool

Exists verifies that the item at idx exists.

type LookupInSpec

type LookupInSpec struct {
	// contains filtered or unexported fields
}

LookupInSpec is the representation of an operation available when calling LookupIn

func CountSpec

func CountSpec(path string, opts *CountSpecOptions) LookupInSpec

CountSpec allows you to retrieve the number of items in an array or keys within an dictionary within an element of a document.

func ExistsSpec

func ExistsSpec(path string, opts *ExistsSpecOptions) LookupInSpec

ExistsSpec is similar to Path(), but does not actually retrieve the value from the server. This may save bandwidth if you only need to check for the existence of a path (without caring for its content). You can check the status of this operation by using .ContentAt (and ignoring the value) or .Exists() on the LookupResult.

func GetSpec

func GetSpec(path string, opts *GetSpecOptions) LookupInSpec

GetSpec indicates a path to be retrieved from the document. The value of the path can later be retrieved from the LookupResult. The path syntax follows query's path syntax (e.g. `foo.bar.baz`).

type MutateInOptions

type MutateInOptions struct {
	Expiry          time.Duration
	Cas             Cas
	PersistTo       uint
	ReplicateTo     uint
	DurabilityLevel DurabilityLevel
	StoreSemantic   StoreSemantics
	Timeout         time.Duration
	RetryStrategy   RetryStrategy
}

MutateInOptions are the set of options available to MutateIn.

type MutateInResult

type MutateInResult struct {
	MutationResult
	// contains filtered or unexported fields
}

MutateInResult is the return type of any mutate in related operations. It contains Cas, mutation tokens and any returned content.

func (MutateInResult) ContentAt

func (mir MutateInResult) ContentAt(idx uint, valuePtr interface{}) error

ContentAt retrieves the value of the operation by its index. The index is the position of the operation as it was added to the builder.

type MutateInSpec

type MutateInSpec struct {
	// contains filtered or unexported fields
}

MutateInSpec is the representation of an operation available when calling MutateIn

func ArrayAddUniqueSpec

func ArrayAddUniqueSpec(path string, val interface{}, opts *ArrayAddUniqueSpecOptions) MutateInSpec

ArrayAddUniqueSpec adds an dictionary add unique operation to this mutation operation set.

func ArrayAppendSpec

func ArrayAppendSpec(path string, val interface{}, opts *ArrayAppendSpecOptions) MutateInSpec

ArrayAppendSpec adds an element(s) to the end (i.e. right) of an array

func ArrayInsertSpec

func ArrayInsertSpec(path string, val interface{}, opts *ArrayInsertSpecOptions) MutateInSpec

ArrayInsertSpec inserts an element at a given position within an array. The position should be specified as part of the path, e.g. path.to.array[3]

func ArrayPrependSpec

func ArrayPrependSpec(path string, val interface{}, opts *ArrayPrependSpecOptions) MutateInSpec

ArrayPrependSpec adds an element to the beginning (i.e. left) of an array

func DecrementSpec

func DecrementSpec(path string, delta int64, opts *CounterSpecOptions) MutateInSpec

DecrementSpec adds a decrement operation to this mutation operation set.

func IncrementSpec

func IncrementSpec(path string, delta int64, opts *CounterSpecOptions) MutateInSpec

IncrementSpec adds an increment operation to this mutation operation set.

func InsertSpec

func InsertSpec(path string, val interface{}, opts *InsertSpecOptions) MutateInSpec

InsertSpec inserts a value at the specified path within the document.

func RemoveSpec

func RemoveSpec(path string, opts *RemoveSpecOptions) MutateInSpec

RemoveSpec removes the field at path.

func ReplaceSpec

func ReplaceSpec(path string, val interface{}, opts *ReplaceSpecOptions) MutateInSpec

ReplaceSpec replaces the value of the field at path.

func UpsertSpec

func UpsertSpec(path string, val interface{}, opts *UpsertSpecOptions) MutateInSpec

UpsertSpec creates a new value at the specified path within the document if it does not exist, if it does exist then it updates it.

type MutationMacro

type MutationMacro string

MutationMacro can be supplied to MutateIn operations to perform ExpandMacros operations.

type MutationResult

type MutationResult struct {
	Result
	// contains filtered or unexported fields
}

MutationResult is the return type of any store related operations. It contains Cas and mutation tokens.

func (MutationResult) MutationToken

func (mr MutationResult) MutationToken() *MutationToken

MutationToken returns the mutation token belonging to an operation.

type MutationState

type MutationState struct {
	// contains filtered or unexported fields
}

MutationState holds and aggregates MutationToken's across multiple operations.

func NewMutationState

func NewMutationState(tokens ...MutationToken) *MutationState

NewMutationState creates a new MutationState for tracking mutation state.

func (*MutationState) Add

func (mt *MutationState) Add(tokens ...MutationToken)

Add includes an operation's mutation information in this mutation state.

func (*MutationState) MarshalJSON

func (mt *MutationState) MarshalJSON() ([]byte, error)

MarshalJSON marshal's this mutation state to JSON.

func (*MutationState) UnmarshalJSON

func (mt *MutationState) UnmarshalJSON(data []byte) error

UnmarshalJSON unmarshal's a mutation state from JSON.

type MutationToken

type MutationToken struct {
	// contains filtered or unexported fields
}

MutationToken holds the mutation state information from an operation.

func (MutationToken) BucketName

func (mt MutationToken) BucketName() string

BucketName returns the name of the bucket that this token belongs to.

func (MutationToken) PartitionID

func (mt MutationToken) PartitionID() uint64

PartitionID returns the ID of the vbucket that this token belongs to.

func (MutationToken) PartitionUUID

func (mt MutationToken) PartitionUUID() uint64

PartitionUUID returns the UUID of the vbucket that this token belongs to.

func (MutationToken) SequenceNumber

func (mt MutationToken) SequenceNumber() uint64

SequenceNumber returns the sequence number of the vbucket that this token belongs to.

type NoRetryRetryAction

type NoRetryRetryAction struct {
}

NoRetryRetryAction represents an action that indicates to not retry.

func (*NoRetryRetryAction) Duration

func (ra *NoRetryRetryAction) Duration() time.Duration

Duration is the length of time to wait before retrying an operation.

type Origin

type Origin struct {
	Type string
	Name string
}

Origin indicates why a user has a specific role. Is the Origin Type is "user" then the role is assigned directly to the user. If the type is "group" then it means that the role has been inherited from the group identified by the Name field.

type OrphanReporterConfig

type OrphanReporterConfig struct {
	Disabled       bool
	ReportInterval time.Duration
	SampleSize     uint32
}

OrphanReporterConfig specifies options for controlling the orphan reporter which records when the SDK receives responses for requests that are no longer in the system (usually due to being timed out).

type PasswordAuthenticator

type PasswordAuthenticator struct {
	Username string
	Password string
}

PasswordAuthenticator implements an Authenticator which uses an RBAC username and password.

func (PasswordAuthenticator) Certificate

func (ra PasswordAuthenticator) Certificate(req AuthCertRequest) (*tls.Certificate, error)

Certificate returns the certificate to use when connecting to a specified server. VOLATILE: This API is subject to change at any time.

func (PasswordAuthenticator) Credentials

func (ra PasswordAuthenticator) Credentials(req AuthCredsRequest) ([]UserPassPair, error)

Credentials returns the credentials for a particular service. VOLATILE: This API is subject to change at any time.

func (PasswordAuthenticator) SupportsNonTLS

func (ra PasswordAuthenticator) SupportsNonTLS() bool

SupportsNonTLS returns whether this authenticator can authenticate a non-TLS connection. VOLATILE: This API is subject to change at any time.

func (PasswordAuthenticator) SupportsTLS

func (ra PasswordAuthenticator) SupportsTLS() bool

SupportsTLS returns whether this authenticator can authenticate a TLS connection. VOLATILE: This API is subject to change at any time.

type PauseIngestSearchIndexOptions

type PauseIngestSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

PauseIngestSearchIndexOptions is the set of options available to the search index PauseIngest operation.

type PingOptions

type PingOptions struct {
	ServiceTypes []ServiceType
	ReportID     string
	Timeout      time.Duration
}

PingOptions are the options available to the Ping operation.

type PingResult

type PingResult struct {
	ID       string
	Services map[ServiceType][]EndpointPingReport
	// contains filtered or unexported fields
}

PingResult encapsulates the details from a executed ping operation.

func (*PingResult) MarshalJSON

func (report *PingResult) MarshalJSON() ([]byte, error)

MarshalJSON generates a JSON representation of this ping report.

type PingState

type PingState uint

PingState specifies the result of the ping operation

type PrependOp

type PrependOp struct {
	ID     string
	Value  string
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

PrependOp represents a type of `BulkOp` used for Prepend operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type PrependOptions

type PrependOptions struct {
	Timeout         time.Duration
	DurabilityLevel DurabilityLevel
	PersistTo       uint
	ReplicateTo     uint
	Cas             Cas
	RetryStrategy   RetryStrategy
}

PrependOptions are the options available to the Prepend operation.

type PublishDesignDocumentOptions

type PublishDesignDocumentOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

PublishDesignDocumentOptions is the set of options available to the ViewIndexManager PublishDesignDocument operation.

type QueryError

type QueryError struct {
	InnerError      error            `json:"-"`
	Statement       string           `json:"statement,omitempty"`
	ClientContextID string           `json:"client_context_id,omitempty"`
	Errors          []QueryErrorDesc `json:"errors,omitempty"`
	Endpoint        string           `json:"endpoint,omitempty"`
	RetryReasons    []RetryReason    `json:"retry_reasons,omitempty"`
	RetryAttempts   uint32           `json:"retry_attempts,omitempty"`
}

QueryError is the error type of all query errors. UNCOMMITTED: This API may change in the future.

func (QueryError) Error

func (e QueryError) Error() string

Error returns the string representation of this error.

func (QueryError) Unwrap

func (e QueryError) Unwrap() error

Unwrap returns the underlying cause for this error.

type QueryErrorDesc

type QueryErrorDesc struct {
	Code    uint32
	Message string
}

QueryErrorDesc represents a specific error returned from the query service.

type QueryIndex

type QueryIndex struct {
	Name      string
	IsPrimary bool
	Type      QueryIndexType
	State     string
	Keyspace  string
	Namespace string
	IndexKey  []string
	Condition string
}

QueryIndex represents a Couchbase GSI index.

type QueryIndexManager

type QueryIndexManager struct {
	// contains filtered or unexported fields
}

QueryIndexManager provides methods for performing Couchbase query index management.

func (*QueryIndexManager) BuildDeferredIndexes

func (qm *QueryIndexManager) BuildDeferredIndexes(bucketName string, opts *BuildDeferredQueryIndexOptions) ([]string, error)

BuildDeferredIndexes builds all indexes which are currently in deferred state.

func (*QueryIndexManager) CreateIndex

func (qm *QueryIndexManager) CreateIndex(bucketName, indexName string, fields []string, opts *CreateQueryIndexOptions) error

CreateIndex creates an index over the specified fields.

func (*QueryIndexManager) CreatePrimaryIndex

func (qm *QueryIndexManager) CreatePrimaryIndex(bucketName string, opts *CreatePrimaryQueryIndexOptions) error

CreatePrimaryIndex creates a primary index. An empty customName uses the default naming.

func (*QueryIndexManager) DropIndex

func (qm *QueryIndexManager) DropIndex(bucketName, indexName string, opts *DropQueryIndexOptions) error

DropIndex drops a specific index by name.

func (*QueryIndexManager) DropPrimaryIndex

func (qm *QueryIndexManager) DropPrimaryIndex(bucketName string, opts *DropPrimaryQueryIndexOptions) error

DropPrimaryIndex drops the primary index. Pass an empty customName for unnamed primary indexes.

func (*QueryIndexManager) GetAllIndexes

func (qm *QueryIndexManager) GetAllIndexes(bucketName string, opts *GetAllQueryIndexesOptions) ([]QueryIndex, error)

GetAllIndexes returns a list of all currently registered indexes.

func (*QueryIndexManager) WatchIndexes

func (qm *QueryIndexManager) WatchIndexes(bucketName string, watchList []string, timeout time.Duration, opts *WatchQueryIndexOptions) error

WatchIndexes waits for a set of indexes to come online.

type QueryIndexType

type QueryIndexType string

QueryIndexType provides information on the type of indexer used for an index.

type QueryMetaData

type QueryMetaData struct {
	RequestID       string
	ClientContextID string
	Status          QueryStatus
	Metrics         QueryMetrics
	Signature       interface{}
	Warnings        []QueryWarning
	Profile         interface{}
	// contains filtered or unexported fields
}

QueryMetaData provides access to the meta-data properties of a query result.

type QueryMetrics

type QueryMetrics struct {
	ElapsedTime   time.Duration
	ExecutionTime time.Duration
	ResultCount   uint64
	ResultSize    uint64
	MutationCount uint64
	SortCount     uint64
	ErrorCount    uint64
	WarningCount  uint64
}

QueryMetrics encapsulates various metrics gathered during a queries execution.

type QueryOptions

type QueryOptions struct {
	ScanConsistency QueryScanConsistency
	ConsistentWith  *MutationState
	Profile         QueryProfileMode

	// ScanCap is the maximum buffered channel size between the indexer client and the query service for index scans.
	ScanCap uint32

	// PipelineBatch controls the number of items execution operators can batch for Fetch from the KV.
	PipelineBatch uint32

	// PipelineCap controls the maximum number of items each execution operator can buffer between various operators.
	PipelineCap uint32

	// ScanWait is how long the indexer is allowed to wait until it can satisfy ScanConsistency/ConsistentWith criteria.
	ScanWait time.Duration
	Readonly bool

	// MaxParallelism is the maximum number of index partitions, for computing aggregation in parallel.
	MaxParallelism uint32

	// ClientContextID provides a unique ID for this query which can be used matching up requests between client and
	// server. If not provided will be assigned a uuid value.
	ClientContextID      string
	PositionalParameters []interface{}
	NamedParameters      map[string]interface{}
	Metrics              bool

	// Raw provides a way to provide extra parameters in the request body for the query.
	Raw map[string]interface{}

	Adhoc         bool
	Timeout       time.Duration
	RetryStrategy RetryStrategy
	// contains filtered or unexported fields
}

QueryOptions represents the options available when executing a query.

type QueryProfileMode

type QueryProfileMode string

QueryProfileMode specifies the profiling mode to use during a query.

type QueryResult

type QueryResult struct {
	// contains filtered or unexported fields
}

QueryResult allows access to the results of a query.

func (*QueryResult) Close

func (r *QueryResult) Close() error

Close marks the results as closed, returning any errors that occurred during reading the results.

func (*QueryResult) Err

func (r *QueryResult) Err() error

Err returns any errors that have occurred on the stream

func (*QueryResult) MetaData

func (r *QueryResult) MetaData() (*QueryMetaData, error)

MetaData returns any meta-data that was available from this query. Note that the meta-data will only be available once the object has been closed (either implicitly or explicitly).

func (*QueryResult) Next

func (r *QueryResult) Next() bool

Next assigns the next result from the results into the value pointer, returning whether the read was successful.

func (*QueryResult) One

func (r *QueryResult) One(valuePtr interface{}) error

One assigns the first value from the results into the value pointer. It will close the results but not before iterating through all remaining results, as such this should only be used for very small resultsets - ideally of, at most, length 1.

func (*QueryResult) Row

func (r *QueryResult) Row(valuePtr interface{}) error

Row returns the contents of the current row

type QueryScanConsistency

type QueryScanConsistency uint

QueryScanConsistency indicates the level of data consistency desired for a query.

type QueryStatus

type QueryStatus string

QueryStatus provides information about the current status of a query.

type QueryWarning

type QueryWarning struct {
	Code    uint32
	Message string
}

QueryWarning encapsulates any warnings returned by a query.

type RawBinaryTranscoder

type RawBinaryTranscoder struct {
}

RawBinaryTranscoder implements passthrough behavior of raw binary data. This transcoder does not apply any serialization.

This will apply the following behavior to the value: binary ([]byte) -> binary bytes, binary expectedFlags. default -> error.

func NewRawBinaryTranscoder

func NewRawBinaryTranscoder() *RawBinaryTranscoder

NewRawBinaryTranscoder returns a new RawBinaryTranscoder.

func (*RawBinaryTranscoder) Decode

func (t *RawBinaryTranscoder) Decode(bytes []byte, flags uint32, out interface{}) error

Decode applies raw binary transcoding behaviour to decode into a Go type.

func (*RawBinaryTranscoder) Encode

func (t *RawBinaryTranscoder) Encode(value interface{}) ([]byte, uint32, error)

Encode applies raw binary transcoding behaviour to encode a Go type.

type RawJSONTranscoder

type RawJSONTranscoder struct {
}

RawJSONTranscoder implements passthrough behavior of JSON data. This transcoder does not apply any serialization. It will forward data across the network without incurring unnecessary parsing costs.

This will apply the following behavior to the value: binary ([]byte) -> JSON bytes, JSON expectedFlags. string -> JSON bytes, JSON expectedFlags. default -> error.

func NewRawJSONTranscoder

func NewRawJSONTranscoder() *RawJSONTranscoder

NewRawJSONTranscoder returns a new RawJSONTranscoder.

func (*RawJSONTranscoder) Decode

func (t *RawJSONTranscoder) Decode(bytes []byte, flags uint32, out interface{}) error

Decode applies raw JSON transcoding behaviour to decode into a Go type.

func (*RawJSONTranscoder) Encode

func (t *RawJSONTranscoder) Encode(value interface{}) ([]byte, uint32, error)

Encode applies raw JSON transcoding behaviour to encode a Go type.

type RawStringTranscoder

type RawStringTranscoder struct {
}

RawStringTranscoder implements passthrough behavior of raw string data. This transcoder does not apply any serialization.

This will apply the following behavior to the value: string -> string bytes, string expectedFlags. default -> error.

func NewRawStringTranscoder

func NewRawStringTranscoder() *RawStringTranscoder

NewRawStringTranscoder returns a new RawStringTranscoder.

func (*RawStringTranscoder) Decode

func (t *RawStringTranscoder) Decode(bytes []byte, flags uint32, out interface{}) error

Decode applies raw string transcoding behaviour to decode into a Go type.

func (*RawStringTranscoder) Encode

func (t *RawStringTranscoder) Encode(value interface{}) ([]byte, uint32, error)

Encode applies raw string transcoding behaviour to encode a Go type.

type RemoveOp

type RemoveOp struct {
	ID     string
	Cas    Cas
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

RemoveOp represents a type of `BulkOp` used for Remove operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type RemoveOptions

type RemoveOptions struct {
	Cas             Cas
	PersistTo       uint
	ReplicateTo     uint
	DurabilityLevel DurabilityLevel
	Timeout         time.Duration
	RetryStrategy   RetryStrategy
}

RemoveOptions are the options available to the Remove command.

type RemoveSpecOptions

type RemoveSpecOptions struct {
	IsXattr bool
}

RemoveSpecOptions are the options available to subdocument Remove operations.

type ReplaceOp

type ReplaceOp struct {
	ID     string
	Value  interface{}
	Expiry time.Duration
	Cas    Cas
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

ReplaceOp represents a type of `BulkOp` used for Replace operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type ReplaceOptions

type ReplaceOptions struct {
	Expiry          time.Duration
	Cas             Cas
	PersistTo       uint
	ReplicateTo     uint
	DurabilityLevel DurabilityLevel
	Transcoder      Transcoder
	Timeout         time.Duration
	RetryStrategy   RetryStrategy
}

ReplaceOptions are the options available to a Replace operation.

type ReplaceSpecOptions

type ReplaceSpecOptions struct {
	IsXattr bool
}

ReplaceSpecOptions are the options available to subdocument Replace operations.

type Result

type Result struct {
	// contains filtered or unexported fields
}

Result is the base type for the return types of operations

func (*Result) Cas

func (d *Result) Cas() Cas

Cas returns the cas of the result.

type ResumeIngestSearchIndexOptions

type ResumeIngestSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

ResumeIngestSearchIndexOptions is the set of options available to the search index ResumeIngest operation.

type RetryAction

type RetryAction interface {
	Duration() time.Duration
}

RetryAction is used by a RetryStrategy to calculate the duration to wait before retrying an operation. Returning a value of 0 indicates to not retry.

type RetryReason

type RetryReason interface {
	AllowsNonIdempotentRetry() bool
	AlwaysRetry() bool
	Description() string
}

RetryReason represents the reason for an operation possibly being retried.

type RetryRequest

type RetryRequest interface {
	RetryAttempts() uint32
	Identifier() string
	Idempotent() bool
	RetryReasons() []RetryReason
}

RetryRequest is a request that can possibly be retried.

type RetryStrategy

type RetryStrategy interface {
	RetryAfter(req RetryRequest, reason RetryReason) RetryAction
}

RetryStrategy is to determine if an operation should be retried, and if so how long to wait before retrying.

type Role

type Role struct {
	Name   string `json:"role"`
	Bucket string `json:"bucket_name"`
}

Role represents a specific permission.

type RoleAndDescription

type RoleAndDescription struct {
	Role

	DisplayName string
	Description string
}

RoleAndDescription represents a role with its display name and description.

type RoleAndOrigins

type RoleAndOrigins struct {
	Role

	Origins []Origin
}

RoleAndOrigins associates a role with its origins.

type Scope

type Scope struct {
	// contains filtered or unexported fields
}

Scope represents a single scope within a bucket. VOLATILE: This API is subject to change at any time.

func (*Scope) Collection

func (s *Scope) Collection(collectionName string) *Collection

Collection returns an instance of a collection. VOLATILE: This API is subject to change at any time.

func (*Scope) Name

func (s *Scope) Name() string

Name returns the name of the scope.

type ScopeSpec

type ScopeSpec struct {
	Name        string
	Collections []CollectionSpec
}

ScopeSpec describes the specification of a scope.

type SearchError

type SearchError struct {
	InnerError    error         `json:"-"`
	Query         interface{}   `json:"query,omitempty"`
	Endpoint      string        `json:"endpoint,omitempty"`
	RetryReasons  []RetryReason `json:"retry_reasons,omitempty"`
	RetryAttempts uint32        `json:"retry_attempts,omitempty"`
}

SearchError is the error type of all search query errors. UNCOMMITTED: This API may change in the future.

func (SearchError) Error

func (e SearchError) Error() string

Error returns the string representation of this error.

func (SearchError) Unwrap

func (e SearchError) Unwrap() error

Unwrap returns the underlying cause for this error.

type SearchFacetResult

type SearchFacetResult struct {
	Name    string
	Field   string
	Total   uint64
	Missing uint64
	Other   uint64
}

SearchFacetResult provides access to the result of a faceted query.

type SearchHighlightOptions

type SearchHighlightOptions struct {
	Style  SearchHighlightStyle
	Fields []string
}

SearchHighlightOptions are the options available for search highlighting.

type SearchHighlightStyle

type SearchHighlightStyle string

SearchHighlightStyle indicates the type of highlighting to use for a search query.

type SearchIndex

type SearchIndex struct {
	// UUID is required for updates. It provides a means of ensuring consistency, the UUID must match the UUID value
	// for the index on the server.
	UUID string
	// Name represents the name of this index.
	Name string
	// SourceName is the name of the source of the data for the index e.g. bucket name.
	SourceName string
	// Type is the type of index, e.g. fulltext-index or fulltext-alias.
	Type string
	// IndexParams are index properties such as store type and mappings.
	Params map[string]interface{}
	// SourceUUID is the UUID of the data source, this can be used to more tightly tie the index to a source.
	SourceUUID string
	// SourceParams are extra parameters to be defined. These are usually things like advanced connection and tuning
	// parameters.
	SourceParams map[string]interface{}
	// SourceType is the type of the data source, e.g. couchbase or nil depending on the Type field.
	SourceType string
	// PlanParams are plan properties such as number of replicas and number of partitions.
	PlanParams map[string]interface{}
}

SearchIndex is used to define a search index.

type SearchIndexManager

type SearchIndexManager struct {
	// contains filtered or unexported fields
}

SearchIndexManager provides methods for performing Couchbase search index management.

func (*SearchIndexManager) AllowQuerying

func (sm *SearchIndexManager) AllowQuerying(indexName string, opts *AllowQueryingSearchIndexOptions) error

AllowQuerying allows querying against an index.

func (*SearchIndexManager) AnalyzeDocument

func (sm *SearchIndexManager) AnalyzeDocument(indexName string, doc interface{}, opts *AnalyzeDocumentOptions) ([]interface{}, error)

AnalyzeDocument returns how a doc is analyzed against a specific index.

func (*SearchIndexManager) DisallowQuerying

func (sm *SearchIndexManager) DisallowQuerying(indexName string, opts *AllowQueryingSearchIndexOptions) error

DisallowQuerying disallows querying against an index.

func (*SearchIndexManager) DropIndex

func (sm *SearchIndexManager) DropIndex(indexName string, opts *DropSearchIndexOptions) error

DropIndex removes the search index with the specific name.

func (*SearchIndexManager) FreezePlan

func (sm *SearchIndexManager) FreezePlan(indexName string, opts *AllowQueryingSearchIndexOptions) error

FreezePlan freezes the assignment of index partitions to nodes.

func (*SearchIndexManager) GetAllIndexes

func (sm *SearchIndexManager) GetAllIndexes(opts *GetAllSearchIndexOptions) ([]SearchIndex, error)

GetAllIndexes retrieves all of the search indexes for the cluster.

func (*SearchIndexManager) GetIndex

func (sm *SearchIndexManager) GetIndex(indexName string, opts *GetSearchIndexOptions) (*SearchIndex, error)

GetIndex retrieves a specific search index by name.

func (*SearchIndexManager) GetIndexedDocumentsCount

func (sm *SearchIndexManager) GetIndexedDocumentsCount(indexName string, opts *GetIndexedDocumentsCountOptions) (uint64, error)

GetIndexedDocumentsCount retrieves the document count for a search index.

func (*SearchIndexManager) PauseIngest

func (sm *SearchIndexManager) PauseIngest(indexName string, opts *PauseIngestSearchIndexOptions) error

PauseIngest pauses updates and maintenance for an index.

func (*SearchIndexManager) ResumeIngest

func (sm *SearchIndexManager) ResumeIngest(indexName string, opts *ResumeIngestSearchIndexOptions) error

ResumeIngest resumes updates and maintenance for an index.

func (*SearchIndexManager) UnfreezePlan

func (sm *SearchIndexManager) UnfreezePlan(indexName string, opts *AllowQueryingSearchIndexOptions) error

UnfreezePlan unfreezes the assignment of index partitions to nodes.

func (*SearchIndexManager) UpsertIndex

func (sm *SearchIndexManager) UpsertIndex(indexDefinition SearchIndex, opts *UpsertSearchIndexOptions) error

UpsertIndex creates or updates a search index.

type SearchMetaData

type SearchMetaData struct {
	Metrics SearchMetrics
	Errors  map[string]string
}

SearchMetaData provides access to the meta-data properties of a search query result.

type SearchMetrics

type SearchMetrics struct {
	Took                  time.Duration
	TotalRows             uint64
	MaxScore              float64
	TotalPartitionCount   uint64
	SuccessPartitionCount uint64
	ErrorPartitionCount   uint64
}

SearchMetrics encapsulates various metrics gathered during a search queries execution.

type SearchOptions

type SearchOptions struct {
	ScanConsistency SearchScanConsistency
	Limit           uint32
	Skip            uint32
	Explain         bool
	Highlight       *SearchHighlightOptions
	Fields          []string
	Sort            []cbsearch.Sort
	Facets          map[string]cbsearch.Facet
	ConsistentWith  *MutationState

	// Raw provides a way to provide extra parameters in the request body for the query.
	Raw map[string]interface{}

	Timeout       time.Duration
	RetryStrategy RetryStrategy
	// contains filtered or unexported fields
}

SearchOptions represents a pending search query.

type SearchResult

type SearchResult struct {
	// contains filtered or unexported fields
}

SearchResult allows access to the results of a search query.

func (*SearchResult) Close

func (r *SearchResult) Close() error

Close marks the results as closed, returning any errors that occurred during reading the results.

func (*SearchResult) Err

func (r *SearchResult) Err() error

Err returns any errors that have occurred on the stream

func (*SearchResult) Facets

func (r *SearchResult) Facets() (map[string]SearchFacetResult, error)

Facets returns any facets that were returned with this query. Note that the facets will only be available once the object has been closed (either implicitly or explicitly).

func (*SearchResult) MetaData

func (r *SearchResult) MetaData() (*SearchMetaData, error)

MetaData returns any meta-data that was available from this query. Note that the meta-data will only be available once the object has been closed (either implicitly or explicitly).

func (*SearchResult) Next

func (r *SearchResult) Next() bool

Next assigns the next result from the results into the value pointer, returning whether the read was successful.

func (*SearchResult) Row

func (r *SearchResult) Row() SearchRow

Row returns the contents of the current row.

type SearchRow

type SearchRow struct {
	Index       string
	ID          string
	Score       float64
	Explanation interface{}
	Locations   map[string]map[string][]SearchRowLocation
	Fragments   map[string][]string
	// contains filtered or unexported fields
}

SearchRow represents a single hit returned from a search query.

func (*SearchRow) Fields

func (sr *SearchRow) Fields(valuePtr interface{}) error

Fields decodes the fields included in a search hit.

type SearchRowLocation

type SearchRowLocation struct {
	Position       uint32
	Start          uint32
	End            uint32
	ArrayPositions []uint32
}

SearchRowLocation represents the location of a row match

type SearchScanConsistency

type SearchScanConsistency uint

SearchScanConsistency indicates the level of data consistency desired for a search query.

type SecurityConfig

type SecurityConfig struct {
	TLSRootCAs    *x509.CertPool
	TLSSkipVerify bool
}

SecurityConfig specifies options for controlling security related items such as TLS root certificates and verification skipping.

type ServiceType

type ServiceType gocbcore.ServiceType

ServiceType specifies a particular Couchbase service type.

type StoreSemantics

type StoreSemantics uint8

StoreSemantics is used to define the document level action to take during a MutateIn operation.

type SubdocDocFlag

type SubdocDocFlag memd.SubdocDocFlag

SubdocDocFlag specifies document-level flags for a sub-document operation.

type SubdocFlag

type SubdocFlag memd.SubdocFlag

SubdocFlag provides special handling flags for sub-document operations

type ThresholdLoggingOptions

type ThresholdLoggingOptions struct {
	ServerDurationDisabled bool
	Interval               time.Duration
	SampleSize             uint32
	KVThreshold            time.Duration
	ViewsThreshold         time.Duration
	QueryThreshold         time.Duration
	SearchThreshold        time.Duration
	AnalyticsThreshold     time.Duration
	ManagementThreshold    time.Duration
}

ThresholdLoggingOptions is the set of options available for configuring threshold logging.

type TimeoutError

type TimeoutError struct {
	InnerError         error
	OperationID        string
	Opaque             string
	TimeObserved       time.Duration
	RetryReasons       []RetryReason
	RetryAttempts      uint32
	LastDispatchedTo   string
	LastDispatchedFrom string
	LastConnectionID   string
}

TimeoutError wraps timeout errors that occur within the SDK. UNCOMMITTED: This API may change in the future.

func (TimeoutError) Error

func (err TimeoutError) Error() string

func (*TimeoutError) MarshalJSON

func (err *TimeoutError) MarshalJSON() ([]byte, error)

MarshalJSON implements the Marshaler interface.

func (*TimeoutError) UnmarshalJSON

func (err *TimeoutError) UnmarshalJSON(data []byte) error

UnmarshalJSON implements the Unmarshaler interface.

func (TimeoutError) Unwrap

func (err TimeoutError) Unwrap() error

Unwrap returns the underlying reason for the error

type TimeoutsConfig

type TimeoutsConfig struct {
	ConnectTimeout time.Duration
	KVTimeout      time.Duration
	// Volatile: This option is subject to change at any time.
	KVDurableTimeout  time.Duration
	ViewTimeout       time.Duration
	QueryTimeout      time.Duration
	AnalyticsTimeout  time.Duration
	SearchTimeout     time.Duration
	ManagementTimeout time.Duration
}

TimeoutsConfig specifies options for various operation timeouts.

type TouchOp

type TouchOp struct {
	ID     string
	Expiry time.Duration
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

TouchOp represents a type of `BulkOp` used for Touch operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type TouchOptions

type TouchOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

TouchOptions are the options available to the Touch operation.

type Transcoder

type Transcoder interface {
	// Decodes retrieved bytes into a Go type.
	Decode([]byte, uint32, interface{}) error

	// Encodes a Go type into bytes for storage.
	Encode(interface{}) ([]byte, uint32, error)
}

Transcoder provides an interface for transforming Go values to and from raw bytes for storage and retreival from Couchbase data storage.

type UnfreezePlanSearchIndexOptions

type UnfreezePlanSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

UnfreezePlanSearchIndexOptions is the set of options available to the search index UnfreezePlan operation.

type UnlockOptions

type UnlockOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

UnlockOptions are the options available to the GetAndLock operation.

type UpdateBucketOptions

type UpdateBucketOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

UpdateBucketOptions is the set of options available to the bucket manager UpdateBucket operation.

type UpsertDesignDocumentOptions

type UpsertDesignDocumentOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

UpsertDesignDocumentOptions is the set of options available to the ViewIndexManager UpsertDesignDocument operation.

type UpsertGroupOptions

type UpsertGroupOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

UpsertGroupOptions is the set of options available to the group manager Upsert operation.

type UpsertOp

type UpsertOp struct {
	ID     string
	Value  interface{}
	Expiry time.Duration
	Cas    Cas
	Result *MutationResult
	Err    error
	// contains filtered or unexported fields
}

UpsertOp represents a type of `BulkOp` used for Upsert operations. See BulkOp. UNCOMMITTED: This API may change in the future.

type UpsertOptions

type UpsertOptions struct {
	Expiry          time.Duration
	PersistTo       uint
	ReplicateTo     uint
	DurabilityLevel DurabilityLevel
	Transcoder      Transcoder
	Timeout         time.Duration
	RetryStrategy   RetryStrategy
}

UpsertOptions are options that can be applied to an Upsert operation.

type UpsertSearchIndexOptions

type UpsertSearchIndexOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy
}

UpsertSearchIndexOptions is the set of options available to the search index manager UpsertIndex operation.

type UpsertSpecOptions

type UpsertSpecOptions struct {
	CreatePath bool
	IsXattr    bool
}

UpsertSpecOptions are the options available to subdocument Upsert operations.

type UpsertUserOptions

type UpsertUserOptions struct {
	Timeout       time.Duration
	RetryStrategy RetryStrategy

	DomainName string
}

UpsertUserOptions is the set of options available to the user manager Upsert operation.

type User

type User struct {
	Username    string
	DisplayName string
	// Roles are the roles assigned to the user that are of type "user".
	Roles    []Role
	Groups   []string
	Password string
}

User represents a user which was retrieved from the server.

type UserAndMetadata

type UserAndMetadata struct {
	User

	Domain AuthDomain
	// EffectiveRoles are all of the user's roles and the origins.
	EffectiveRoles  []RoleAndOrigins
	ExternalGroups  []string
	PasswordChanged time.Time
}

UserAndMetadata represents a user and user meta-data from the server.

type UserManager

type UserManager struct {
	// contains filtered or unexported fields
}

UserManager provides methods for performing Couchbase user management.

func (*UserManager) DropGroup

func (um *UserManager) DropGroup(groupName string, opts *DropGroupOptions) error

DropGroup removes a group from the server.

func (*UserManager) DropUser

func (um *UserManager) DropUser(name string, opts *DropUserOptions) error

DropUser removes a built-in RBAC user on the cluster.

func (*UserManager) GetAllGroups

func (um *UserManager) GetAllGroups(opts *GetAllGroupsOptions) ([]Group, error)

GetAllGroups fetches all groups from the server.

func (*UserManager) GetAllUsers

func (um *UserManager) GetAllUsers(opts *GetAllUsersOptions) ([]UserAndMetadata, error)

GetAllUsers returns a list of all the users from the cluster.

func (*UserManager) GetGroup

func (um *UserManager) GetGroup(groupName string, opts *GetGroupOptions) (*Group, error)

GetGroup fetches a single group from the server.

func (*UserManager) GetRoles

func (um *UserManager) GetRoles(opts *GetRolesOptions) ([]RoleAndDescription, error)

GetRoles lists the roles supported by the cluster.

func (*UserManager) GetUser

func (um *UserManager) GetUser(name string, opts *GetUserOptions) (*UserAndMetadata, error)

GetUser returns the data for a particular user

func (*UserManager) UpsertGroup

func (um *UserManager) UpsertGroup(group Group, opts *UpsertGroupOptions) error

UpsertGroup creates, or updates, a group on the server.

func (*UserManager) UpsertUser

func (um *UserManager) UpsertUser(user User, opts *UpsertUserOptions) error

UpsertUser updates a built-in RBAC user on the cluster.

type UserPassPair

type UserPassPair gocbcore.UserPassPair

UserPassPair represents a username and password pair. VOLATILE: This API is subject to change at any time.

type View

type View struct {
	Map    string
	Reduce string
}

View represents a Couchbase view within a design document.

type ViewError

type ViewError struct {
	InnerError         error           `json:"-"`
	DesignDocumentName string          `json:"design_document_name,omitempty"`
	ViewName           string          `json:"view_name,omitempty"`
	Errors             []ViewErrorDesc `json:"errors,omitempty"`
	Endpoint           string          `json:"endpoint,omitempty"`
	RetryReasons       []RetryReason   `json:"retry_reasons,omitempty"`
	RetryAttempts      uint32          `json:"retry_attempts,omitempty"`
}

ViewError is the error type of all view query errors. UNCOMMITTED: This API may change in the future.

func (ViewError) Error

func (e ViewError) Error() string

Error returns the string representation of this error.

func (ViewError) Unwrap

func (e ViewError) Unwrap() error

Unwrap returns the underlying cause for this error.

type ViewErrorDesc

type ViewErrorDesc struct {
	SourceNode string
	Message    string
}

ViewErrorDesc represents a specific error returned from the views service.

type ViewErrorMode

type ViewErrorMode uint

ViewErrorMode pecifies the behaviour of the query engine should an error occur during the gathering of view index results which would result in only partial results being available.

type ViewIndexManager

type ViewIndexManager struct {
	// contains filtered or unexported fields
}

ViewIndexManager provides methods for performing View management.

func (*ViewIndexManager) DropDesignDocument

func (vm *ViewIndexManager) DropDesignDocument(name string, namespace DesignDocumentNamespace, opts *DropDesignDocumentOptions) error

DropDesignDocument will remove a design document from the given bucket.

func (*ViewIndexManager) GetAllDesignDocuments

func (vm *ViewIndexManager) GetAllDesignDocuments(namespace DesignDocumentNamespace, opts *GetAllDesignDocumentsOptions) ([]DesignDocument, error)

GetAllDesignDocuments will retrieve all design documents for the given bucket.

func (*ViewIndexManager) GetDesignDocument

func (vm *ViewIndexManager) GetDesignDocument(name string, namespace DesignDocumentNamespace, opts *GetDesignDocumentOptions) (*DesignDocument, error)

GetDesignDocument retrieves a single design document for the given bucket.

func (*ViewIndexManager) PublishDesignDocument

func (vm *ViewIndexManager) PublishDesignDocument(name string, opts *PublishDesignDocumentOptions) error

PublishDesignDocument publishes a design document to the given bucket.

func (*ViewIndexManager) UpsertDesignDocument

func (vm *ViewIndexManager) UpsertDesignDocument(ddoc DesignDocument, namespace DesignDocumentNamespace, opts *UpsertDesignDocumentOptions) error

UpsertDesignDocument will insert a design document to the given bucket, or update an existing design document with the same name.

type ViewMetaData

type ViewMetaData struct {
	TotalRows uint64
	Debug     interface{}
}

ViewMetaData provides access to the meta-data properties of a view query result.

type ViewOptions

type ViewOptions struct {
	ScanConsistency ViewScanConsistency
	Skip            uint32
	Limit           uint32
	Order           ViewOrdering
	Reduce          bool
	Group           bool
	GroupLevel      uint32
	Key             interface{}
	Keys            []interface{}
	StartKey        interface{}
	EndKey          interface{}
	InclusiveEnd    bool
	StartKeyDocID   string
	EndKeyDocID     string
	OnError         ViewErrorMode
	Debug           bool

	// Raw provides a way to provide extra parameters in the request body for the query.
	Raw map[string]string

	Namespace DesignDocumentNamespace

	Timeout       time.Duration
	RetryStrategy RetryStrategy
	// contains filtered or unexported fields
}

ViewOptions represents the options available when executing view query.

type ViewOrdering

type ViewOrdering uint

ViewOrdering specifies the ordering for the view queries results.

type ViewResult

type ViewResult struct {
	// contains filtered or unexported fields
}

ViewResult implements an iterator interface which can be used to iterate over the rows of the query results.

func (*ViewResult) Close

func (r *ViewResult) Close() error

Close marks the results as closed, returning any errors that occurred during reading the results.

func (*ViewResult) Err

func (r *ViewResult) Err() error

Err returns any errors that have occurred on the stream

func (*ViewResult) MetaData

func (r *ViewResult) MetaData() (*ViewMetaData, error)

MetaData returns any meta-data that was available from this query. Note that the meta-data will only be available once the object has been closed (either implicitly or explicitly).

func (*ViewResult) Next

func (r *ViewResult) Next() bool

Next assigns the next result from the results into the value pointer, returning whether the read was successful.

func (*ViewResult) Row

func (r *ViewResult) Row() ViewRow

Row returns the contents of the current row.

type ViewRow

type ViewRow struct {
	ID string
	// contains filtered or unexported fields
}

ViewRow represents a single row returned from a view query.

func (*ViewRow) Key

func (vr *ViewRow) Key(valuePtr interface{}) error

Key returns the key associated with this view row.

func (*ViewRow) Value

func (vr *ViewRow) Value(valuePtr interface{}) error

Value returns the value associated with this view row.

type ViewScanConsistency

type ViewScanConsistency uint

ViewScanConsistency specifies the consistency required for a view query.

type WaitUntilReadyOptions

type WaitUntilReadyOptions struct {
	DesiredState ClusterState
}

WaitUntilReadyOptions is the set of options available to the WaitUntilReady operations.

type WatchQueryIndexOptions

type WatchQueryIndexOptions struct {
	WatchPrimary bool

	RetryStrategy RetryStrategy
}

WatchQueryIndexOptions is the set of options available to the query indexes Watch operation.

type WithDurationRetryAction

type WithDurationRetryAction struct {
	WithDuration time.Duration
}

WithDurationRetryAction represents an action that indicates to retry with a given duration.

func (*WithDurationRetryAction) Duration

func (ra *WithDurationRetryAction) Duration() time.Duration

Duration is the length of time to wait before retrying an operation.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
f or F : Jump to identifier