shelf_dav library
Classes
- AllowAllAuthorizationProvider
- Allow-all authorization provider
- AuthenticationProvider
- Authentication provider interface
- AuthenticationResult
- Result of an authentication attempt
- AuthMiddleware
- Authentication and authorization middleware
- AuthorizationProvider
- Authorization provider interface
- AuthorizationResult
- Result of an authorization check
- AuthUser
- Represents an authenticated user
- BasicAuthenticationProvider
- HTTP Basic Authentication provider
- DAVConfig
- Configuration options for ShelfDAV server
- DavLock
- Represents a WebDAV lock on a resource
- DavProperty
- Represents a WebDAV property with namespace and value
- DbmLockStorage
- DBM-based lock storage implementation using libdbm
- DbmPropertyStorage
- DBM-based property storage implementation using libdbm
- DenyAllAuthProvider
- Deny-all authentication provider
- LockStorage
- Abstract interface for storing and managing WebDAV locks
- MemoryLockStorage
- In-memory implementation of LockStorage
- Metrics
- Metrics collector for WebDAV server operations
- MultiStatusBuilder
- Builder for WebDAV 207 Multi-Status responses
- NoopAuthenticationProvider
- No-op authentication provider that allows all requests
- PathBasedAuthorizationProvider
- Path-based authorization provider
- PropertyOperationResult
- Result of a property operation for use in Multi-Status responses
- PropertyStorage
- Abstract interface for storing and retrieving WebDAV properties
- ResourceStatus
- Represents a single resource status in a Multi-Status response
- RoleBasedAuthorizationProvider
- Simple role-based authorization provider
- ShelfDAV
- ThrottleConfig
- Configuration for request throttling
- ThrottleMiddleware
- Request throttling middleware
Enums
- Action
- WebDAV operations that can be authorized
- LockScope
- WebDAV lock scope
- LockType
- WebDAV lock type
- PropertyStorageType
- Property storage backend type
Properties
- defaultMetrics → Metrics
-
Shared default metrics instance for backward compatibility
Use DAVConfig.metrics to provide per-instance metrics
final
Functions
-
getAuthUser(
Request request) → AuthUser? - Helper to extract authenticated user from request context
-
operationFromMethod(
String method) → Action - Determine operation type from HTTP method
-
qualifiedPropertyName(
String namespace, String name) → String - Helper function to create a qualified property name
Typedefs
Exceptions / Errors
- CopyMoveValidationException
- Thrown when COPY/MOVE validation fails
- DavValidationException
- Base class for WebDAV validation exceptions These exceptions are converted to HTTP responses by middleware
- ETagValidationException
- Thrown when ETag validation fails
- ParentValidationException
- Thrown when parent directory validation fails
- ReadOnlyException
- Thrown when server is in read-only mode
- ResourceLockedException
- Thrown when resource is locked
- UploadSizeLimitException
- Thrown when upload size exceeds limit