Packages

p

gnieh

sohva

package sohva

Contains all the classes needed to interact with a couchdb server. Classes in this package allows the user to:

  • create/delete new databases into a couchdb instance,
  • create/update/delete documents into a couchdb database,
  • create/update/delete designs and views,
  • manage built-in security document of a given database,
  • create/update/delete couchdb users,
  • use couchdb authentication API to create sessions and use built-in permission system.
Linear Supertypes
AnyRef, Any
Ordering
  1. Grouped
  2. Alphabetic
  3. By Inheritance
Inherited
  1. sohva
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. final case class Attachment(content_type: String, revpos: Int, digest: String, length: Int, stub: Boolean, encoded_length: Option[Int] = None, encoding: Option[String] = None) extends Product with Serializable
  2. trait Attachments extends AnyRef

    Mix in this trait with any object to have automatic management of the attachment fields

  3. case class AuthInfo(authentication_db: String, authentication_handlers: List[String], authenticated: Option[String]) extends Product with Serializable

    Authentication information indicating the authentication database, the handler used and the authentication method

  4. case class AuthResult(ok: Boolean, userCtx: UserCtx, info: Option[AuthInfo]) extends Product with Serializable

    Result of the authentication request

  5. class AutoCloseabled[T <: Closeable] extends AnyRef
  6. class BasicSession extends CouchDB with Session

    An instance of a Couch session that allows the user to perform authenticated operations using HTTP basic authentication.

  7. sealed trait BulkOp[+T] extends AnyRef
  8. class CList extends AnyRef

    A list that can be queried for a given view.

  9. case class Change(seq: JsValue, id: String, changes: Vector[Rev], deleted: Boolean, doc: Option[JsObject]) extends Product with Serializable
  10. class ChangeStream extends AnyRef

    A stream that represents a connection to the _changes stream of a database.

  11. case class Changes(last_seq: JsValue, pending: Int, results: Vector[Change]) extends Product with Serializable
  12. case class CommonJSView(libs: Map[String, JsValue]) extends ViewDoc with Product with Serializable
  13. case class Configuration(sections: Map[String, Map[String, String]]) extends Product with Serializable

    The configuration object of a couchdb instance

  14. class ConflictException extends CouchException
  15. class CouchClient extends CouchDB

    A CouchDB instance.

    A CouchDB instance. Allows users to access the different databases and instance information. This is the key class to start with when one wants to work with couchdb. Through this one you will get access to the sessions and anonymous access to databases.

  16. sealed trait CouchCredentials extends AnyRef
  17. abstract class CouchDB extends AnyRef

    A CouchDB instance.

    A CouchDB instance. Allows users to access the different databases and information. This is the key class to start with when one wants to work with couchdb. Through this one you will get access to the databases.

  18. class CouchException extends Exception
  19. trait CouchFormat[T] extends RootJsonFormat[T]
  20. trait CouchFormatImpl extends AnyRef
  21. final case class CouchInfo(couchdb: String, version: String) extends Product with Serializable
  22. case class CouchUser(name: String, password: String, roles: List[String], oauth: Option[OAuthData] = None, type: String = "user") extends IdRev with Product with Serializable
  23. class Database extends DocumentOps

    Gives the user access to the different operations available on a database.

    Gives the user access to the different operations available on a database. Among other operations this is the key class to get access to the documents of this database.

    It also exposes the change handler interface, that allows people to react to change notifications. This is a low-level API, that handles raw Json objects

  24. abstract class DbRef extends AnyRef

    A Reference to a database.

  25. sealed trait DbResult extends AnyRef
  26. final case class DbUpdate(db_name: String, seq: JsValue, type: String) extends Product with Serializable
  27. case class Delete(id: String, rev: String) extends BulkOp[Nothing] with Product with Serializable
  28. class Design extends AnyRef

    A design gives access to the different views.

    A design gives access to the different views. Use this class to get or create new views.

  29. case class DesignDoc(_id: String, language: String, views: Map[String, ViewDoc], validate_doc_update: Option[String], updates: Map[String, String], filters: Map[String, String], shows: Map[String, String], lists: Map[String, String], rewrites: Seq[RewriteRule], libs: Map[String, JsValue]) extends IdRev with Product with Serializable
  30. final case class DocUpdate(ok: Boolean, id: String, rev: String) extends Product with Serializable
  31. abstract class DocumentOps extends AnyRef
  32. final case class ErrorRawRow(key: JsValue, error: String) extends RawRow with Product with Serializable

    Warning: This is low-level API, and might break compatibility even between patch releases

  33. final case class ErrorResult(id: Option[String], error: String, reason: String) extends DbResult with Product with Serializable
  34. trait IdRev extends AnyRef

    Mix in this trait with any object to have more efficient automatic handling of documents (no reflective method call is performed)

  35. final case class InfoResult(compact_running: Boolean, db_name: String, disk_format_version: Int, disk_size: Long, doc_count: Long, doc_del_count: Long, data_size: Long, instance_start_time: String, purge_seq: Long, update_seq: JsValue, sizes: Option[Sizes], other: Option[Map[String, JsValue]]) extends Product with Serializable
  36. class Local extends DocumentOps
  37. case class LocalDb(name: String) extends DbRef with Product with Serializable

    A Reference to a local database identified by its name.

  38. final case class LoginPasswordCredentials(username: String, password: String) extends CouchCredentials with Product with Serializable
  39. final case class Membership(all_nodes: Vector[String], cluster_nodes: Vector[String]) extends Product with Serializable
  40. final case class OAuthCredentials(consumerKey: String, consumerSecret: String, token: String, secret: String) extends CouchCredentials with Product with Serializable
  41. case class OAuthData(consumer_keys: Map[String, String], tokens: Map[String, String]) extends Product with Serializable
  42. class OAuthSession extends CouchDB with Session

    An instance of a Couch session that allows the user to perform authenticated operations using OAuth.

  43. final case class OkResult(ok: Boolean, id: Option[String], rev: Option[String]) extends DbResult with Product with Serializable
  44. sealed trait RawRow extends AnyRef

    Warning: This is low-level API, and might break compatibility even between patch releases

  45. final case class RawViewResult(total_rows: Long, offset: Long, rows: List[RawRow], update_seq: Option[Long]) extends Product with Serializable

    Warning: This is low-level API, and might break compatibility even between patch releases

  46. case class RemoteDb(url: URL) extends DbRef with Product with Serializable

    A Reference to a remote database identified by its url.

  47. case class Replication(_id: String, source: DbRef, target: DbRef, continuous: Option[Boolean] = None, create_target: Option[Boolean] = None, _replication_id: Option[String] = None, _replication_state: Option[String] = None, _replication_state_time: Option[String] = None, doc_ids: List[String] = Nil, user_ctx: Option[UserCtx] = None) extends IdRev with Product with Serializable

    A replication document contains information about a particular replication process (continuous or not, ...)

  48. class Replicator extends Database

    A replicator database that allows people to manage replications:

    A replicator database that allows people to manage replications:

    • start replication
    • cancel or stop replications
    • list current replications
  49. case class Rev(rev: String) extends Product with Serializable
  50. final case class RevDiff(missing: Vector[String], possible_ancestors: Vector[String]) extends Product with Serializable
  51. case class RewriteRule(from: String, to: String, method: String, query: Map[String, String]) extends Product with Serializable
  52. case class Row[Key, Value, Doc](id: Option[String], key: Key, value: Value, doc: Option[Doc] = None) extends Product with Serializable
  53. case class Save[T](doc: T) extends BulkOp[T] with Product with Serializable
  54. case class SecurityDoc(admins: SecurityList = EmptySecurityList, members: SecurityList = EmptySecurityList) extends Product with Serializable

    A security document is a special document for couchdb.

    A security document is a special document for couchdb. It has no _id or _rev field.

  55. case class SecurityList(names: List[String] = Nil, roles: List[String] = Nil) extends Product with Serializable
  56. trait Session extends CouchDB

    Methods that must be implemented by a session.

  57. class Show extends AnyRef

    A show function that can be queried.

  58. sealed trait Since extends AnyRef

    start sequence of a change stream.

  59. final case class Sizes(file: Long, external: Long, active: Long) extends Product with Serializable
  60. case class SohvaException(msg: String, cause: Throwable = null) extends Exception with Product with Serializable
  61. case class SohvaJsonException(msg: String, inner: Exception) extends Exception with Product with Serializable
  62. trait SohvaProtocol extends DefaultJsonProtocol with MangoProtocol with CouchFormatImpl
  63. case class StandardView(map: String, reduce: Option[String], libs: Map[String, JsValue]) extends ViewDoc with Product with Serializable
  64. final case class SuccessRawRow(id: Option[String], key: JsValue, value: JsValue, doc: Option[JsObject]) extends RawRow with Product with Serializable

    Warning: This is low-level API, and might break compatibility even between patch releases

  65. class Update extends AnyRef

    An update handler that can be queried.

  66. final case class UpdateSequence(seq: JsValue) extends Since with Product with Serializable

    Start at the given update sequence.

  67. case class UserCtx(name: Option[String], roles: List[String]) extends Product with Serializable

    The user context giving his name and roles

  68. case class UserInfo(name: String, roles: List[String]) extends Product with Serializable

    A couchdb user has a name, a password and a lit of roles.

  69. class Users extends AnyRef

    The users database, exposing the interface for managing couchdb users.

  70. class View extends AnyRef

    A view can be queried to get the result.

  71. sealed trait ViewDoc extends AnyRef
  72. final case class ViewResult[Key, Value, Doc](total_rows: Int, offset: Int, rows: List[Row[Key, Value, Doc]], update_seq: Option[Int]) extends Product with Serializable

Value Members

  1. val COPY: HttpMethod
  2. val now: Now.type
  3. object ConflictException extends Serializable
  4. object CouchException extends Serializable
  5. object CouchFormatImpl
  6. object EmptySecurityList extends SecurityList
  7. object Now extends Since with Product with Serializable

    Start with changes from now on.

  8. object OAuth
  9. object Origin extends Since with Product with Serializable

    Start at the beginning of time.

  10. object SohvaProtocol extends SohvaProtocol

Inherited from AnyRef

Inherited from Any

Ungrouped

LowLevel

Low-level classes that may break compatibility even between patch and minor versions