com.github.cloudfiles.webdav

Members list

Type members

Classlikes

case class DavConfig(rootUri: Uri, additionalAttributes: Iterable[AttributeKey], optDescriptionKey: Option[AttributeKey], deleteBeforeOverride: Boolean, timeout: Timeout)

A data class storing configuration options for interacting with a WebDav server.

A data class storing configuration options for interacting with a WebDav server.

The server is identified by a root URI. This URI can have a path component, the file system then uses this path as its root. Further properties define which attribute should be used to extract the description of elements, the behavior when overriding files, and timeouts when waiting for server responses.

When querying the content of folders using ''PROPFIND'' requests, servers can behave differently with regards to the properties included in the responses by default: Some servers always return the full set of properties available, while others limit responses to the set of standard DAV properties. When working with custom properties it is therefore necessary to explicitly list the fully-qualified names of these properties in requests. This can be achieved by passing them as ''additionalAttributes''. The parameter defaults to the set of standard properties, causing requests to select only these properties. If custom properties are to be taken into account, provide a collection with their fully-qualified names here. (The collection does not need to include the standard properties; they are always retrieved. Also, the optional description key - if provided - is taken into account automatically.) By explicitly setting the ''additionalAttributes'' parameter to an empty list and passing ''None'' for the description key, no body is generated for ''PROPFIND'' requests; the results then depend on a concrete server.

Value parameters

additionalAttributes

a collection with the keys for custom properties to retrieve from the server

deleteBeforeOverride

flag whether files should be deleted before they are uploaded again; set to '''true''' if file uploads are unreliable if files already exist on the server, but be aware that this removes all the properties of this file

optDescriptionKey

optional key for the description attribute

rootUri

the root URI of the WebDav file system

timeout

the timeout for server requests

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object DavFileSystem

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class DavFileSystem(val config: DavConfig) extends ExtensibleFileSystem[Uri, DavFile, DavFolder, FolderContent[Uri, DavFile, DavFolder]]

WebDav-specific implementation of the com.github.cloudfiles.core.FileSystem trait.

WebDav-specific implementation of the com.github.cloudfiles.core.FileSystem trait.

This class allows interacting with the files and folders stored on a WebDav server, which is defined by the configuration provided. Elements on the server are identified by their direct URIs; so relative paths can be transformed to IDs in a straight-forward way.

Value parameters

config

the configuration

Attributes

Companion
object
Supertypes
trait ExtensibleFileSystem[Uri, DavFile, DavFolder, FolderContent[Uri, DavFile, DavFolder]]
trait FileSystem[Uri, DavFile, DavFolder, FolderContent[Uri, DavFile, DavFolder]]
trait AutoCloseable
class Object
trait Matchable
class Any
Show all
object DavModel

A module defining the concrete data types used by the WebDav protocol to represent files and folders.

A module defining the concrete data types used by the WebDav protocol to represent files and folders.

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DavModel.type
object DavParser

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
DavParser.type
class DepthHeader(depth: String) extends ModeledCustomHeader[DepthHeader]

Class representing the ''Depth'' header.

Class representing the ''Depth'' header.

This header has to be included to WebDav requests. It defines the depth of sub structures to be returned by a ''PROPFIND'' request.

Value parameters

depth

the value of the header

Attributes

Companion
object
Supertypes
class ModeledCustomHeader[DepthHeader]
class CustomHeader
class CustomHeader
class HttpHeader
class HttpHeader
class Object
trait Matchable
class Any
Show all
object DepthHeader extends ModeledCustomHeaderCompanion[DepthHeader]

Attributes

Companion
class
Supertypes
class ModeledCustomHeaderCompanion[DepthHeader]
class Object
trait Matchable
class Any
Self type

Value members

Concrete methods

def withTrailingSlash(uri: Uri): Uri

Returns an URI based on the given one that is guaranteed to end with a slash.

Returns an URI based on the given one that is guaranteed to end with a slash.

Value parameters

uri

the URI

Attributes

Returns

the URI ending on a slash