mirror of
https://github.com/robweber/xbmcbackup.git
synced 2024-11-15 04:45:49 +01:00
14450 lines
442 KiB
Python
14450 lines
442 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Auto-generated by Stone, do not modify.
|
|
# @generated
|
|
# flake8: noqa
|
|
# pylint: skip-file
|
|
"""
|
|
This namespace contains endpoints and data types for basic file operations.
|
|
"""
|
|
|
|
try:
|
|
from . import stone_validators as bv
|
|
from . import stone_base as bb
|
|
except (ImportError, SystemError, ValueError):
|
|
# Catch errors raised when importing a relative module when not in a package.
|
|
# This makes testing this file directly (outside of a package) easier.
|
|
import stone_validators as bv
|
|
import stone_base as bb
|
|
|
|
try:
|
|
from . import (
|
|
async_,
|
|
common,
|
|
file_properties,
|
|
users_common,
|
|
)
|
|
except (ImportError, SystemError, ValueError):
|
|
import async_
|
|
import common
|
|
import file_properties
|
|
import users_common
|
|
|
|
class GetMetadataArg(bb.Struct):
|
|
"""
|
|
:ivar files.GetMetadataArg.path: The path of a file or folder on Dropbox.
|
|
:ivar files.GetMetadataArg.include_media_info: If true,
|
|
``FileMetadata.media_info`` is set for photo and video.
|
|
:ivar files.GetMetadataArg.include_deleted: If true,
|
|
:class:`DeletedMetadata` will be returned for deleted file or folder,
|
|
otherwise ``LookupError.not_found`` will be returned.
|
|
:ivar files.GetMetadataArg.include_has_explicit_shared_members: If true, the
|
|
results will include a flag for each file indicating whether or not
|
|
that file has any explicit members.
|
|
:ivar files.GetMetadataArg.include_property_groups: If set to a valid list
|
|
of template IDs, ``FileMetadata.property_groups`` is set if there exists
|
|
property data associated with the file and each of the listed templates.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_include_media_info_value',
|
|
'_include_media_info_present',
|
|
'_include_deleted_value',
|
|
'_include_deleted_present',
|
|
'_include_has_explicit_shared_members_value',
|
|
'_include_has_explicit_shared_members_present',
|
|
'_include_property_groups_value',
|
|
'_include_property_groups_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
include_media_info=None,
|
|
include_deleted=None,
|
|
include_has_explicit_shared_members=None,
|
|
include_property_groups=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._include_media_info_value = None
|
|
self._include_media_info_present = False
|
|
self._include_deleted_value = None
|
|
self._include_deleted_present = False
|
|
self._include_has_explicit_shared_members_value = None
|
|
self._include_has_explicit_shared_members_present = False
|
|
self._include_property_groups_value = None
|
|
self._include_property_groups_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if include_media_info is not None:
|
|
self.include_media_info = include_media_info
|
|
if include_deleted is not None:
|
|
self.include_deleted = include_deleted
|
|
if include_has_explicit_shared_members is not None:
|
|
self.include_has_explicit_shared_members = include_has_explicit_shared_members
|
|
if include_property_groups is not None:
|
|
self.include_property_groups = include_property_groups
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path of a file or folder on Dropbox.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def include_media_info(self):
|
|
"""
|
|
If true, ``FileMetadata.media_info`` is set for photo and video.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_media_info_present:
|
|
return self._include_media_info_value
|
|
else:
|
|
return False
|
|
|
|
@include_media_info.setter
|
|
def include_media_info(self, val):
|
|
val = self._include_media_info_validator.validate(val)
|
|
self._include_media_info_value = val
|
|
self._include_media_info_present = True
|
|
|
|
@include_media_info.deleter
|
|
def include_media_info(self):
|
|
self._include_media_info_value = None
|
|
self._include_media_info_present = False
|
|
|
|
@property
|
|
def include_deleted(self):
|
|
"""
|
|
If true, :class:`DeletedMetadata` will be returned for deleted file or
|
|
folder, otherwise ``LookupError.not_found`` will be returned.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_deleted_present:
|
|
return self._include_deleted_value
|
|
else:
|
|
return False
|
|
|
|
@include_deleted.setter
|
|
def include_deleted(self, val):
|
|
val = self._include_deleted_validator.validate(val)
|
|
self._include_deleted_value = val
|
|
self._include_deleted_present = True
|
|
|
|
@include_deleted.deleter
|
|
def include_deleted(self):
|
|
self._include_deleted_value = None
|
|
self._include_deleted_present = False
|
|
|
|
@property
|
|
def include_has_explicit_shared_members(self):
|
|
"""
|
|
If true, the results will include a flag for each file indicating
|
|
whether or not that file has any explicit members.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_has_explicit_shared_members_present:
|
|
return self._include_has_explicit_shared_members_value
|
|
else:
|
|
return False
|
|
|
|
@include_has_explicit_shared_members.setter
|
|
def include_has_explicit_shared_members(self, val):
|
|
val = self._include_has_explicit_shared_members_validator.validate(val)
|
|
self._include_has_explicit_shared_members_value = val
|
|
self._include_has_explicit_shared_members_present = True
|
|
|
|
@include_has_explicit_shared_members.deleter
|
|
def include_has_explicit_shared_members(self):
|
|
self._include_has_explicit_shared_members_value = None
|
|
self._include_has_explicit_shared_members_present = False
|
|
|
|
@property
|
|
def include_property_groups(self):
|
|
"""
|
|
If set to a valid list of template IDs, ``FileMetadata.property_groups``
|
|
is set if there exists property data associated with the file and each
|
|
of the listed templates.
|
|
|
|
:rtype: file_properties.TemplateFilterBase
|
|
"""
|
|
if self._include_property_groups_present:
|
|
return self._include_property_groups_value
|
|
else:
|
|
return None
|
|
|
|
@include_property_groups.setter
|
|
def include_property_groups(self, val):
|
|
if val is None:
|
|
del self.include_property_groups
|
|
return
|
|
self._include_property_groups_validator.validate_type_only(val)
|
|
self._include_property_groups_value = val
|
|
self._include_property_groups_present = True
|
|
|
|
@include_property_groups.deleter
|
|
def include_property_groups(self):
|
|
self._include_property_groups_value = None
|
|
self._include_property_groups_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetMetadataArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetMetadataArg(path={!r}, include_media_info={!r}, include_deleted={!r}, include_has_explicit_shared_members={!r}, include_property_groups={!r})'.format(
|
|
self._path_value,
|
|
self._include_media_info_value,
|
|
self._include_deleted_value,
|
|
self._include_has_explicit_shared_members_value,
|
|
self._include_property_groups_value,
|
|
)
|
|
|
|
GetMetadataArg_validator = bv.Struct(GetMetadataArg)
|
|
|
|
class AlphaGetMetadataArg(GetMetadataArg):
|
|
"""
|
|
:ivar files.AlphaGetMetadataArg.include_property_templates: If set to a
|
|
valid list of template IDs, ``FileMetadata.property_groups`` is set for
|
|
files with custom properties.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_include_property_templates_value',
|
|
'_include_property_templates_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
include_media_info=None,
|
|
include_deleted=None,
|
|
include_has_explicit_shared_members=None,
|
|
include_property_groups=None,
|
|
include_property_templates=None):
|
|
super(AlphaGetMetadataArg, self).__init__(path,
|
|
include_media_info,
|
|
include_deleted,
|
|
include_has_explicit_shared_members,
|
|
include_property_groups)
|
|
self._include_property_templates_value = None
|
|
self._include_property_templates_present = False
|
|
if include_property_templates is not None:
|
|
self.include_property_templates = include_property_templates
|
|
|
|
@property
|
|
def include_property_templates(self):
|
|
"""
|
|
If set to a valid list of template IDs, ``FileMetadata.property_groups``
|
|
is set for files with custom properties.
|
|
|
|
:rtype: list of [str]
|
|
"""
|
|
if self._include_property_templates_present:
|
|
return self._include_property_templates_value
|
|
else:
|
|
return None
|
|
|
|
@include_property_templates.setter
|
|
def include_property_templates(self, val):
|
|
if val is None:
|
|
del self.include_property_templates
|
|
return
|
|
val = self._include_property_templates_validator.validate(val)
|
|
self._include_property_templates_value = val
|
|
self._include_property_templates_present = True
|
|
|
|
@include_property_templates.deleter
|
|
def include_property_templates(self):
|
|
self._include_property_templates_value = None
|
|
self._include_property_templates_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(AlphaGetMetadataArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'AlphaGetMetadataArg(path={!r}, include_media_info={!r}, include_deleted={!r}, include_has_explicit_shared_members={!r}, include_property_groups={!r}, include_property_templates={!r})'.format(
|
|
self._path_value,
|
|
self._include_media_info_value,
|
|
self._include_deleted_value,
|
|
self._include_has_explicit_shared_members_value,
|
|
self._include_property_groups_value,
|
|
self._include_property_templates_value,
|
|
)
|
|
|
|
AlphaGetMetadataArg_validator = bv.Struct(AlphaGetMetadataArg)
|
|
|
|
class GetMetadataError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: GetMetadataError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetMetadataError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetMetadataError(%r, %r)' % (self._tag, self._value)
|
|
|
|
GetMetadataError_validator = bv.Union(GetMetadataError)
|
|
|
|
class AlphaGetMetadataError(GetMetadataError):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
@classmethod
|
|
def properties_error(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``properties_error`` tag
|
|
with value ``val``.
|
|
|
|
:param file_properties.LookUpPropertiesError val:
|
|
:rtype: AlphaGetMetadataError
|
|
"""
|
|
return cls('properties_error', val)
|
|
|
|
def is_properties_error(self):
|
|
"""
|
|
Check if the union tag is ``properties_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'properties_error'
|
|
|
|
def get_properties_error(self):
|
|
"""
|
|
Only call this if :meth:`is_properties_error` is true.
|
|
|
|
:rtype: file_properties.LookUpPropertiesError
|
|
"""
|
|
if not self.is_properties_error():
|
|
raise AttributeError("tag 'properties_error' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(AlphaGetMetadataError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'AlphaGetMetadataError(%r, %r)' % (self._tag, self._value)
|
|
|
|
AlphaGetMetadataError_validator = bv.Union(AlphaGetMetadataError)
|
|
|
|
class CommitInfo(bb.Struct):
|
|
"""
|
|
:ivar files.CommitInfo.path: Path in the user's Dropbox to save the file.
|
|
:ivar files.CommitInfo.mode: Selects what to do if the file already exists.
|
|
:ivar files.CommitInfo.autorename: If there's a conflict, as determined by
|
|
``mode``, have the Dropbox server try to autorename the file to avoid
|
|
conflict.
|
|
:ivar files.CommitInfo.client_modified: The value to store as the
|
|
``client_modified`` timestamp. Dropbox automatically records the time at
|
|
which the file was written to the Dropbox servers. It can also record an
|
|
additional timestamp, provided by Dropbox desktop clients, mobile
|
|
clients, and API apps of when the file was actually created or modified.
|
|
:ivar files.CommitInfo.mute: Normally, users are made aware of any file
|
|
modifications in their Dropbox account via notifications in the client
|
|
software. If ``True``, this tells the clients that this modification
|
|
shouldn't result in a user notification.
|
|
:ivar files.CommitInfo.property_groups: List of custom properties to add to
|
|
file.
|
|
:ivar files.CommitInfo.strict_conflict: Be more strict about how each
|
|
:class:`WriteMode` detects conflict. For example, always return a
|
|
conflict error when ``mode`` = ``WriteMode.update`` and the given "rev"
|
|
doesn't match the existing file's "rev", even if the existing file has
|
|
been deleted.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_mode_value',
|
|
'_mode_present',
|
|
'_autorename_value',
|
|
'_autorename_present',
|
|
'_client_modified_value',
|
|
'_client_modified_present',
|
|
'_mute_value',
|
|
'_mute_present',
|
|
'_property_groups_value',
|
|
'_property_groups_present',
|
|
'_strict_conflict_value',
|
|
'_strict_conflict_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
mode=None,
|
|
autorename=None,
|
|
client_modified=None,
|
|
mute=None,
|
|
property_groups=None,
|
|
strict_conflict=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
self._client_modified_value = None
|
|
self._client_modified_present = False
|
|
self._mute_value = None
|
|
self._mute_present = False
|
|
self._property_groups_value = None
|
|
self._property_groups_present = False
|
|
self._strict_conflict_value = None
|
|
self._strict_conflict_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if mode is not None:
|
|
self.mode = mode
|
|
if autorename is not None:
|
|
self.autorename = autorename
|
|
if client_modified is not None:
|
|
self.client_modified = client_modified
|
|
if mute is not None:
|
|
self.mute = mute
|
|
if property_groups is not None:
|
|
self.property_groups = property_groups
|
|
if strict_conflict is not None:
|
|
self.strict_conflict = strict_conflict
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
Path in the user's Dropbox to save the file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def mode(self):
|
|
"""
|
|
Selects what to do if the file already exists.
|
|
|
|
:rtype: WriteMode
|
|
"""
|
|
if self._mode_present:
|
|
return self._mode_value
|
|
else:
|
|
return WriteMode.add
|
|
|
|
@mode.setter
|
|
def mode(self, val):
|
|
self._mode_validator.validate_type_only(val)
|
|
self._mode_value = val
|
|
self._mode_present = True
|
|
|
|
@mode.deleter
|
|
def mode(self):
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
|
|
@property
|
|
def autorename(self):
|
|
"""
|
|
If there's a conflict, as determined by ``mode``, have the Dropbox
|
|
server try to autorename the file to avoid conflict.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._autorename_present:
|
|
return self._autorename_value
|
|
else:
|
|
return False
|
|
|
|
@autorename.setter
|
|
def autorename(self, val):
|
|
val = self._autorename_validator.validate(val)
|
|
self._autorename_value = val
|
|
self._autorename_present = True
|
|
|
|
@autorename.deleter
|
|
def autorename(self):
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
|
|
@property
|
|
def client_modified(self):
|
|
"""
|
|
The value to store as the ``client_modified`` timestamp. Dropbox
|
|
automatically records the time at which the file was written to the
|
|
Dropbox servers. It can also record an additional timestamp, provided by
|
|
Dropbox desktop clients, mobile clients, and API apps of when the file
|
|
was actually created or modified.
|
|
|
|
:rtype: datetime.datetime
|
|
"""
|
|
if self._client_modified_present:
|
|
return self._client_modified_value
|
|
else:
|
|
return None
|
|
|
|
@client_modified.setter
|
|
def client_modified(self, val):
|
|
if val is None:
|
|
del self.client_modified
|
|
return
|
|
val = self._client_modified_validator.validate(val)
|
|
self._client_modified_value = val
|
|
self._client_modified_present = True
|
|
|
|
@client_modified.deleter
|
|
def client_modified(self):
|
|
self._client_modified_value = None
|
|
self._client_modified_present = False
|
|
|
|
@property
|
|
def mute(self):
|
|
"""
|
|
Normally, users are made aware of any file modifications in their
|
|
Dropbox account via notifications in the client software. If ``True``,
|
|
this tells the clients that this modification shouldn't result in a user
|
|
notification.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._mute_present:
|
|
return self._mute_value
|
|
else:
|
|
return False
|
|
|
|
@mute.setter
|
|
def mute(self, val):
|
|
val = self._mute_validator.validate(val)
|
|
self._mute_value = val
|
|
self._mute_present = True
|
|
|
|
@mute.deleter
|
|
def mute(self):
|
|
self._mute_value = None
|
|
self._mute_present = False
|
|
|
|
@property
|
|
def property_groups(self):
|
|
"""
|
|
List of custom properties to add to file.
|
|
|
|
:rtype: list of [file_properties.PropertyGroup]
|
|
"""
|
|
if self._property_groups_present:
|
|
return self._property_groups_value
|
|
else:
|
|
return None
|
|
|
|
@property_groups.setter
|
|
def property_groups(self, val):
|
|
if val is None:
|
|
del self.property_groups
|
|
return
|
|
val = self._property_groups_validator.validate(val)
|
|
self._property_groups_value = val
|
|
self._property_groups_present = True
|
|
|
|
@property_groups.deleter
|
|
def property_groups(self):
|
|
self._property_groups_value = None
|
|
self._property_groups_present = False
|
|
|
|
@property
|
|
def strict_conflict(self):
|
|
"""
|
|
Be more strict about how each :class:`WriteMode` detects conflict. For
|
|
example, always return a conflict error when ``mode`` =
|
|
``WriteMode.update`` and the given "rev" doesn't match the existing
|
|
file's "rev", even if the existing file has been deleted.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._strict_conflict_present:
|
|
return self._strict_conflict_value
|
|
else:
|
|
return False
|
|
|
|
@strict_conflict.setter
|
|
def strict_conflict(self, val):
|
|
val = self._strict_conflict_validator.validate(val)
|
|
self._strict_conflict_value = val
|
|
self._strict_conflict_present = True
|
|
|
|
@strict_conflict.deleter
|
|
def strict_conflict(self):
|
|
self._strict_conflict_value = None
|
|
self._strict_conflict_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CommitInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CommitInfo(path={!r}, mode={!r}, autorename={!r}, client_modified={!r}, mute={!r}, property_groups={!r}, strict_conflict={!r})'.format(
|
|
self._path_value,
|
|
self._mode_value,
|
|
self._autorename_value,
|
|
self._client_modified_value,
|
|
self._mute_value,
|
|
self._property_groups_value,
|
|
self._strict_conflict_value,
|
|
)
|
|
|
|
CommitInfo_validator = bv.Struct(CommitInfo)
|
|
|
|
class CommitInfoWithProperties(CommitInfo):
|
|
|
|
__slots__ = [
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
mode=None,
|
|
autorename=None,
|
|
client_modified=None,
|
|
mute=None,
|
|
property_groups=None,
|
|
strict_conflict=None):
|
|
super(CommitInfoWithProperties, self).__init__(path,
|
|
mode,
|
|
autorename,
|
|
client_modified,
|
|
mute,
|
|
property_groups,
|
|
strict_conflict)
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CommitInfoWithProperties, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CommitInfoWithProperties(path={!r}, mode={!r}, autorename={!r}, client_modified={!r}, mute={!r}, property_groups={!r}, strict_conflict={!r})'.format(
|
|
self._path_value,
|
|
self._mode_value,
|
|
self._autorename_value,
|
|
self._client_modified_value,
|
|
self._mute_value,
|
|
self._property_groups_value,
|
|
self._strict_conflict_value,
|
|
)
|
|
|
|
CommitInfoWithProperties_validator = bv.Struct(CommitInfoWithProperties)
|
|
|
|
class ContentSyncSetting(bb.Struct):
|
|
"""
|
|
:ivar files.ContentSyncSetting.id: Id of the item this setting is applied
|
|
to.
|
|
:ivar files.ContentSyncSetting.sync_setting: Setting for this item.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_id_value',
|
|
'_id_present',
|
|
'_sync_setting_value',
|
|
'_sync_setting_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
id=None,
|
|
sync_setting=None):
|
|
self._id_value = None
|
|
self._id_present = False
|
|
self._sync_setting_value = None
|
|
self._sync_setting_present = False
|
|
if id is not None:
|
|
self.id = id
|
|
if sync_setting is not None:
|
|
self.sync_setting = sync_setting
|
|
|
|
@property
|
|
def id(self):
|
|
"""
|
|
Id of the item this setting is applied to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._id_present:
|
|
return self._id_value
|
|
else:
|
|
raise AttributeError("missing required field 'id'")
|
|
|
|
@id.setter
|
|
def id(self, val):
|
|
val = self._id_validator.validate(val)
|
|
self._id_value = val
|
|
self._id_present = True
|
|
|
|
@id.deleter
|
|
def id(self):
|
|
self._id_value = None
|
|
self._id_present = False
|
|
|
|
@property
|
|
def sync_setting(self):
|
|
"""
|
|
Setting for this item.
|
|
|
|
:rtype: SyncSetting
|
|
"""
|
|
if self._sync_setting_present:
|
|
return self._sync_setting_value
|
|
else:
|
|
raise AttributeError("missing required field 'sync_setting'")
|
|
|
|
@sync_setting.setter
|
|
def sync_setting(self, val):
|
|
self._sync_setting_validator.validate_type_only(val)
|
|
self._sync_setting_value = val
|
|
self._sync_setting_present = True
|
|
|
|
@sync_setting.deleter
|
|
def sync_setting(self):
|
|
self._sync_setting_value = None
|
|
self._sync_setting_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ContentSyncSetting, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ContentSyncSetting(id={!r}, sync_setting={!r})'.format(
|
|
self._id_value,
|
|
self._sync_setting_value,
|
|
)
|
|
|
|
ContentSyncSetting_validator = bv.Struct(ContentSyncSetting)
|
|
|
|
class ContentSyncSettingArg(bb.Struct):
|
|
"""
|
|
:ivar files.ContentSyncSettingArg.id: Id of the item this setting is applied
|
|
to.
|
|
:ivar files.ContentSyncSettingArg.sync_setting: Setting for this item.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_id_value',
|
|
'_id_present',
|
|
'_sync_setting_value',
|
|
'_sync_setting_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
id=None,
|
|
sync_setting=None):
|
|
self._id_value = None
|
|
self._id_present = False
|
|
self._sync_setting_value = None
|
|
self._sync_setting_present = False
|
|
if id is not None:
|
|
self.id = id
|
|
if sync_setting is not None:
|
|
self.sync_setting = sync_setting
|
|
|
|
@property
|
|
def id(self):
|
|
"""
|
|
Id of the item this setting is applied to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._id_present:
|
|
return self._id_value
|
|
else:
|
|
raise AttributeError("missing required field 'id'")
|
|
|
|
@id.setter
|
|
def id(self, val):
|
|
val = self._id_validator.validate(val)
|
|
self._id_value = val
|
|
self._id_present = True
|
|
|
|
@id.deleter
|
|
def id(self):
|
|
self._id_value = None
|
|
self._id_present = False
|
|
|
|
@property
|
|
def sync_setting(self):
|
|
"""
|
|
Setting for this item.
|
|
|
|
:rtype: SyncSettingArg
|
|
"""
|
|
if self._sync_setting_present:
|
|
return self._sync_setting_value
|
|
else:
|
|
raise AttributeError("missing required field 'sync_setting'")
|
|
|
|
@sync_setting.setter
|
|
def sync_setting(self, val):
|
|
self._sync_setting_validator.validate_type_only(val)
|
|
self._sync_setting_value = val
|
|
self._sync_setting_present = True
|
|
|
|
@sync_setting.deleter
|
|
def sync_setting(self):
|
|
self._sync_setting_value = None
|
|
self._sync_setting_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ContentSyncSettingArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ContentSyncSettingArg(id={!r}, sync_setting={!r})'.format(
|
|
self._id_value,
|
|
self._sync_setting_value,
|
|
)
|
|
|
|
ContentSyncSettingArg_validator = bv.Struct(ContentSyncSettingArg)
|
|
|
|
class CreateFolderArg(bb.Struct):
|
|
"""
|
|
:ivar files.CreateFolderArg.path: Path in the user's Dropbox to create.
|
|
:ivar files.CreateFolderArg.autorename: If there's a conflict, have the
|
|
Dropbox server try to autorename the folder to avoid the conflict.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_autorename_value',
|
|
'_autorename_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
autorename=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if autorename is not None:
|
|
self.autorename = autorename
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
Path in the user's Dropbox to create.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def autorename(self):
|
|
"""
|
|
If there's a conflict, have the Dropbox server try to autorename the
|
|
folder to avoid the conflict.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._autorename_present:
|
|
return self._autorename_value
|
|
else:
|
|
return False
|
|
|
|
@autorename.setter
|
|
def autorename(self, val):
|
|
val = self._autorename_validator.validate(val)
|
|
self._autorename_value = val
|
|
self._autorename_present = True
|
|
|
|
@autorename.deleter
|
|
def autorename(self):
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderArg(path={!r}, autorename={!r})'.format(
|
|
self._path_value,
|
|
self._autorename_value,
|
|
)
|
|
|
|
CreateFolderArg_validator = bv.Struct(CreateFolderArg)
|
|
|
|
class CreateFolderBatchArg(bb.Struct):
|
|
"""
|
|
:ivar files.CreateFolderBatchArg.paths: List of paths to be created in the
|
|
user's Dropbox. Duplicate path arguments in the batch are considered
|
|
only once.
|
|
:ivar files.CreateFolderBatchArg.autorename: If there's a conflict, have the
|
|
Dropbox server try to autorename the folder to avoid the conflict.
|
|
:ivar files.CreateFolderBatchArg.force_async: Whether to force the create to
|
|
happen asynchronously.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_paths_value',
|
|
'_paths_present',
|
|
'_autorename_value',
|
|
'_autorename_present',
|
|
'_force_async_value',
|
|
'_force_async_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
paths=None,
|
|
autorename=None,
|
|
force_async=None):
|
|
self._paths_value = None
|
|
self._paths_present = False
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
self._force_async_value = None
|
|
self._force_async_present = False
|
|
if paths is not None:
|
|
self.paths = paths
|
|
if autorename is not None:
|
|
self.autorename = autorename
|
|
if force_async is not None:
|
|
self.force_async = force_async
|
|
|
|
@property
|
|
def paths(self):
|
|
"""
|
|
List of paths to be created in the user's Dropbox. Duplicate path
|
|
arguments in the batch are considered only once.
|
|
|
|
:rtype: list of [str]
|
|
"""
|
|
if self._paths_present:
|
|
return self._paths_value
|
|
else:
|
|
raise AttributeError("missing required field 'paths'")
|
|
|
|
@paths.setter
|
|
def paths(self, val):
|
|
val = self._paths_validator.validate(val)
|
|
self._paths_value = val
|
|
self._paths_present = True
|
|
|
|
@paths.deleter
|
|
def paths(self):
|
|
self._paths_value = None
|
|
self._paths_present = False
|
|
|
|
@property
|
|
def autorename(self):
|
|
"""
|
|
If there's a conflict, have the Dropbox server try to autorename the
|
|
folder to avoid the conflict.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._autorename_present:
|
|
return self._autorename_value
|
|
else:
|
|
return False
|
|
|
|
@autorename.setter
|
|
def autorename(self, val):
|
|
val = self._autorename_validator.validate(val)
|
|
self._autorename_value = val
|
|
self._autorename_present = True
|
|
|
|
@autorename.deleter
|
|
def autorename(self):
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
|
|
@property
|
|
def force_async(self):
|
|
"""
|
|
Whether to force the create to happen asynchronously.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._force_async_present:
|
|
return self._force_async_value
|
|
else:
|
|
return False
|
|
|
|
@force_async.setter
|
|
def force_async(self, val):
|
|
val = self._force_async_validator.validate(val)
|
|
self._force_async_value = val
|
|
self._force_async_present = True
|
|
|
|
@force_async.deleter
|
|
def force_async(self):
|
|
self._force_async_value = None
|
|
self._force_async_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderBatchArg(paths={!r}, autorename={!r}, force_async={!r})'.format(
|
|
self._paths_value,
|
|
self._autorename_value,
|
|
self._force_async_value,
|
|
)
|
|
|
|
CreateFolderBatchArg_validator = bv.Struct(CreateFolderBatchArg)
|
|
|
|
class CreateFolderBatchError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.CreateFolderBatchError.too_many_files: The operation would
|
|
involve too many files or folders.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
too_many_files = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_too_many_files(self):
|
|
"""
|
|
Check if the union tag is ``too_many_files``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_files'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderBatchError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderBatchError(%r, %r)' % (self._tag, self._value)
|
|
|
|
CreateFolderBatchError_validator = bv.Union(CreateFolderBatchError)
|
|
|
|
class CreateFolderBatchJobStatus(async_.PollResultBase):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar CreateFolderBatchResult CreateFolderBatchJobStatus.complete: The batch
|
|
create folder has finished.
|
|
:ivar CreateFolderBatchError CreateFolderBatchJobStatus.failed: The batch
|
|
create folder has failed.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param CreateFolderBatchResult val:
|
|
:rtype: CreateFolderBatchJobStatus
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
@classmethod
|
|
def failed(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failed`` tag with value
|
|
``val``.
|
|
|
|
:param CreateFolderBatchError val:
|
|
:rtype: CreateFolderBatchJobStatus
|
|
"""
|
|
return cls('failed', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_failed(self):
|
|
"""
|
|
Check if the union tag is ``failed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failed'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
The batch create folder has finished.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: CreateFolderBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def get_failed(self):
|
|
"""
|
|
The batch create folder has failed.
|
|
|
|
Only call this if :meth:`is_failed` is true.
|
|
|
|
:rtype: CreateFolderBatchError
|
|
"""
|
|
if not self.is_failed():
|
|
raise AttributeError("tag 'failed' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderBatchJobStatus(%r, %r)' % (self._tag, self._value)
|
|
|
|
CreateFolderBatchJobStatus_validator = bv.Union(CreateFolderBatchJobStatus)
|
|
|
|
class CreateFolderBatchLaunch(async_.LaunchResultBase):
|
|
"""
|
|
Result returned by :meth:`dropbox.dropbox.Dropbox.files_create_folder_batch`
|
|
that may either launch an asynchronous job or complete synchronously.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param CreateFolderBatchResult val:
|
|
:rtype: CreateFolderBatchLaunch
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: CreateFolderBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderBatchLaunch(%r, %r)' % (self._tag, self._value)
|
|
|
|
CreateFolderBatchLaunch_validator = bv.Union(CreateFolderBatchLaunch)
|
|
|
|
class FileOpsResult(bb.Struct):
|
|
|
|
__slots__ = [
|
|
]
|
|
|
|
_has_required_fields = False
|
|
|
|
def __init__(self):
|
|
pass
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(FileOpsResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'FileOpsResult()'
|
|
|
|
FileOpsResult_validator = bv.Struct(FileOpsResult)
|
|
|
|
class CreateFolderBatchResult(FileOpsResult):
|
|
"""
|
|
:ivar files.CreateFolderBatchResult.entries: Each entry in
|
|
``CreateFolderBatchArg.paths`` will appear at the same position inside
|
|
``CreateFolderBatchResult.entries``.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
super(CreateFolderBatchResult, self).__init__()
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
Each entry in ``CreateFolderBatchArg.paths`` will appear at the same
|
|
position inside ``CreateFolderBatchResult.entries``.
|
|
|
|
:rtype: list of [CreateFolderBatchResultEntry]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderBatchResult(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
CreateFolderBatchResult_validator = bv.Struct(CreateFolderBatchResult)
|
|
|
|
class CreateFolderBatchResultEntry(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = None
|
|
|
|
@classmethod
|
|
def success(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``success`` tag with value
|
|
``val``.
|
|
|
|
:param CreateFolderEntryResult val:
|
|
:rtype: CreateFolderBatchResultEntry
|
|
"""
|
|
return cls('success', val)
|
|
|
|
@classmethod
|
|
def failure(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failure`` tag with value
|
|
``val``.
|
|
|
|
:param CreateFolderEntryError val:
|
|
:rtype: CreateFolderBatchResultEntry
|
|
"""
|
|
return cls('failure', val)
|
|
|
|
def is_success(self):
|
|
"""
|
|
Check if the union tag is ``success``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'success'
|
|
|
|
def is_failure(self):
|
|
"""
|
|
Check if the union tag is ``failure``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failure'
|
|
|
|
def get_success(self):
|
|
"""
|
|
Only call this if :meth:`is_success` is true.
|
|
|
|
:rtype: CreateFolderEntryResult
|
|
"""
|
|
if not self.is_success():
|
|
raise AttributeError("tag 'success' not set")
|
|
return self._value
|
|
|
|
def get_failure(self):
|
|
"""
|
|
Only call this if :meth:`is_failure` is true.
|
|
|
|
:rtype: CreateFolderEntryError
|
|
"""
|
|
if not self.is_failure():
|
|
raise AttributeError("tag 'failure' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderBatchResultEntry(%r, %r)' % (self._tag, self._value)
|
|
|
|
CreateFolderBatchResultEntry_validator = bv.Union(CreateFolderBatchResultEntry)
|
|
|
|
class CreateFolderEntryError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: CreateFolderEntryError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderEntryError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderEntryError(%r, %r)' % (self._tag, self._value)
|
|
|
|
CreateFolderEntryError_validator = bv.Union(CreateFolderEntryError)
|
|
|
|
class CreateFolderEntryResult(bb.Struct):
|
|
"""
|
|
:ivar files.CreateFolderEntryResult.metadata: Metadata of the created
|
|
folder.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the created folder.
|
|
|
|
:rtype: FolderMetadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderEntryResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderEntryResult(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
CreateFolderEntryResult_validator = bv.Struct(CreateFolderEntryResult)
|
|
|
|
class CreateFolderError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: CreateFolderError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderError(%r, %r)' % (self._tag, self._value)
|
|
|
|
CreateFolderError_validator = bv.Union(CreateFolderError)
|
|
|
|
class CreateFolderResult(FileOpsResult):
|
|
"""
|
|
:ivar files.CreateFolderResult.metadata: Metadata of the created folder.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
super(CreateFolderResult, self).__init__()
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the created folder.
|
|
|
|
:rtype: FolderMetadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(CreateFolderResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'CreateFolderResult(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
CreateFolderResult_validator = bv.Struct(CreateFolderResult)
|
|
|
|
class DeleteArg(bb.Struct):
|
|
"""
|
|
:ivar files.DeleteArg.path: Path in the user's Dropbox to delete.
|
|
:ivar files.DeleteArg.parent_rev: Perform delete if given "rev" matches the
|
|
existing file's latest "rev". This field does not support deleting a
|
|
folder.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_parent_rev_value',
|
|
'_parent_rev_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
parent_rev=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._parent_rev_value = None
|
|
self._parent_rev_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if parent_rev is not None:
|
|
self.parent_rev = parent_rev
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
Path in the user's Dropbox to delete.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def parent_rev(self):
|
|
"""
|
|
Perform delete if given "rev" matches the existing file's latest "rev".
|
|
This field does not support deleting a folder.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._parent_rev_present:
|
|
return self._parent_rev_value
|
|
else:
|
|
return None
|
|
|
|
@parent_rev.setter
|
|
def parent_rev(self, val):
|
|
if val is None:
|
|
del self.parent_rev
|
|
return
|
|
val = self._parent_rev_validator.validate(val)
|
|
self._parent_rev_value = val
|
|
self._parent_rev_present = True
|
|
|
|
@parent_rev.deleter
|
|
def parent_rev(self):
|
|
self._parent_rev_value = None
|
|
self._parent_rev_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteArg(path={!r}, parent_rev={!r})'.format(
|
|
self._path_value,
|
|
self._parent_rev_value,
|
|
)
|
|
|
|
DeleteArg_validator = bv.Struct(DeleteArg)
|
|
|
|
class DeleteBatchArg(bb.Struct):
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
:rtype: list of [DeleteArg]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchArg(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
DeleteBatchArg_validator = bv.Struct(DeleteBatchArg)
|
|
|
|
class DeleteBatchError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.DeleteBatchError.too_many_write_operations: Use
|
|
``DeleteError.too_many_write_operations``.
|
|
:meth:`dropbox.dropbox.Dropbox.files_delete_batch` now provides smaller
|
|
granularity about which entry has failed because of this.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
too_many_write_operations = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_too_many_write_operations(self):
|
|
"""
|
|
Check if the union tag is ``too_many_write_operations``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_write_operations'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchError(%r, %r)' % (self._tag, self._value)
|
|
|
|
DeleteBatchError_validator = bv.Union(DeleteBatchError)
|
|
|
|
class DeleteBatchJobStatus(async_.PollResultBase):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar DeleteBatchResult DeleteBatchJobStatus.complete: The batch delete has
|
|
finished.
|
|
:ivar DeleteBatchError DeleteBatchJobStatus.failed: The batch delete has
|
|
failed.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param DeleteBatchResult val:
|
|
:rtype: DeleteBatchJobStatus
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
@classmethod
|
|
def failed(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failed`` tag with value
|
|
``val``.
|
|
|
|
:param DeleteBatchError val:
|
|
:rtype: DeleteBatchJobStatus
|
|
"""
|
|
return cls('failed', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_failed(self):
|
|
"""
|
|
Check if the union tag is ``failed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failed'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
The batch delete has finished.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: DeleteBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def get_failed(self):
|
|
"""
|
|
The batch delete has failed.
|
|
|
|
Only call this if :meth:`is_failed` is true.
|
|
|
|
:rtype: DeleteBatchError
|
|
"""
|
|
if not self.is_failed():
|
|
raise AttributeError("tag 'failed' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchJobStatus(%r, %r)' % (self._tag, self._value)
|
|
|
|
DeleteBatchJobStatus_validator = bv.Union(DeleteBatchJobStatus)
|
|
|
|
class DeleteBatchLaunch(async_.LaunchResultBase):
|
|
"""
|
|
Result returned by :meth:`dropbox.dropbox.Dropbox.files_delete_batch` that
|
|
may either launch an asynchronous job or complete synchronously.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param DeleteBatchResult val:
|
|
:rtype: DeleteBatchLaunch
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: DeleteBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchLaunch(%r, %r)' % (self._tag, self._value)
|
|
|
|
DeleteBatchLaunch_validator = bv.Union(DeleteBatchLaunch)
|
|
|
|
class DeleteBatchResult(FileOpsResult):
|
|
"""
|
|
:ivar files.DeleteBatchResult.entries: Each entry in
|
|
``DeleteBatchArg.entries`` will appear at the same position inside
|
|
``DeleteBatchResult.entries``.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
super(DeleteBatchResult, self).__init__()
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
Each entry in ``DeleteBatchArg.entries`` will appear at the same
|
|
position inside ``DeleteBatchResult.entries``.
|
|
|
|
:rtype: list of [DeleteBatchResultEntry]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchResult(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
DeleteBatchResult_validator = bv.Struct(DeleteBatchResult)
|
|
|
|
class DeleteBatchResultData(bb.Struct):
|
|
"""
|
|
:ivar files.DeleteBatchResultData.metadata: Metadata of the deleted object.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the deleted object.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchResultData, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchResultData(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
DeleteBatchResultData_validator = bv.Struct(DeleteBatchResultData)
|
|
|
|
class DeleteBatchResultEntry(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = None
|
|
|
|
@classmethod
|
|
def success(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``success`` tag with value
|
|
``val``.
|
|
|
|
:param DeleteBatchResultData val:
|
|
:rtype: DeleteBatchResultEntry
|
|
"""
|
|
return cls('success', val)
|
|
|
|
@classmethod
|
|
def failure(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failure`` tag with value
|
|
``val``.
|
|
|
|
:param DeleteError val:
|
|
:rtype: DeleteBatchResultEntry
|
|
"""
|
|
return cls('failure', val)
|
|
|
|
def is_success(self):
|
|
"""
|
|
Check if the union tag is ``success``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'success'
|
|
|
|
def is_failure(self):
|
|
"""
|
|
Check if the union tag is ``failure``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failure'
|
|
|
|
def get_success(self):
|
|
"""
|
|
Only call this if :meth:`is_success` is true.
|
|
|
|
:rtype: DeleteBatchResultData
|
|
"""
|
|
if not self.is_success():
|
|
raise AttributeError("tag 'success' not set")
|
|
return self._value
|
|
|
|
def get_failure(self):
|
|
"""
|
|
Only call this if :meth:`is_failure` is true.
|
|
|
|
:rtype: DeleteError
|
|
"""
|
|
if not self.is_failure():
|
|
raise AttributeError("tag 'failure' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteBatchResultEntry(%r, %r)' % (self._tag, self._value)
|
|
|
|
DeleteBatchResultEntry_validator = bv.Union(DeleteBatchResultEntry)
|
|
|
|
class DeleteError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.DeleteError.too_many_write_operations: There are too many write
|
|
operations in user's Dropbox. Please retry this request.
|
|
:ivar files.DeleteError.too_many_files: There are too many files in one
|
|
request. Please retry with fewer files.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
too_many_write_operations = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_files = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path_lookup(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path_lookup`` tag with
|
|
value ``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: DeleteError
|
|
"""
|
|
return cls('path_lookup', val)
|
|
|
|
@classmethod
|
|
def path_write(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path_write`` tag with
|
|
value ``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: DeleteError
|
|
"""
|
|
return cls('path_write', val)
|
|
|
|
def is_path_lookup(self):
|
|
"""
|
|
Check if the union tag is ``path_lookup``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path_lookup'
|
|
|
|
def is_path_write(self):
|
|
"""
|
|
Check if the union tag is ``path_write``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path_write'
|
|
|
|
def is_too_many_write_operations(self):
|
|
"""
|
|
Check if the union tag is ``too_many_write_operations``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_write_operations'
|
|
|
|
def is_too_many_files(self):
|
|
"""
|
|
Check if the union tag is ``too_many_files``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_files'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path_lookup(self):
|
|
"""
|
|
Only call this if :meth:`is_path_lookup` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path_lookup():
|
|
raise AttributeError("tag 'path_lookup' not set")
|
|
return self._value
|
|
|
|
def get_path_write(self):
|
|
"""
|
|
Only call this if :meth:`is_path_write` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path_write():
|
|
raise AttributeError("tag 'path_write' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteError(%r, %r)' % (self._tag, self._value)
|
|
|
|
DeleteError_validator = bv.Union(DeleteError)
|
|
|
|
class DeleteResult(FileOpsResult):
|
|
"""
|
|
:ivar files.DeleteResult.metadata: Metadata of the deleted object.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
super(DeleteResult, self).__init__()
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the deleted object.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeleteResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeleteResult(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
DeleteResult_validator = bv.Struct(DeleteResult)
|
|
|
|
class Metadata(bb.Struct):
|
|
"""
|
|
Metadata for a file or folder.
|
|
|
|
:ivar files.Metadata.name: The last component of the path (including
|
|
extension). This never contains a slash.
|
|
:ivar files.Metadata.path_lower: The lowercased full path in the user's
|
|
Dropbox. This always starts with a slash. This field will be null if the
|
|
file or folder is not mounted.
|
|
:ivar files.Metadata.path_display: The cased path to be used for display
|
|
purposes only. In rare instances the casing will not correctly match the
|
|
user's filesystem, but this behavior will match the path provided in the
|
|
Core API v1, and at least the last path component will have the correct
|
|
casing. Changes to only the casing of paths won't be returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`. This field
|
|
will be null if the file or folder is not mounted.
|
|
:ivar files.Metadata.parent_shared_folder_id: Please use
|
|
``FileSharingInfo.parent_shared_folder_id`` or
|
|
``FolderSharingInfo.parent_shared_folder_id`` instead.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_name_value',
|
|
'_name_present',
|
|
'_path_lower_value',
|
|
'_path_lower_present',
|
|
'_path_display_value',
|
|
'_path_display_present',
|
|
'_parent_shared_folder_id_value',
|
|
'_parent_shared_folder_id_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
name=None,
|
|
path_lower=None,
|
|
path_display=None,
|
|
parent_shared_folder_id=None):
|
|
self._name_value = None
|
|
self._name_present = False
|
|
self._path_lower_value = None
|
|
self._path_lower_present = False
|
|
self._path_display_value = None
|
|
self._path_display_present = False
|
|
self._parent_shared_folder_id_value = None
|
|
self._parent_shared_folder_id_present = False
|
|
if name is not None:
|
|
self.name = name
|
|
if path_lower is not None:
|
|
self.path_lower = path_lower
|
|
if path_display is not None:
|
|
self.path_display = path_display
|
|
if parent_shared_folder_id is not None:
|
|
self.parent_shared_folder_id = parent_shared_folder_id
|
|
|
|
@property
|
|
def name(self):
|
|
"""
|
|
The last component of the path (including extension). This never
|
|
contains a slash.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._name_present:
|
|
return self._name_value
|
|
else:
|
|
raise AttributeError("missing required field 'name'")
|
|
|
|
@name.setter
|
|
def name(self, val):
|
|
val = self._name_validator.validate(val)
|
|
self._name_value = val
|
|
self._name_present = True
|
|
|
|
@name.deleter
|
|
def name(self):
|
|
self._name_value = None
|
|
self._name_present = False
|
|
|
|
@property
|
|
def path_lower(self):
|
|
"""
|
|
The lowercased full path in the user's Dropbox. This always starts with
|
|
a slash. This field will be null if the file or folder is not mounted.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_lower_present:
|
|
return self._path_lower_value
|
|
else:
|
|
return None
|
|
|
|
@path_lower.setter
|
|
def path_lower(self, val):
|
|
if val is None:
|
|
del self.path_lower
|
|
return
|
|
val = self._path_lower_validator.validate(val)
|
|
self._path_lower_value = val
|
|
self._path_lower_present = True
|
|
|
|
@path_lower.deleter
|
|
def path_lower(self):
|
|
self._path_lower_value = None
|
|
self._path_lower_present = False
|
|
|
|
@property
|
|
def path_display(self):
|
|
"""
|
|
The cased path to be used for display purposes only. In rare instances
|
|
the casing will not correctly match the user's filesystem, but this
|
|
behavior will match the path provided in the Core API v1, and at least
|
|
the last path component will have the correct casing. Changes to only
|
|
the casing of paths won't be returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`. This field
|
|
will be null if the file or folder is not mounted.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_display_present:
|
|
return self._path_display_value
|
|
else:
|
|
return None
|
|
|
|
@path_display.setter
|
|
def path_display(self, val):
|
|
if val is None:
|
|
del self.path_display
|
|
return
|
|
val = self._path_display_validator.validate(val)
|
|
self._path_display_value = val
|
|
self._path_display_present = True
|
|
|
|
@path_display.deleter
|
|
def path_display(self):
|
|
self._path_display_value = None
|
|
self._path_display_present = False
|
|
|
|
@property
|
|
def parent_shared_folder_id(self):
|
|
"""
|
|
Please use ``FileSharingInfo.parent_shared_folder_id`` or
|
|
``FolderSharingInfo.parent_shared_folder_id`` instead.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._parent_shared_folder_id_present:
|
|
return self._parent_shared_folder_id_value
|
|
else:
|
|
return None
|
|
|
|
@parent_shared_folder_id.setter
|
|
def parent_shared_folder_id(self, val):
|
|
if val is None:
|
|
del self.parent_shared_folder_id
|
|
return
|
|
val = self._parent_shared_folder_id_validator.validate(val)
|
|
self._parent_shared_folder_id_value = val
|
|
self._parent_shared_folder_id_present = True
|
|
|
|
@parent_shared_folder_id.deleter
|
|
def parent_shared_folder_id(self):
|
|
self._parent_shared_folder_id_value = None
|
|
self._parent_shared_folder_id_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(Metadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'Metadata(name={!r}, path_lower={!r}, path_display={!r}, parent_shared_folder_id={!r})'.format(
|
|
self._name_value,
|
|
self._path_lower_value,
|
|
self._path_display_value,
|
|
self._parent_shared_folder_id_value,
|
|
)
|
|
|
|
Metadata_validator = bv.StructTree(Metadata)
|
|
|
|
class DeletedMetadata(Metadata):
|
|
"""
|
|
Indicates that there used to be a file or folder at this path, but it no
|
|
longer exists.
|
|
"""
|
|
|
|
__slots__ = [
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
name=None,
|
|
path_lower=None,
|
|
path_display=None,
|
|
parent_shared_folder_id=None):
|
|
super(DeletedMetadata, self).__init__(name,
|
|
path_lower,
|
|
path_display,
|
|
parent_shared_folder_id)
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DeletedMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DeletedMetadata(name={!r}, path_lower={!r}, path_display={!r}, parent_shared_folder_id={!r})'.format(
|
|
self._name_value,
|
|
self._path_lower_value,
|
|
self._path_display_value,
|
|
self._parent_shared_folder_id_value,
|
|
)
|
|
|
|
DeletedMetadata_validator = bv.Struct(DeletedMetadata)
|
|
|
|
class Dimensions(bb.Struct):
|
|
"""
|
|
Dimensions for a photo or video.
|
|
|
|
:ivar files.Dimensions.height: Height of the photo/video.
|
|
:ivar files.Dimensions.width: Width of the photo/video.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_height_value',
|
|
'_height_present',
|
|
'_width_value',
|
|
'_width_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
height=None,
|
|
width=None):
|
|
self._height_value = None
|
|
self._height_present = False
|
|
self._width_value = None
|
|
self._width_present = False
|
|
if height is not None:
|
|
self.height = height
|
|
if width is not None:
|
|
self.width = width
|
|
|
|
@property
|
|
def height(self):
|
|
"""
|
|
Height of the photo/video.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._height_present:
|
|
return self._height_value
|
|
else:
|
|
raise AttributeError("missing required field 'height'")
|
|
|
|
@height.setter
|
|
def height(self, val):
|
|
val = self._height_validator.validate(val)
|
|
self._height_value = val
|
|
self._height_present = True
|
|
|
|
@height.deleter
|
|
def height(self):
|
|
self._height_value = None
|
|
self._height_present = False
|
|
|
|
@property
|
|
def width(self):
|
|
"""
|
|
Width of the photo/video.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._width_present:
|
|
return self._width_value
|
|
else:
|
|
raise AttributeError("missing required field 'width'")
|
|
|
|
@width.setter
|
|
def width(self, val):
|
|
val = self._width_validator.validate(val)
|
|
self._width_value = val
|
|
self._width_present = True
|
|
|
|
@width.deleter
|
|
def width(self):
|
|
self._width_value = None
|
|
self._width_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(Dimensions, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'Dimensions(height={!r}, width={!r})'.format(
|
|
self._height_value,
|
|
self._width_value,
|
|
)
|
|
|
|
Dimensions_validator = bv.Struct(Dimensions)
|
|
|
|
class DownloadArg(bb.Struct):
|
|
"""
|
|
:ivar files.DownloadArg.path: The path of the file to download.
|
|
:ivar files.DownloadArg.rev: Please specify revision in ``path`` instead.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_rev_value',
|
|
'_rev_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
rev=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if rev is not None:
|
|
self.rev = rev
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path of the file to download.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def rev(self):
|
|
"""
|
|
Please specify revision in ``path`` instead.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._rev_present:
|
|
return self._rev_value
|
|
else:
|
|
return None
|
|
|
|
@rev.setter
|
|
def rev(self, val):
|
|
if val is None:
|
|
del self.rev
|
|
return
|
|
val = self._rev_validator.validate(val)
|
|
self._rev_value = val
|
|
self._rev_present = True
|
|
|
|
@rev.deleter
|
|
def rev(self):
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DownloadArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DownloadArg(path={!r}, rev={!r})'.format(
|
|
self._path_value,
|
|
self._rev_value,
|
|
)
|
|
|
|
DownloadArg_validator = bv.Struct(DownloadArg)
|
|
|
|
class DownloadError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.DownloadError.unsupported_file: This file type cannot be
|
|
downloaded directly; use :meth:`dropbox.dropbox.Dropbox.files_export`
|
|
instead.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_file = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: DownloadError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_unsupported_file(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_file``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_file'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DownloadError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DownloadError(%r, %r)' % (self._tag, self._value)
|
|
|
|
DownloadError_validator = bv.Union(DownloadError)
|
|
|
|
class DownloadZipArg(bb.Struct):
|
|
"""
|
|
:ivar files.DownloadZipArg.path: The path of the folder to download.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path of the folder to download.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DownloadZipArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DownloadZipArg(path={!r})'.format(
|
|
self._path_value,
|
|
)
|
|
|
|
DownloadZipArg_validator = bv.Struct(DownloadZipArg)
|
|
|
|
class DownloadZipError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.DownloadZipError.too_large: The folder or a file is too large to
|
|
download.
|
|
:ivar files.DownloadZipError.too_many_files: The folder has too many files
|
|
to download.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
too_large = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_files = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: DownloadZipError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_too_large(self):
|
|
"""
|
|
Check if the union tag is ``too_large``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_large'
|
|
|
|
def is_too_many_files(self):
|
|
"""
|
|
Check if the union tag is ``too_many_files``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_files'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DownloadZipError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DownloadZipError(%r, %r)' % (self._tag, self._value)
|
|
|
|
DownloadZipError_validator = bv.Union(DownloadZipError)
|
|
|
|
class DownloadZipResult(bb.Struct):
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
:rtype: FolderMetadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(DownloadZipResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'DownloadZipResult(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
DownloadZipResult_validator = bv.Struct(DownloadZipResult)
|
|
|
|
class ExportArg(bb.Struct):
|
|
"""
|
|
:ivar files.ExportArg.path: The path of the file to be exported.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path of the file to be exported.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ExportArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ExportArg(path={!r})'.format(
|
|
self._path_value,
|
|
)
|
|
|
|
ExportArg_validator = bv.Struct(ExportArg)
|
|
|
|
class ExportError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.ExportError.non_exportable: This file type cannot be exported.
|
|
Use :meth:`dropbox.dropbox.Dropbox.files_download` instead.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
non_exportable = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: ExportError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_non_exportable(self):
|
|
"""
|
|
Check if the union tag is ``non_exportable``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'non_exportable'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ExportError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ExportError(%r, %r)' % (self._tag, self._value)
|
|
|
|
ExportError_validator = bv.Union(ExportError)
|
|
|
|
class ExportInfo(bb.Struct):
|
|
"""
|
|
Export information for a file.
|
|
|
|
:ivar files.ExportInfo.export_as: Format to which the file can be exported
|
|
to.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_export_as_value',
|
|
'_export_as_present',
|
|
]
|
|
|
|
_has_required_fields = False
|
|
|
|
def __init__(self,
|
|
export_as=None):
|
|
self._export_as_value = None
|
|
self._export_as_present = False
|
|
if export_as is not None:
|
|
self.export_as = export_as
|
|
|
|
@property
|
|
def export_as(self):
|
|
"""
|
|
Format to which the file can be exported to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._export_as_present:
|
|
return self._export_as_value
|
|
else:
|
|
return None
|
|
|
|
@export_as.setter
|
|
def export_as(self, val):
|
|
if val is None:
|
|
del self.export_as
|
|
return
|
|
val = self._export_as_validator.validate(val)
|
|
self._export_as_value = val
|
|
self._export_as_present = True
|
|
|
|
@export_as.deleter
|
|
def export_as(self):
|
|
self._export_as_value = None
|
|
self._export_as_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ExportInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ExportInfo(export_as={!r})'.format(
|
|
self._export_as_value,
|
|
)
|
|
|
|
ExportInfo_validator = bv.Struct(ExportInfo)
|
|
|
|
class ExportMetadata(bb.Struct):
|
|
"""
|
|
:ivar files.ExportMetadata.name: The last component of the path (including
|
|
extension). This never contains a slash.
|
|
:ivar files.ExportMetadata.size: The file size in bytes.
|
|
:ivar files.ExportMetadata.export_hash: A hash based on the exported file
|
|
content. This field can be used to verify data integrity. Similar to
|
|
content hash. For more information see our `Content hash
|
|
<https://www.dropbox.com/developers/reference/content-hash>`_ page.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_name_value',
|
|
'_name_present',
|
|
'_size_value',
|
|
'_size_present',
|
|
'_export_hash_value',
|
|
'_export_hash_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
name=None,
|
|
size=None,
|
|
export_hash=None):
|
|
self._name_value = None
|
|
self._name_present = False
|
|
self._size_value = None
|
|
self._size_present = False
|
|
self._export_hash_value = None
|
|
self._export_hash_present = False
|
|
if name is not None:
|
|
self.name = name
|
|
if size is not None:
|
|
self.size = size
|
|
if export_hash is not None:
|
|
self.export_hash = export_hash
|
|
|
|
@property
|
|
def name(self):
|
|
"""
|
|
The last component of the path (including extension). This never
|
|
contains a slash.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._name_present:
|
|
return self._name_value
|
|
else:
|
|
raise AttributeError("missing required field 'name'")
|
|
|
|
@name.setter
|
|
def name(self, val):
|
|
val = self._name_validator.validate(val)
|
|
self._name_value = val
|
|
self._name_present = True
|
|
|
|
@name.deleter
|
|
def name(self):
|
|
self._name_value = None
|
|
self._name_present = False
|
|
|
|
@property
|
|
def size(self):
|
|
"""
|
|
The file size in bytes.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._size_present:
|
|
return self._size_value
|
|
else:
|
|
raise AttributeError("missing required field 'size'")
|
|
|
|
@size.setter
|
|
def size(self, val):
|
|
val = self._size_validator.validate(val)
|
|
self._size_value = val
|
|
self._size_present = True
|
|
|
|
@size.deleter
|
|
def size(self):
|
|
self._size_value = None
|
|
self._size_present = False
|
|
|
|
@property
|
|
def export_hash(self):
|
|
"""
|
|
A hash based on the exported file content. This field can be used to
|
|
verify data integrity. Similar to content hash. For more information see
|
|
our `Content hash
|
|
<https://www.dropbox.com/developers/reference/content-hash>`_ page.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._export_hash_present:
|
|
return self._export_hash_value
|
|
else:
|
|
return None
|
|
|
|
@export_hash.setter
|
|
def export_hash(self, val):
|
|
if val is None:
|
|
del self.export_hash
|
|
return
|
|
val = self._export_hash_validator.validate(val)
|
|
self._export_hash_value = val
|
|
self._export_hash_present = True
|
|
|
|
@export_hash.deleter
|
|
def export_hash(self):
|
|
self._export_hash_value = None
|
|
self._export_hash_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ExportMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ExportMetadata(name={!r}, size={!r}, export_hash={!r})'.format(
|
|
self._name_value,
|
|
self._size_value,
|
|
self._export_hash_value,
|
|
)
|
|
|
|
ExportMetadata_validator = bv.Struct(ExportMetadata)
|
|
|
|
class ExportResult(bb.Struct):
|
|
"""
|
|
:ivar files.ExportResult.export_metadata: Metadata for the exported version
|
|
of the file.
|
|
:ivar files.ExportResult.file_metadata: Metadata for the original file.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_export_metadata_value',
|
|
'_export_metadata_present',
|
|
'_file_metadata_value',
|
|
'_file_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
export_metadata=None,
|
|
file_metadata=None):
|
|
self._export_metadata_value = None
|
|
self._export_metadata_present = False
|
|
self._file_metadata_value = None
|
|
self._file_metadata_present = False
|
|
if export_metadata is not None:
|
|
self.export_metadata = export_metadata
|
|
if file_metadata is not None:
|
|
self.file_metadata = file_metadata
|
|
|
|
@property
|
|
def export_metadata(self):
|
|
"""
|
|
Metadata for the exported version of the file.
|
|
|
|
:rtype: ExportMetadata
|
|
"""
|
|
if self._export_metadata_present:
|
|
return self._export_metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'export_metadata'")
|
|
|
|
@export_metadata.setter
|
|
def export_metadata(self, val):
|
|
self._export_metadata_validator.validate_type_only(val)
|
|
self._export_metadata_value = val
|
|
self._export_metadata_present = True
|
|
|
|
@export_metadata.deleter
|
|
def export_metadata(self):
|
|
self._export_metadata_value = None
|
|
self._export_metadata_present = False
|
|
|
|
@property
|
|
def file_metadata(self):
|
|
"""
|
|
Metadata for the original file.
|
|
|
|
:rtype: FileMetadata
|
|
"""
|
|
if self._file_metadata_present:
|
|
return self._file_metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'file_metadata'")
|
|
|
|
@file_metadata.setter
|
|
def file_metadata(self, val):
|
|
self._file_metadata_validator.validate_type_only(val)
|
|
self._file_metadata_value = val
|
|
self._file_metadata_present = True
|
|
|
|
@file_metadata.deleter
|
|
def file_metadata(self):
|
|
self._file_metadata_value = None
|
|
self._file_metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ExportResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ExportResult(export_metadata={!r}, file_metadata={!r})'.format(
|
|
self._export_metadata_value,
|
|
self._file_metadata_value,
|
|
)
|
|
|
|
ExportResult_validator = bv.Struct(ExportResult)
|
|
|
|
class FileMetadata(Metadata):
|
|
"""
|
|
:ivar files.FileMetadata.id: A unique identifier for the file.
|
|
:ivar files.FileMetadata.client_modified: For files, this is the
|
|
modification time set by the desktop client when the file was added to
|
|
Dropbox. Since this time is not verified (the Dropbox server stores
|
|
whatever the desktop client sends up), this should only be used for
|
|
display purposes (such as sorting) and not, for example, to determine if
|
|
a file has changed or not.
|
|
:ivar files.FileMetadata.server_modified: The last time the file was
|
|
modified on Dropbox.
|
|
:ivar files.FileMetadata.rev: A unique identifier for the current revision
|
|
of a file. This field is the same rev as elsewhere in the API and can be
|
|
used to detect changes and avoid conflicts.
|
|
:ivar files.FileMetadata.size: The file size in bytes.
|
|
:ivar files.FileMetadata.media_info: Additional information if the file is a
|
|
photo or video. This field will not be set on entries returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder`,
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`, or
|
|
:meth:`dropbox.dropbox.Dropbox.files_get_thumbnail_batch`, starting
|
|
December 2, 2019.
|
|
:ivar files.FileMetadata.symlink_info: Set if this file is a symlink.
|
|
:ivar files.FileMetadata.sharing_info: Set if this file is contained in a
|
|
shared folder.
|
|
:ivar files.FileMetadata.is_downloadable: If true, file can be downloaded
|
|
directly; else the file must be exported.
|
|
:ivar files.FileMetadata.export_info: Information about format this file can
|
|
be exported to. This filed must be set if ``is_downloadable`` is set to
|
|
false.
|
|
:ivar files.FileMetadata.property_groups: Additional information if the file
|
|
has custom properties with the property template specified.
|
|
:ivar files.FileMetadata.has_explicit_shared_members: This flag will only be
|
|
present if include_has_explicit_shared_members is true in
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_get_metadata`. If this flag is
|
|
present, it will be true if this file has any explicit shared members.
|
|
This is different from sharing_info in that this could be true in the
|
|
case where a file has explicit members but is not contained within a
|
|
shared folder.
|
|
:ivar files.FileMetadata.content_hash: A hash of the file content. This
|
|
field can be used to verify data integrity. For more information see our
|
|
`Content hash
|
|
<https://www.dropbox.com/developers/reference/content-hash>`_ page.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_id_value',
|
|
'_id_present',
|
|
'_client_modified_value',
|
|
'_client_modified_present',
|
|
'_server_modified_value',
|
|
'_server_modified_present',
|
|
'_rev_value',
|
|
'_rev_present',
|
|
'_size_value',
|
|
'_size_present',
|
|
'_media_info_value',
|
|
'_media_info_present',
|
|
'_symlink_info_value',
|
|
'_symlink_info_present',
|
|
'_sharing_info_value',
|
|
'_sharing_info_present',
|
|
'_is_downloadable_value',
|
|
'_is_downloadable_present',
|
|
'_export_info_value',
|
|
'_export_info_present',
|
|
'_property_groups_value',
|
|
'_property_groups_present',
|
|
'_has_explicit_shared_members_value',
|
|
'_has_explicit_shared_members_present',
|
|
'_content_hash_value',
|
|
'_content_hash_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
name=None,
|
|
id=None,
|
|
client_modified=None,
|
|
server_modified=None,
|
|
rev=None,
|
|
size=None,
|
|
path_lower=None,
|
|
path_display=None,
|
|
parent_shared_folder_id=None,
|
|
media_info=None,
|
|
symlink_info=None,
|
|
sharing_info=None,
|
|
is_downloadable=None,
|
|
export_info=None,
|
|
property_groups=None,
|
|
has_explicit_shared_members=None,
|
|
content_hash=None):
|
|
super(FileMetadata, self).__init__(name,
|
|
path_lower,
|
|
path_display,
|
|
parent_shared_folder_id)
|
|
self._id_value = None
|
|
self._id_present = False
|
|
self._client_modified_value = None
|
|
self._client_modified_present = False
|
|
self._server_modified_value = None
|
|
self._server_modified_present = False
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
self._size_value = None
|
|
self._size_present = False
|
|
self._media_info_value = None
|
|
self._media_info_present = False
|
|
self._symlink_info_value = None
|
|
self._symlink_info_present = False
|
|
self._sharing_info_value = None
|
|
self._sharing_info_present = False
|
|
self._is_downloadable_value = None
|
|
self._is_downloadable_present = False
|
|
self._export_info_value = None
|
|
self._export_info_present = False
|
|
self._property_groups_value = None
|
|
self._property_groups_present = False
|
|
self._has_explicit_shared_members_value = None
|
|
self._has_explicit_shared_members_present = False
|
|
self._content_hash_value = None
|
|
self._content_hash_present = False
|
|
if id is not None:
|
|
self.id = id
|
|
if client_modified is not None:
|
|
self.client_modified = client_modified
|
|
if server_modified is not None:
|
|
self.server_modified = server_modified
|
|
if rev is not None:
|
|
self.rev = rev
|
|
if size is not None:
|
|
self.size = size
|
|
if media_info is not None:
|
|
self.media_info = media_info
|
|
if symlink_info is not None:
|
|
self.symlink_info = symlink_info
|
|
if sharing_info is not None:
|
|
self.sharing_info = sharing_info
|
|
if is_downloadable is not None:
|
|
self.is_downloadable = is_downloadable
|
|
if export_info is not None:
|
|
self.export_info = export_info
|
|
if property_groups is not None:
|
|
self.property_groups = property_groups
|
|
if has_explicit_shared_members is not None:
|
|
self.has_explicit_shared_members = has_explicit_shared_members
|
|
if content_hash is not None:
|
|
self.content_hash = content_hash
|
|
|
|
@property
|
|
def id(self):
|
|
"""
|
|
A unique identifier for the file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._id_present:
|
|
return self._id_value
|
|
else:
|
|
raise AttributeError("missing required field 'id'")
|
|
|
|
@id.setter
|
|
def id(self, val):
|
|
val = self._id_validator.validate(val)
|
|
self._id_value = val
|
|
self._id_present = True
|
|
|
|
@id.deleter
|
|
def id(self):
|
|
self._id_value = None
|
|
self._id_present = False
|
|
|
|
@property
|
|
def client_modified(self):
|
|
"""
|
|
For files, this is the modification time set by the desktop client when
|
|
the file was added to Dropbox. Since this time is not verified (the
|
|
Dropbox server stores whatever the desktop client sends up), this should
|
|
only be used for display purposes (such as sorting) and not, for
|
|
example, to determine if a file has changed or not.
|
|
|
|
:rtype: datetime.datetime
|
|
"""
|
|
if self._client_modified_present:
|
|
return self._client_modified_value
|
|
else:
|
|
raise AttributeError("missing required field 'client_modified'")
|
|
|
|
@client_modified.setter
|
|
def client_modified(self, val):
|
|
val = self._client_modified_validator.validate(val)
|
|
self._client_modified_value = val
|
|
self._client_modified_present = True
|
|
|
|
@client_modified.deleter
|
|
def client_modified(self):
|
|
self._client_modified_value = None
|
|
self._client_modified_present = False
|
|
|
|
@property
|
|
def server_modified(self):
|
|
"""
|
|
The last time the file was modified on Dropbox.
|
|
|
|
:rtype: datetime.datetime
|
|
"""
|
|
if self._server_modified_present:
|
|
return self._server_modified_value
|
|
else:
|
|
raise AttributeError("missing required field 'server_modified'")
|
|
|
|
@server_modified.setter
|
|
def server_modified(self, val):
|
|
val = self._server_modified_validator.validate(val)
|
|
self._server_modified_value = val
|
|
self._server_modified_present = True
|
|
|
|
@server_modified.deleter
|
|
def server_modified(self):
|
|
self._server_modified_value = None
|
|
self._server_modified_present = False
|
|
|
|
@property
|
|
def rev(self):
|
|
"""
|
|
A unique identifier for the current revision of a file. This field is
|
|
the same rev as elsewhere in the API and can be used to detect changes
|
|
and avoid conflicts.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._rev_present:
|
|
return self._rev_value
|
|
else:
|
|
raise AttributeError("missing required field 'rev'")
|
|
|
|
@rev.setter
|
|
def rev(self, val):
|
|
val = self._rev_validator.validate(val)
|
|
self._rev_value = val
|
|
self._rev_present = True
|
|
|
|
@rev.deleter
|
|
def rev(self):
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
|
|
@property
|
|
def size(self):
|
|
"""
|
|
The file size in bytes.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._size_present:
|
|
return self._size_value
|
|
else:
|
|
raise AttributeError("missing required field 'size'")
|
|
|
|
@size.setter
|
|
def size(self, val):
|
|
val = self._size_validator.validate(val)
|
|
self._size_value = val
|
|
self._size_present = True
|
|
|
|
@size.deleter
|
|
def size(self):
|
|
self._size_value = None
|
|
self._size_present = False
|
|
|
|
@property
|
|
def media_info(self):
|
|
"""
|
|
Additional information if the file is a photo or video. This field will
|
|
not be set on entries returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder`,
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`, or
|
|
:meth:`dropbox.dropbox.Dropbox.files_get_thumbnail_batch`, starting
|
|
December 2, 2019.
|
|
|
|
:rtype: MediaInfo
|
|
"""
|
|
if self._media_info_present:
|
|
return self._media_info_value
|
|
else:
|
|
return None
|
|
|
|
@media_info.setter
|
|
def media_info(self, val):
|
|
if val is None:
|
|
del self.media_info
|
|
return
|
|
self._media_info_validator.validate_type_only(val)
|
|
self._media_info_value = val
|
|
self._media_info_present = True
|
|
|
|
@media_info.deleter
|
|
def media_info(self):
|
|
self._media_info_value = None
|
|
self._media_info_present = False
|
|
|
|
@property
|
|
def symlink_info(self):
|
|
"""
|
|
Set if this file is a symlink.
|
|
|
|
:rtype: SymlinkInfo
|
|
"""
|
|
if self._symlink_info_present:
|
|
return self._symlink_info_value
|
|
else:
|
|
return None
|
|
|
|
@symlink_info.setter
|
|
def symlink_info(self, val):
|
|
if val is None:
|
|
del self.symlink_info
|
|
return
|
|
self._symlink_info_validator.validate_type_only(val)
|
|
self._symlink_info_value = val
|
|
self._symlink_info_present = True
|
|
|
|
@symlink_info.deleter
|
|
def symlink_info(self):
|
|
self._symlink_info_value = None
|
|
self._symlink_info_present = False
|
|
|
|
@property
|
|
def sharing_info(self):
|
|
"""
|
|
Set if this file is contained in a shared folder.
|
|
|
|
:rtype: FileSharingInfo
|
|
"""
|
|
if self._sharing_info_present:
|
|
return self._sharing_info_value
|
|
else:
|
|
return None
|
|
|
|
@sharing_info.setter
|
|
def sharing_info(self, val):
|
|
if val is None:
|
|
del self.sharing_info
|
|
return
|
|
self._sharing_info_validator.validate_type_only(val)
|
|
self._sharing_info_value = val
|
|
self._sharing_info_present = True
|
|
|
|
@sharing_info.deleter
|
|
def sharing_info(self):
|
|
self._sharing_info_value = None
|
|
self._sharing_info_present = False
|
|
|
|
@property
|
|
def is_downloadable(self):
|
|
"""
|
|
If true, file can be downloaded directly; else the file must be
|
|
exported.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._is_downloadable_present:
|
|
return self._is_downloadable_value
|
|
else:
|
|
return True
|
|
|
|
@is_downloadable.setter
|
|
def is_downloadable(self, val):
|
|
val = self._is_downloadable_validator.validate(val)
|
|
self._is_downloadable_value = val
|
|
self._is_downloadable_present = True
|
|
|
|
@is_downloadable.deleter
|
|
def is_downloadable(self):
|
|
self._is_downloadable_value = None
|
|
self._is_downloadable_present = False
|
|
|
|
@property
|
|
def export_info(self):
|
|
"""
|
|
Information about format this file can be exported to. This filed must
|
|
be set if ``is_downloadable`` is set to false.
|
|
|
|
:rtype: ExportInfo
|
|
"""
|
|
if self._export_info_present:
|
|
return self._export_info_value
|
|
else:
|
|
return None
|
|
|
|
@export_info.setter
|
|
def export_info(self, val):
|
|
if val is None:
|
|
del self.export_info
|
|
return
|
|
self._export_info_validator.validate_type_only(val)
|
|
self._export_info_value = val
|
|
self._export_info_present = True
|
|
|
|
@export_info.deleter
|
|
def export_info(self):
|
|
self._export_info_value = None
|
|
self._export_info_present = False
|
|
|
|
@property
|
|
def property_groups(self):
|
|
"""
|
|
Additional information if the file has custom properties with the
|
|
property template specified.
|
|
|
|
:rtype: list of [file_properties.PropertyGroup]
|
|
"""
|
|
if self._property_groups_present:
|
|
return self._property_groups_value
|
|
else:
|
|
return None
|
|
|
|
@property_groups.setter
|
|
def property_groups(self, val):
|
|
if val is None:
|
|
del self.property_groups
|
|
return
|
|
val = self._property_groups_validator.validate(val)
|
|
self._property_groups_value = val
|
|
self._property_groups_present = True
|
|
|
|
@property_groups.deleter
|
|
def property_groups(self):
|
|
self._property_groups_value = None
|
|
self._property_groups_present = False
|
|
|
|
@property
|
|
def has_explicit_shared_members(self):
|
|
"""
|
|
This flag will only be present if include_has_explicit_shared_members
|
|
is true in :meth:`dropbox.dropbox.Dropbox.files_list_folder` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_get_metadata`. If this flag is
|
|
present, it will be true if this file has any explicit shared members.
|
|
This is different from sharing_info in that this could be true in the
|
|
case where a file has explicit members but is not contained within a
|
|
shared folder.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._has_explicit_shared_members_present:
|
|
return self._has_explicit_shared_members_value
|
|
else:
|
|
return None
|
|
|
|
@has_explicit_shared_members.setter
|
|
def has_explicit_shared_members(self, val):
|
|
if val is None:
|
|
del self.has_explicit_shared_members
|
|
return
|
|
val = self._has_explicit_shared_members_validator.validate(val)
|
|
self._has_explicit_shared_members_value = val
|
|
self._has_explicit_shared_members_present = True
|
|
|
|
@has_explicit_shared_members.deleter
|
|
def has_explicit_shared_members(self):
|
|
self._has_explicit_shared_members_value = None
|
|
self._has_explicit_shared_members_present = False
|
|
|
|
@property
|
|
def content_hash(self):
|
|
"""
|
|
A hash of the file content. This field can be used to verify data
|
|
integrity. For more information see our `Content hash
|
|
<https://www.dropbox.com/developers/reference/content-hash>`_ page.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._content_hash_present:
|
|
return self._content_hash_value
|
|
else:
|
|
return None
|
|
|
|
@content_hash.setter
|
|
def content_hash(self, val):
|
|
if val is None:
|
|
del self.content_hash
|
|
return
|
|
val = self._content_hash_validator.validate(val)
|
|
self._content_hash_value = val
|
|
self._content_hash_present = True
|
|
|
|
@content_hash.deleter
|
|
def content_hash(self):
|
|
self._content_hash_value = None
|
|
self._content_hash_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(FileMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'FileMetadata(name={!r}, id={!r}, client_modified={!r}, server_modified={!r}, rev={!r}, size={!r}, path_lower={!r}, path_display={!r}, parent_shared_folder_id={!r}, media_info={!r}, symlink_info={!r}, sharing_info={!r}, is_downloadable={!r}, export_info={!r}, property_groups={!r}, has_explicit_shared_members={!r}, content_hash={!r})'.format(
|
|
self._name_value,
|
|
self._id_value,
|
|
self._client_modified_value,
|
|
self._server_modified_value,
|
|
self._rev_value,
|
|
self._size_value,
|
|
self._path_lower_value,
|
|
self._path_display_value,
|
|
self._parent_shared_folder_id_value,
|
|
self._media_info_value,
|
|
self._symlink_info_value,
|
|
self._sharing_info_value,
|
|
self._is_downloadable_value,
|
|
self._export_info_value,
|
|
self._property_groups_value,
|
|
self._has_explicit_shared_members_value,
|
|
self._content_hash_value,
|
|
)
|
|
|
|
FileMetadata_validator = bv.Struct(FileMetadata)
|
|
|
|
class SharingInfo(bb.Struct):
|
|
"""
|
|
Sharing info for a file or folder.
|
|
|
|
:ivar files.SharingInfo.read_only: True if the file or folder is inside a
|
|
read-only shared folder.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_read_only_value',
|
|
'_read_only_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
read_only=None):
|
|
self._read_only_value = None
|
|
self._read_only_present = False
|
|
if read_only is not None:
|
|
self.read_only = read_only
|
|
|
|
@property
|
|
def read_only(self):
|
|
"""
|
|
True if the file or folder is inside a read-only shared folder.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._read_only_present:
|
|
return self._read_only_value
|
|
else:
|
|
raise AttributeError("missing required field 'read_only'")
|
|
|
|
@read_only.setter
|
|
def read_only(self, val):
|
|
val = self._read_only_validator.validate(val)
|
|
self._read_only_value = val
|
|
self._read_only_present = True
|
|
|
|
@read_only.deleter
|
|
def read_only(self):
|
|
self._read_only_value = None
|
|
self._read_only_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SharingInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SharingInfo(read_only={!r})'.format(
|
|
self._read_only_value,
|
|
)
|
|
|
|
SharingInfo_validator = bv.Struct(SharingInfo)
|
|
|
|
class FileSharingInfo(SharingInfo):
|
|
"""
|
|
Sharing info for a file which is contained by a shared folder.
|
|
|
|
:ivar files.FileSharingInfo.parent_shared_folder_id: ID of shared folder
|
|
that holds this file.
|
|
:ivar files.FileSharingInfo.modified_by: The last user who modified the
|
|
file. This field will be null if the user's account has been deleted.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_parent_shared_folder_id_value',
|
|
'_parent_shared_folder_id_present',
|
|
'_modified_by_value',
|
|
'_modified_by_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
read_only=None,
|
|
parent_shared_folder_id=None,
|
|
modified_by=None):
|
|
super(FileSharingInfo, self).__init__(read_only)
|
|
self._parent_shared_folder_id_value = None
|
|
self._parent_shared_folder_id_present = False
|
|
self._modified_by_value = None
|
|
self._modified_by_present = False
|
|
if parent_shared_folder_id is not None:
|
|
self.parent_shared_folder_id = parent_shared_folder_id
|
|
if modified_by is not None:
|
|
self.modified_by = modified_by
|
|
|
|
@property
|
|
def parent_shared_folder_id(self):
|
|
"""
|
|
ID of shared folder that holds this file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._parent_shared_folder_id_present:
|
|
return self._parent_shared_folder_id_value
|
|
else:
|
|
raise AttributeError("missing required field 'parent_shared_folder_id'")
|
|
|
|
@parent_shared_folder_id.setter
|
|
def parent_shared_folder_id(self, val):
|
|
val = self._parent_shared_folder_id_validator.validate(val)
|
|
self._parent_shared_folder_id_value = val
|
|
self._parent_shared_folder_id_present = True
|
|
|
|
@parent_shared_folder_id.deleter
|
|
def parent_shared_folder_id(self):
|
|
self._parent_shared_folder_id_value = None
|
|
self._parent_shared_folder_id_present = False
|
|
|
|
@property
|
|
def modified_by(self):
|
|
"""
|
|
The last user who modified the file. This field will be null if the
|
|
user's account has been deleted.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._modified_by_present:
|
|
return self._modified_by_value
|
|
else:
|
|
return None
|
|
|
|
@modified_by.setter
|
|
def modified_by(self, val):
|
|
if val is None:
|
|
del self.modified_by
|
|
return
|
|
val = self._modified_by_validator.validate(val)
|
|
self._modified_by_value = val
|
|
self._modified_by_present = True
|
|
|
|
@modified_by.deleter
|
|
def modified_by(self):
|
|
self._modified_by_value = None
|
|
self._modified_by_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(FileSharingInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'FileSharingInfo(read_only={!r}, parent_shared_folder_id={!r}, modified_by={!r})'.format(
|
|
self._read_only_value,
|
|
self._parent_shared_folder_id_value,
|
|
self._modified_by_value,
|
|
)
|
|
|
|
FileSharingInfo_validator = bv.Struct(FileSharingInfo)
|
|
|
|
class FolderMetadata(Metadata):
|
|
"""
|
|
:ivar files.FolderMetadata.id: A unique identifier for the folder.
|
|
:ivar files.FolderMetadata.shared_folder_id: Please use ``sharing_info``
|
|
instead.
|
|
:ivar files.FolderMetadata.sharing_info: Set if the folder is contained in a
|
|
shared folder or is a shared folder mount point.
|
|
:ivar files.FolderMetadata.property_groups: Additional information if the
|
|
file has custom properties with the property template specified. Note
|
|
that only properties associated with user-owned templates, not
|
|
team-owned templates, can be attached to folders.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_id_value',
|
|
'_id_present',
|
|
'_shared_folder_id_value',
|
|
'_shared_folder_id_present',
|
|
'_sharing_info_value',
|
|
'_sharing_info_present',
|
|
'_property_groups_value',
|
|
'_property_groups_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
name=None,
|
|
id=None,
|
|
path_lower=None,
|
|
path_display=None,
|
|
parent_shared_folder_id=None,
|
|
shared_folder_id=None,
|
|
sharing_info=None,
|
|
property_groups=None):
|
|
super(FolderMetadata, self).__init__(name,
|
|
path_lower,
|
|
path_display,
|
|
parent_shared_folder_id)
|
|
self._id_value = None
|
|
self._id_present = False
|
|
self._shared_folder_id_value = None
|
|
self._shared_folder_id_present = False
|
|
self._sharing_info_value = None
|
|
self._sharing_info_present = False
|
|
self._property_groups_value = None
|
|
self._property_groups_present = False
|
|
if id is not None:
|
|
self.id = id
|
|
if shared_folder_id is not None:
|
|
self.shared_folder_id = shared_folder_id
|
|
if sharing_info is not None:
|
|
self.sharing_info = sharing_info
|
|
if property_groups is not None:
|
|
self.property_groups = property_groups
|
|
|
|
@property
|
|
def id(self):
|
|
"""
|
|
A unique identifier for the folder.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._id_present:
|
|
return self._id_value
|
|
else:
|
|
raise AttributeError("missing required field 'id'")
|
|
|
|
@id.setter
|
|
def id(self, val):
|
|
val = self._id_validator.validate(val)
|
|
self._id_value = val
|
|
self._id_present = True
|
|
|
|
@id.deleter
|
|
def id(self):
|
|
self._id_value = None
|
|
self._id_present = False
|
|
|
|
@property
|
|
def shared_folder_id(self):
|
|
"""
|
|
Please use ``sharing_info`` instead.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._shared_folder_id_present:
|
|
return self._shared_folder_id_value
|
|
else:
|
|
return None
|
|
|
|
@shared_folder_id.setter
|
|
def shared_folder_id(self, val):
|
|
if val is None:
|
|
del self.shared_folder_id
|
|
return
|
|
val = self._shared_folder_id_validator.validate(val)
|
|
self._shared_folder_id_value = val
|
|
self._shared_folder_id_present = True
|
|
|
|
@shared_folder_id.deleter
|
|
def shared_folder_id(self):
|
|
self._shared_folder_id_value = None
|
|
self._shared_folder_id_present = False
|
|
|
|
@property
|
|
def sharing_info(self):
|
|
"""
|
|
Set if the folder is contained in a shared folder or is a shared folder
|
|
mount point.
|
|
|
|
:rtype: FolderSharingInfo
|
|
"""
|
|
if self._sharing_info_present:
|
|
return self._sharing_info_value
|
|
else:
|
|
return None
|
|
|
|
@sharing_info.setter
|
|
def sharing_info(self, val):
|
|
if val is None:
|
|
del self.sharing_info
|
|
return
|
|
self._sharing_info_validator.validate_type_only(val)
|
|
self._sharing_info_value = val
|
|
self._sharing_info_present = True
|
|
|
|
@sharing_info.deleter
|
|
def sharing_info(self):
|
|
self._sharing_info_value = None
|
|
self._sharing_info_present = False
|
|
|
|
@property
|
|
def property_groups(self):
|
|
"""
|
|
Additional information if the file has custom properties with the
|
|
property template specified. Note that only properties associated with
|
|
user-owned templates, not team-owned templates, can be attached to
|
|
folders.
|
|
|
|
:rtype: list of [file_properties.PropertyGroup]
|
|
"""
|
|
if self._property_groups_present:
|
|
return self._property_groups_value
|
|
else:
|
|
return None
|
|
|
|
@property_groups.setter
|
|
def property_groups(self, val):
|
|
if val is None:
|
|
del self.property_groups
|
|
return
|
|
val = self._property_groups_validator.validate(val)
|
|
self._property_groups_value = val
|
|
self._property_groups_present = True
|
|
|
|
@property_groups.deleter
|
|
def property_groups(self):
|
|
self._property_groups_value = None
|
|
self._property_groups_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(FolderMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'FolderMetadata(name={!r}, id={!r}, path_lower={!r}, path_display={!r}, parent_shared_folder_id={!r}, shared_folder_id={!r}, sharing_info={!r}, property_groups={!r})'.format(
|
|
self._name_value,
|
|
self._id_value,
|
|
self._path_lower_value,
|
|
self._path_display_value,
|
|
self._parent_shared_folder_id_value,
|
|
self._shared_folder_id_value,
|
|
self._sharing_info_value,
|
|
self._property_groups_value,
|
|
)
|
|
|
|
FolderMetadata_validator = bv.Struct(FolderMetadata)
|
|
|
|
class FolderSharingInfo(SharingInfo):
|
|
"""
|
|
Sharing info for a folder which is contained in a shared folder or is a
|
|
shared folder mount point.
|
|
|
|
:ivar files.FolderSharingInfo.parent_shared_folder_id: Set if the folder is
|
|
contained by a shared folder.
|
|
:ivar files.FolderSharingInfo.shared_folder_id: If this folder is a shared
|
|
folder mount point, the ID of the shared folder mounted at this
|
|
location.
|
|
:ivar files.FolderSharingInfo.traverse_only: Specifies that the folder can
|
|
only be traversed and the user can only see a limited subset of the
|
|
contents of this folder because they don't have read access to this
|
|
folder. They do, however, have access to some sub folder.
|
|
:ivar files.FolderSharingInfo.no_access: Specifies that the folder cannot be
|
|
accessed by the user.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_parent_shared_folder_id_value',
|
|
'_parent_shared_folder_id_present',
|
|
'_shared_folder_id_value',
|
|
'_shared_folder_id_present',
|
|
'_traverse_only_value',
|
|
'_traverse_only_present',
|
|
'_no_access_value',
|
|
'_no_access_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
read_only=None,
|
|
parent_shared_folder_id=None,
|
|
shared_folder_id=None,
|
|
traverse_only=None,
|
|
no_access=None):
|
|
super(FolderSharingInfo, self).__init__(read_only)
|
|
self._parent_shared_folder_id_value = None
|
|
self._parent_shared_folder_id_present = False
|
|
self._shared_folder_id_value = None
|
|
self._shared_folder_id_present = False
|
|
self._traverse_only_value = None
|
|
self._traverse_only_present = False
|
|
self._no_access_value = None
|
|
self._no_access_present = False
|
|
if parent_shared_folder_id is not None:
|
|
self.parent_shared_folder_id = parent_shared_folder_id
|
|
if shared_folder_id is not None:
|
|
self.shared_folder_id = shared_folder_id
|
|
if traverse_only is not None:
|
|
self.traverse_only = traverse_only
|
|
if no_access is not None:
|
|
self.no_access = no_access
|
|
|
|
@property
|
|
def parent_shared_folder_id(self):
|
|
"""
|
|
Set if the folder is contained by a shared folder.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._parent_shared_folder_id_present:
|
|
return self._parent_shared_folder_id_value
|
|
else:
|
|
return None
|
|
|
|
@parent_shared_folder_id.setter
|
|
def parent_shared_folder_id(self, val):
|
|
if val is None:
|
|
del self.parent_shared_folder_id
|
|
return
|
|
val = self._parent_shared_folder_id_validator.validate(val)
|
|
self._parent_shared_folder_id_value = val
|
|
self._parent_shared_folder_id_present = True
|
|
|
|
@parent_shared_folder_id.deleter
|
|
def parent_shared_folder_id(self):
|
|
self._parent_shared_folder_id_value = None
|
|
self._parent_shared_folder_id_present = False
|
|
|
|
@property
|
|
def shared_folder_id(self):
|
|
"""
|
|
If this folder is a shared folder mount point, the ID of the shared
|
|
folder mounted at this location.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._shared_folder_id_present:
|
|
return self._shared_folder_id_value
|
|
else:
|
|
return None
|
|
|
|
@shared_folder_id.setter
|
|
def shared_folder_id(self, val):
|
|
if val is None:
|
|
del self.shared_folder_id
|
|
return
|
|
val = self._shared_folder_id_validator.validate(val)
|
|
self._shared_folder_id_value = val
|
|
self._shared_folder_id_present = True
|
|
|
|
@shared_folder_id.deleter
|
|
def shared_folder_id(self):
|
|
self._shared_folder_id_value = None
|
|
self._shared_folder_id_present = False
|
|
|
|
@property
|
|
def traverse_only(self):
|
|
"""
|
|
Specifies that the folder can only be traversed and the user can only
|
|
see a limited subset of the contents of this folder because they don't
|
|
have read access to this folder. They do, however, have access to some
|
|
sub folder.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._traverse_only_present:
|
|
return self._traverse_only_value
|
|
else:
|
|
return False
|
|
|
|
@traverse_only.setter
|
|
def traverse_only(self, val):
|
|
val = self._traverse_only_validator.validate(val)
|
|
self._traverse_only_value = val
|
|
self._traverse_only_present = True
|
|
|
|
@traverse_only.deleter
|
|
def traverse_only(self):
|
|
self._traverse_only_value = None
|
|
self._traverse_only_present = False
|
|
|
|
@property
|
|
def no_access(self):
|
|
"""
|
|
Specifies that the folder cannot be accessed by the user.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._no_access_present:
|
|
return self._no_access_value
|
|
else:
|
|
return False
|
|
|
|
@no_access.setter
|
|
def no_access(self, val):
|
|
val = self._no_access_validator.validate(val)
|
|
self._no_access_value = val
|
|
self._no_access_present = True
|
|
|
|
@no_access.deleter
|
|
def no_access(self):
|
|
self._no_access_value = None
|
|
self._no_access_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(FolderSharingInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'FolderSharingInfo(read_only={!r}, parent_shared_folder_id={!r}, shared_folder_id={!r}, traverse_only={!r}, no_access={!r})'.format(
|
|
self._read_only_value,
|
|
self._parent_shared_folder_id_value,
|
|
self._shared_folder_id_value,
|
|
self._traverse_only_value,
|
|
self._no_access_value,
|
|
)
|
|
|
|
FolderSharingInfo_validator = bv.Struct(FolderSharingInfo)
|
|
|
|
class GetCopyReferenceArg(bb.Struct):
|
|
"""
|
|
:ivar files.GetCopyReferenceArg.path: The path to the file or folder you
|
|
want to get a copy reference to.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path to the file or folder you want to get a copy reference to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetCopyReferenceArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetCopyReferenceArg(path={!r})'.format(
|
|
self._path_value,
|
|
)
|
|
|
|
GetCopyReferenceArg_validator = bv.Struct(GetCopyReferenceArg)
|
|
|
|
class GetCopyReferenceError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: GetCopyReferenceError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetCopyReferenceError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetCopyReferenceError(%r, %r)' % (self._tag, self._value)
|
|
|
|
GetCopyReferenceError_validator = bv.Union(GetCopyReferenceError)
|
|
|
|
class GetCopyReferenceResult(bb.Struct):
|
|
"""
|
|
:ivar files.GetCopyReferenceResult.metadata: Metadata of the file or folder.
|
|
:ivar files.GetCopyReferenceResult.copy_reference: A copy reference to the
|
|
file or folder.
|
|
:ivar files.GetCopyReferenceResult.expires: The expiration date of the copy
|
|
reference. This value is currently set to be far enough in the future so
|
|
that expiration is effectively not an issue.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
'_copy_reference_value',
|
|
'_copy_reference_present',
|
|
'_expires_value',
|
|
'_expires_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None,
|
|
copy_reference=None,
|
|
expires=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
self._copy_reference_value = None
|
|
self._copy_reference_present = False
|
|
self._expires_value = None
|
|
self._expires_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
if copy_reference is not None:
|
|
self.copy_reference = copy_reference
|
|
if expires is not None:
|
|
self.expires = expires
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the file or folder.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
@property
|
|
def copy_reference(self):
|
|
"""
|
|
A copy reference to the file or folder.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._copy_reference_present:
|
|
return self._copy_reference_value
|
|
else:
|
|
raise AttributeError("missing required field 'copy_reference'")
|
|
|
|
@copy_reference.setter
|
|
def copy_reference(self, val):
|
|
val = self._copy_reference_validator.validate(val)
|
|
self._copy_reference_value = val
|
|
self._copy_reference_present = True
|
|
|
|
@copy_reference.deleter
|
|
def copy_reference(self):
|
|
self._copy_reference_value = None
|
|
self._copy_reference_present = False
|
|
|
|
@property
|
|
def expires(self):
|
|
"""
|
|
The expiration date of the copy reference. This value is currently set
|
|
to be far enough in the future so that expiration is effectively not an
|
|
issue.
|
|
|
|
:rtype: datetime.datetime
|
|
"""
|
|
if self._expires_present:
|
|
return self._expires_value
|
|
else:
|
|
raise AttributeError("missing required field 'expires'")
|
|
|
|
@expires.setter
|
|
def expires(self, val):
|
|
val = self._expires_validator.validate(val)
|
|
self._expires_value = val
|
|
self._expires_present = True
|
|
|
|
@expires.deleter
|
|
def expires(self):
|
|
self._expires_value = None
|
|
self._expires_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetCopyReferenceResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetCopyReferenceResult(metadata={!r}, copy_reference={!r}, expires={!r})'.format(
|
|
self._metadata_value,
|
|
self._copy_reference_value,
|
|
self._expires_value,
|
|
)
|
|
|
|
GetCopyReferenceResult_validator = bv.Struct(GetCopyReferenceResult)
|
|
|
|
class GetTemporaryLinkArg(bb.Struct):
|
|
"""
|
|
:ivar files.GetTemporaryLinkArg.path: The path to the file you want a
|
|
temporary link to.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path to the file you want a temporary link to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetTemporaryLinkArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetTemporaryLinkArg(path={!r})'.format(
|
|
self._path_value,
|
|
)
|
|
|
|
GetTemporaryLinkArg_validator = bv.Struct(GetTemporaryLinkArg)
|
|
|
|
class GetTemporaryLinkError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.GetTemporaryLinkError.email_not_verified: The user's email
|
|
address needs to be verified to use this functionality.
|
|
:ivar files.GetTemporaryLinkError.unsupported_file: Cannot get temporary
|
|
link to this file type; use :meth:`dropbox.dropbox.Dropbox.files_export`
|
|
instead.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
email_not_verified = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_file = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: GetTemporaryLinkError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_email_not_verified(self):
|
|
"""
|
|
Check if the union tag is ``email_not_verified``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'email_not_verified'
|
|
|
|
def is_unsupported_file(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_file``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_file'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetTemporaryLinkError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetTemporaryLinkError(%r, %r)' % (self._tag, self._value)
|
|
|
|
GetTemporaryLinkError_validator = bv.Union(GetTemporaryLinkError)
|
|
|
|
class GetTemporaryLinkResult(bb.Struct):
|
|
"""
|
|
:ivar files.GetTemporaryLinkResult.metadata: Metadata of the file.
|
|
:ivar files.GetTemporaryLinkResult.link: The temporary link which can be
|
|
used to stream content the file.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
'_link_value',
|
|
'_link_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None,
|
|
link=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
self._link_value = None
|
|
self._link_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
if link is not None:
|
|
self.link = link
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the file.
|
|
|
|
:rtype: FileMetadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
@property
|
|
def link(self):
|
|
"""
|
|
The temporary link which can be used to stream content the file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._link_present:
|
|
return self._link_value
|
|
else:
|
|
raise AttributeError("missing required field 'link'")
|
|
|
|
@link.setter
|
|
def link(self, val):
|
|
val = self._link_validator.validate(val)
|
|
self._link_value = val
|
|
self._link_present = True
|
|
|
|
@link.deleter
|
|
def link(self):
|
|
self._link_value = None
|
|
self._link_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetTemporaryLinkResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetTemporaryLinkResult(metadata={!r}, link={!r})'.format(
|
|
self._metadata_value,
|
|
self._link_value,
|
|
)
|
|
|
|
GetTemporaryLinkResult_validator = bv.Struct(GetTemporaryLinkResult)
|
|
|
|
class GetTemporaryUploadLinkArg(bb.Struct):
|
|
"""
|
|
:ivar files.GetTemporaryUploadLinkArg.commit_info: Contains the path and
|
|
other optional modifiers for the future upload commit. Equivalent to the
|
|
parameters provided to :meth:`dropbox.dropbox.Dropbox.files_upload`.
|
|
:ivar files.GetTemporaryUploadLinkArg.duration: How long before this link
|
|
expires, in seconds. Attempting to start an upload with this link
|
|
longer than this period of time after link creation will result in an
|
|
error.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_commit_info_value',
|
|
'_commit_info_present',
|
|
'_duration_value',
|
|
'_duration_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
commit_info=None,
|
|
duration=None):
|
|
self._commit_info_value = None
|
|
self._commit_info_present = False
|
|
self._duration_value = None
|
|
self._duration_present = False
|
|
if commit_info is not None:
|
|
self.commit_info = commit_info
|
|
if duration is not None:
|
|
self.duration = duration
|
|
|
|
@property
|
|
def commit_info(self):
|
|
"""
|
|
Contains the path and other optional modifiers for the future upload
|
|
commit. Equivalent to the parameters provided to
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload`.
|
|
|
|
:rtype: CommitInfo
|
|
"""
|
|
if self._commit_info_present:
|
|
return self._commit_info_value
|
|
else:
|
|
raise AttributeError("missing required field 'commit_info'")
|
|
|
|
@commit_info.setter
|
|
def commit_info(self, val):
|
|
self._commit_info_validator.validate_type_only(val)
|
|
self._commit_info_value = val
|
|
self._commit_info_present = True
|
|
|
|
@commit_info.deleter
|
|
def commit_info(self):
|
|
self._commit_info_value = None
|
|
self._commit_info_present = False
|
|
|
|
@property
|
|
def duration(self):
|
|
"""
|
|
How long before this link expires, in seconds. Attempting to start an
|
|
upload with this link longer than this period of time after link
|
|
creation will result in an error.
|
|
|
|
:rtype: float
|
|
"""
|
|
if self._duration_present:
|
|
return self._duration_value
|
|
else:
|
|
return 14400.0
|
|
|
|
@duration.setter
|
|
def duration(self, val):
|
|
val = self._duration_validator.validate(val)
|
|
self._duration_value = val
|
|
self._duration_present = True
|
|
|
|
@duration.deleter
|
|
def duration(self):
|
|
self._duration_value = None
|
|
self._duration_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetTemporaryUploadLinkArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetTemporaryUploadLinkArg(commit_info={!r}, duration={!r})'.format(
|
|
self._commit_info_value,
|
|
self._duration_value,
|
|
)
|
|
|
|
GetTemporaryUploadLinkArg_validator = bv.Struct(GetTemporaryUploadLinkArg)
|
|
|
|
class GetTemporaryUploadLinkResult(bb.Struct):
|
|
"""
|
|
:ivar files.GetTemporaryUploadLinkResult.link: The temporary link which can
|
|
be used to stream a file to a Dropbox location.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_link_value',
|
|
'_link_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
link=None):
|
|
self._link_value = None
|
|
self._link_present = False
|
|
if link is not None:
|
|
self.link = link
|
|
|
|
@property
|
|
def link(self):
|
|
"""
|
|
The temporary link which can be used to stream a file to a Dropbox
|
|
location.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._link_present:
|
|
return self._link_value
|
|
else:
|
|
raise AttributeError("missing required field 'link'")
|
|
|
|
@link.setter
|
|
def link(self, val):
|
|
val = self._link_validator.validate(val)
|
|
self._link_value = val
|
|
self._link_present = True
|
|
|
|
@link.deleter
|
|
def link(self):
|
|
self._link_value = None
|
|
self._link_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetTemporaryUploadLinkResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetTemporaryUploadLinkResult(link={!r})'.format(
|
|
self._link_value,
|
|
)
|
|
|
|
GetTemporaryUploadLinkResult_validator = bv.Struct(GetTemporaryUploadLinkResult)
|
|
|
|
class GetThumbnailBatchArg(bb.Struct):
|
|
"""
|
|
Arguments for :meth:`dropbox.dropbox.Dropbox.files_get_thumbnail_batch`.
|
|
|
|
:ivar files.GetThumbnailBatchArg.entries: List of files to get thumbnails.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
List of files to get thumbnails.
|
|
|
|
:rtype: list of [ThumbnailArg]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetThumbnailBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetThumbnailBatchArg(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
GetThumbnailBatchArg_validator = bv.Struct(GetThumbnailBatchArg)
|
|
|
|
class GetThumbnailBatchError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.GetThumbnailBatchError.too_many_files: The operation involves
|
|
more than 25 files.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
too_many_files = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_too_many_files(self):
|
|
"""
|
|
Check if the union tag is ``too_many_files``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_files'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetThumbnailBatchError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetThumbnailBatchError(%r, %r)' % (self._tag, self._value)
|
|
|
|
GetThumbnailBatchError_validator = bv.Union(GetThumbnailBatchError)
|
|
|
|
class GetThumbnailBatchResult(bb.Struct):
|
|
"""
|
|
:ivar files.GetThumbnailBatchResult.entries: List of files and their
|
|
thumbnails.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
List of files and their thumbnails.
|
|
|
|
:rtype: list of [GetThumbnailBatchResultEntry]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetThumbnailBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetThumbnailBatchResult(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
GetThumbnailBatchResult_validator = bv.Struct(GetThumbnailBatchResult)
|
|
|
|
class GetThumbnailBatchResultData(bb.Struct):
|
|
"""
|
|
:ivar files.GetThumbnailBatchResultData.thumbnail: A string containing the
|
|
base64-encoded thumbnail data for this file.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
'_thumbnail_value',
|
|
'_thumbnail_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None,
|
|
thumbnail=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
self._thumbnail_value = None
|
|
self._thumbnail_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
if thumbnail is not None:
|
|
self.thumbnail = thumbnail
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
:rtype: FileMetadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
@property
|
|
def thumbnail(self):
|
|
"""
|
|
A string containing the base64-encoded thumbnail data for this file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._thumbnail_present:
|
|
return self._thumbnail_value
|
|
else:
|
|
raise AttributeError("missing required field 'thumbnail'")
|
|
|
|
@thumbnail.setter
|
|
def thumbnail(self, val):
|
|
val = self._thumbnail_validator.validate(val)
|
|
self._thumbnail_value = val
|
|
self._thumbnail_present = True
|
|
|
|
@thumbnail.deleter
|
|
def thumbnail(self):
|
|
self._thumbnail_value = None
|
|
self._thumbnail_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetThumbnailBatchResultData, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetThumbnailBatchResultData(metadata={!r}, thumbnail={!r})'.format(
|
|
self._metadata_value,
|
|
self._thumbnail_value,
|
|
)
|
|
|
|
GetThumbnailBatchResultData_validator = bv.Struct(GetThumbnailBatchResultData)
|
|
|
|
class GetThumbnailBatchResultEntry(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar ThumbnailError GetThumbnailBatchResultEntry.failure: The result for
|
|
this file if it was an error.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def success(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``success`` tag with value
|
|
``val``.
|
|
|
|
:param GetThumbnailBatchResultData val:
|
|
:rtype: GetThumbnailBatchResultEntry
|
|
"""
|
|
return cls('success', val)
|
|
|
|
@classmethod
|
|
def failure(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failure`` tag with value
|
|
``val``.
|
|
|
|
:param ThumbnailError val:
|
|
:rtype: GetThumbnailBatchResultEntry
|
|
"""
|
|
return cls('failure', val)
|
|
|
|
def is_success(self):
|
|
"""
|
|
Check if the union tag is ``success``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'success'
|
|
|
|
def is_failure(self):
|
|
"""
|
|
Check if the union tag is ``failure``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failure'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_success(self):
|
|
"""
|
|
Only call this if :meth:`is_success` is true.
|
|
|
|
:rtype: GetThumbnailBatchResultData
|
|
"""
|
|
if not self.is_success():
|
|
raise AttributeError("tag 'success' not set")
|
|
return self._value
|
|
|
|
def get_failure(self):
|
|
"""
|
|
The result for this file if it was an error.
|
|
|
|
Only call this if :meth:`is_failure` is true.
|
|
|
|
:rtype: ThumbnailError
|
|
"""
|
|
if not self.is_failure():
|
|
raise AttributeError("tag 'failure' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GetThumbnailBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GetThumbnailBatchResultEntry(%r, %r)' % (self._tag, self._value)
|
|
|
|
GetThumbnailBatchResultEntry_validator = bv.Union(GetThumbnailBatchResultEntry)
|
|
|
|
class GpsCoordinates(bb.Struct):
|
|
"""
|
|
GPS coordinates for a photo or video.
|
|
|
|
:ivar files.GpsCoordinates.latitude: Latitude of the GPS coordinates.
|
|
:ivar files.GpsCoordinates.longitude: Longitude of the GPS coordinates.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_latitude_value',
|
|
'_latitude_present',
|
|
'_longitude_value',
|
|
'_longitude_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
latitude=None,
|
|
longitude=None):
|
|
self._latitude_value = None
|
|
self._latitude_present = False
|
|
self._longitude_value = None
|
|
self._longitude_present = False
|
|
if latitude is not None:
|
|
self.latitude = latitude
|
|
if longitude is not None:
|
|
self.longitude = longitude
|
|
|
|
@property
|
|
def latitude(self):
|
|
"""
|
|
Latitude of the GPS coordinates.
|
|
|
|
:rtype: float
|
|
"""
|
|
if self._latitude_present:
|
|
return self._latitude_value
|
|
else:
|
|
raise AttributeError("missing required field 'latitude'")
|
|
|
|
@latitude.setter
|
|
def latitude(self, val):
|
|
val = self._latitude_validator.validate(val)
|
|
self._latitude_value = val
|
|
self._latitude_present = True
|
|
|
|
@latitude.deleter
|
|
def latitude(self):
|
|
self._latitude_value = None
|
|
self._latitude_present = False
|
|
|
|
@property
|
|
def longitude(self):
|
|
"""
|
|
Longitude of the GPS coordinates.
|
|
|
|
:rtype: float
|
|
"""
|
|
if self._longitude_present:
|
|
return self._longitude_value
|
|
else:
|
|
raise AttributeError("missing required field 'longitude'")
|
|
|
|
@longitude.setter
|
|
def longitude(self, val):
|
|
val = self._longitude_validator.validate(val)
|
|
self._longitude_value = val
|
|
self._longitude_present = True
|
|
|
|
@longitude.deleter
|
|
def longitude(self):
|
|
self._longitude_value = None
|
|
self._longitude_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(GpsCoordinates, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'GpsCoordinates(latitude={!r}, longitude={!r})'.format(
|
|
self._latitude_value,
|
|
self._longitude_value,
|
|
)
|
|
|
|
GpsCoordinates_validator = bv.Struct(GpsCoordinates)
|
|
|
|
class ListFolderArg(bb.Struct):
|
|
"""
|
|
:ivar files.ListFolderArg.path: A unique identifier for the file.
|
|
:ivar files.ListFolderArg.recursive: If true, the list folder operation will
|
|
be applied recursively to all subfolders and the response will contain
|
|
contents of all subfolders.
|
|
:ivar files.ListFolderArg.include_media_info: If true,
|
|
``FileMetadata.media_info`` is set for photo and video. This parameter
|
|
will no longer have an effect starting December 2, 2019.
|
|
:ivar files.ListFolderArg.include_deleted: If true, the results will include
|
|
entries for files and folders that used to exist but were deleted.
|
|
:ivar files.ListFolderArg.include_has_explicit_shared_members: If true, the
|
|
results will include a flag for each file indicating whether or not
|
|
that file has any explicit members.
|
|
:ivar files.ListFolderArg.include_mounted_folders: If true, the results will
|
|
include entries under mounted folders which includes app folder, shared
|
|
folder and team folder.
|
|
:ivar files.ListFolderArg.limit: The maximum number of results to return per
|
|
request. Note: This is an approximate number and there can be slightly
|
|
more entries returned in some cases.
|
|
:ivar files.ListFolderArg.shared_link: A shared link to list the contents
|
|
of. If the link is password-protected, the password must be provided. If
|
|
this field is present, ``ListFolderArg.path`` will be relative to root
|
|
of the shared link. Only non-recursive mode is supported for shared
|
|
link.
|
|
:ivar files.ListFolderArg.include_property_groups: If set to a valid list of
|
|
template IDs, ``FileMetadata.property_groups`` is set if there exists
|
|
property data associated with the file and each of the listed templates.
|
|
:ivar files.ListFolderArg.include_non_downloadable_files: If true, include
|
|
files that are not downloadable, i.e. Google Docs.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_recursive_value',
|
|
'_recursive_present',
|
|
'_include_media_info_value',
|
|
'_include_media_info_present',
|
|
'_include_deleted_value',
|
|
'_include_deleted_present',
|
|
'_include_has_explicit_shared_members_value',
|
|
'_include_has_explicit_shared_members_present',
|
|
'_include_mounted_folders_value',
|
|
'_include_mounted_folders_present',
|
|
'_limit_value',
|
|
'_limit_present',
|
|
'_shared_link_value',
|
|
'_shared_link_present',
|
|
'_include_property_groups_value',
|
|
'_include_property_groups_present',
|
|
'_include_non_downloadable_files_value',
|
|
'_include_non_downloadable_files_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
recursive=None,
|
|
include_media_info=None,
|
|
include_deleted=None,
|
|
include_has_explicit_shared_members=None,
|
|
include_mounted_folders=None,
|
|
limit=None,
|
|
shared_link=None,
|
|
include_property_groups=None,
|
|
include_non_downloadable_files=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._recursive_value = None
|
|
self._recursive_present = False
|
|
self._include_media_info_value = None
|
|
self._include_media_info_present = False
|
|
self._include_deleted_value = None
|
|
self._include_deleted_present = False
|
|
self._include_has_explicit_shared_members_value = None
|
|
self._include_has_explicit_shared_members_present = False
|
|
self._include_mounted_folders_value = None
|
|
self._include_mounted_folders_present = False
|
|
self._limit_value = None
|
|
self._limit_present = False
|
|
self._shared_link_value = None
|
|
self._shared_link_present = False
|
|
self._include_property_groups_value = None
|
|
self._include_property_groups_present = False
|
|
self._include_non_downloadable_files_value = None
|
|
self._include_non_downloadable_files_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if recursive is not None:
|
|
self.recursive = recursive
|
|
if include_media_info is not None:
|
|
self.include_media_info = include_media_info
|
|
if include_deleted is not None:
|
|
self.include_deleted = include_deleted
|
|
if include_has_explicit_shared_members is not None:
|
|
self.include_has_explicit_shared_members = include_has_explicit_shared_members
|
|
if include_mounted_folders is not None:
|
|
self.include_mounted_folders = include_mounted_folders
|
|
if limit is not None:
|
|
self.limit = limit
|
|
if shared_link is not None:
|
|
self.shared_link = shared_link
|
|
if include_property_groups is not None:
|
|
self.include_property_groups = include_property_groups
|
|
if include_non_downloadable_files is not None:
|
|
self.include_non_downloadable_files = include_non_downloadable_files
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
A unique identifier for the file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def recursive(self):
|
|
"""
|
|
If true, the list folder operation will be applied recursively to all
|
|
subfolders and the response will contain contents of all subfolders.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._recursive_present:
|
|
return self._recursive_value
|
|
else:
|
|
return False
|
|
|
|
@recursive.setter
|
|
def recursive(self, val):
|
|
val = self._recursive_validator.validate(val)
|
|
self._recursive_value = val
|
|
self._recursive_present = True
|
|
|
|
@recursive.deleter
|
|
def recursive(self):
|
|
self._recursive_value = None
|
|
self._recursive_present = False
|
|
|
|
@property
|
|
def include_media_info(self):
|
|
"""
|
|
If true, ``FileMetadata.media_info`` is set for photo and video. This
|
|
parameter will no longer have an effect starting December 2, 2019.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_media_info_present:
|
|
return self._include_media_info_value
|
|
else:
|
|
return False
|
|
|
|
@include_media_info.setter
|
|
def include_media_info(self, val):
|
|
val = self._include_media_info_validator.validate(val)
|
|
self._include_media_info_value = val
|
|
self._include_media_info_present = True
|
|
|
|
@include_media_info.deleter
|
|
def include_media_info(self):
|
|
self._include_media_info_value = None
|
|
self._include_media_info_present = False
|
|
|
|
@property
|
|
def include_deleted(self):
|
|
"""
|
|
If true, the results will include entries for files and folders that
|
|
used to exist but were deleted.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_deleted_present:
|
|
return self._include_deleted_value
|
|
else:
|
|
return False
|
|
|
|
@include_deleted.setter
|
|
def include_deleted(self, val):
|
|
val = self._include_deleted_validator.validate(val)
|
|
self._include_deleted_value = val
|
|
self._include_deleted_present = True
|
|
|
|
@include_deleted.deleter
|
|
def include_deleted(self):
|
|
self._include_deleted_value = None
|
|
self._include_deleted_present = False
|
|
|
|
@property
|
|
def include_has_explicit_shared_members(self):
|
|
"""
|
|
If true, the results will include a flag for each file indicating
|
|
whether or not that file has any explicit members.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_has_explicit_shared_members_present:
|
|
return self._include_has_explicit_shared_members_value
|
|
else:
|
|
return False
|
|
|
|
@include_has_explicit_shared_members.setter
|
|
def include_has_explicit_shared_members(self, val):
|
|
val = self._include_has_explicit_shared_members_validator.validate(val)
|
|
self._include_has_explicit_shared_members_value = val
|
|
self._include_has_explicit_shared_members_present = True
|
|
|
|
@include_has_explicit_shared_members.deleter
|
|
def include_has_explicit_shared_members(self):
|
|
self._include_has_explicit_shared_members_value = None
|
|
self._include_has_explicit_shared_members_present = False
|
|
|
|
@property
|
|
def include_mounted_folders(self):
|
|
"""
|
|
If true, the results will include entries under mounted folders which
|
|
includes app folder, shared folder and team folder.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_mounted_folders_present:
|
|
return self._include_mounted_folders_value
|
|
else:
|
|
return True
|
|
|
|
@include_mounted_folders.setter
|
|
def include_mounted_folders(self, val):
|
|
val = self._include_mounted_folders_validator.validate(val)
|
|
self._include_mounted_folders_value = val
|
|
self._include_mounted_folders_present = True
|
|
|
|
@include_mounted_folders.deleter
|
|
def include_mounted_folders(self):
|
|
self._include_mounted_folders_value = None
|
|
self._include_mounted_folders_present = False
|
|
|
|
@property
|
|
def limit(self):
|
|
"""
|
|
The maximum number of results to return per request. Note: This is an
|
|
approximate number and there can be slightly more entries returned in
|
|
some cases.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._limit_present:
|
|
return self._limit_value
|
|
else:
|
|
return None
|
|
|
|
@limit.setter
|
|
def limit(self, val):
|
|
if val is None:
|
|
del self.limit
|
|
return
|
|
val = self._limit_validator.validate(val)
|
|
self._limit_value = val
|
|
self._limit_present = True
|
|
|
|
@limit.deleter
|
|
def limit(self):
|
|
self._limit_value = None
|
|
self._limit_present = False
|
|
|
|
@property
|
|
def shared_link(self):
|
|
"""
|
|
A shared link to list the contents of. If the link is
|
|
password-protected, the password must be provided. If this field is
|
|
present, ``ListFolderArg.path`` will be relative to root of the shared
|
|
link. Only non-recursive mode is supported for shared link.
|
|
|
|
:rtype: SharedLink
|
|
"""
|
|
if self._shared_link_present:
|
|
return self._shared_link_value
|
|
else:
|
|
return None
|
|
|
|
@shared_link.setter
|
|
def shared_link(self, val):
|
|
if val is None:
|
|
del self.shared_link
|
|
return
|
|
self._shared_link_validator.validate_type_only(val)
|
|
self._shared_link_value = val
|
|
self._shared_link_present = True
|
|
|
|
@shared_link.deleter
|
|
def shared_link(self):
|
|
self._shared_link_value = None
|
|
self._shared_link_present = False
|
|
|
|
@property
|
|
def include_property_groups(self):
|
|
"""
|
|
If set to a valid list of template IDs, ``FileMetadata.property_groups``
|
|
is set if there exists property data associated with the file and each
|
|
of the listed templates.
|
|
|
|
:rtype: file_properties.TemplateFilterBase
|
|
"""
|
|
if self._include_property_groups_present:
|
|
return self._include_property_groups_value
|
|
else:
|
|
return None
|
|
|
|
@include_property_groups.setter
|
|
def include_property_groups(self, val):
|
|
if val is None:
|
|
del self.include_property_groups
|
|
return
|
|
self._include_property_groups_validator.validate_type_only(val)
|
|
self._include_property_groups_value = val
|
|
self._include_property_groups_present = True
|
|
|
|
@include_property_groups.deleter
|
|
def include_property_groups(self):
|
|
self._include_property_groups_value = None
|
|
self._include_property_groups_present = False
|
|
|
|
@property
|
|
def include_non_downloadable_files(self):
|
|
"""
|
|
If true, include files that are not downloadable, i.e. Google Docs.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._include_non_downloadable_files_present:
|
|
return self._include_non_downloadable_files_value
|
|
else:
|
|
return True
|
|
|
|
@include_non_downloadable_files.setter
|
|
def include_non_downloadable_files(self, val):
|
|
val = self._include_non_downloadable_files_validator.validate(val)
|
|
self._include_non_downloadable_files_value = val
|
|
self._include_non_downloadable_files_present = True
|
|
|
|
@include_non_downloadable_files.deleter
|
|
def include_non_downloadable_files(self):
|
|
self._include_non_downloadable_files_value = None
|
|
self._include_non_downloadable_files_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderArg(path={!r}, recursive={!r}, include_media_info={!r}, include_deleted={!r}, include_has_explicit_shared_members={!r}, include_mounted_folders={!r}, limit={!r}, shared_link={!r}, include_property_groups={!r}, include_non_downloadable_files={!r})'.format(
|
|
self._path_value,
|
|
self._recursive_value,
|
|
self._include_media_info_value,
|
|
self._include_deleted_value,
|
|
self._include_has_explicit_shared_members_value,
|
|
self._include_mounted_folders_value,
|
|
self._limit_value,
|
|
self._shared_link_value,
|
|
self._include_property_groups_value,
|
|
self._include_non_downloadable_files_value,
|
|
)
|
|
|
|
ListFolderArg_validator = bv.Struct(ListFolderArg)
|
|
|
|
class ListFolderContinueArg(bb.Struct):
|
|
"""
|
|
:ivar files.ListFolderContinueArg.cursor: The cursor returned by your last
|
|
call to :meth:`dropbox.dropbox.Dropbox.files_list_folder` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_cursor_value',
|
|
'_cursor_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
cursor=None):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
if cursor is not None:
|
|
self.cursor = cursor
|
|
|
|
@property
|
|
def cursor(self):
|
|
"""
|
|
The cursor returned by your last call to
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._cursor_present:
|
|
return self._cursor_value
|
|
else:
|
|
raise AttributeError("missing required field 'cursor'")
|
|
|
|
@cursor.setter
|
|
def cursor(self, val):
|
|
val = self._cursor_validator.validate(val)
|
|
self._cursor_value = val
|
|
self._cursor_present = True
|
|
|
|
@cursor.deleter
|
|
def cursor(self):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderContinueArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderContinueArg(cursor={!r})'.format(
|
|
self._cursor_value,
|
|
)
|
|
|
|
ListFolderContinueArg_validator = bv.Struct(ListFolderContinueArg)
|
|
|
|
class ListFolderContinueError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.ListFolderContinueError.reset: Indicates that the cursor has
|
|
been invalidated. Call :meth:`dropbox.dropbox.Dropbox.files_list_folder`
|
|
to obtain a new cursor.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
reset = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: ListFolderContinueError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_reset(self):
|
|
"""
|
|
Check if the union tag is ``reset``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'reset'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderContinueError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderContinueError(%r, %r)' % (self._tag, self._value)
|
|
|
|
ListFolderContinueError_validator = bv.Union(ListFolderContinueError)
|
|
|
|
class ListFolderError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: ListFolderError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderError(%r, %r)' % (self._tag, self._value)
|
|
|
|
ListFolderError_validator = bv.Union(ListFolderError)
|
|
|
|
class ListFolderGetLatestCursorResult(bb.Struct):
|
|
"""
|
|
:ivar files.ListFolderGetLatestCursorResult.cursor: Pass the cursor into
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to see what's
|
|
changed in the folder since your previous query.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_cursor_value',
|
|
'_cursor_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
cursor=None):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
if cursor is not None:
|
|
self.cursor = cursor
|
|
|
|
@property
|
|
def cursor(self):
|
|
"""
|
|
Pass the cursor into
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to see what's
|
|
changed in the folder since your previous query.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._cursor_present:
|
|
return self._cursor_value
|
|
else:
|
|
raise AttributeError("missing required field 'cursor'")
|
|
|
|
@cursor.setter
|
|
def cursor(self, val):
|
|
val = self._cursor_validator.validate(val)
|
|
self._cursor_value = val
|
|
self._cursor_present = True
|
|
|
|
@cursor.deleter
|
|
def cursor(self):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderGetLatestCursorResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderGetLatestCursorResult(cursor={!r})'.format(
|
|
self._cursor_value,
|
|
)
|
|
|
|
ListFolderGetLatestCursorResult_validator = bv.Struct(ListFolderGetLatestCursorResult)
|
|
|
|
class ListFolderLongpollArg(bb.Struct):
|
|
"""
|
|
:ivar files.ListFolderLongpollArg.cursor: A cursor as returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`. Cursors
|
|
retrieved by setting ``ListFolderArg.include_media_info`` to ``True``
|
|
are not supported.
|
|
:ivar files.ListFolderLongpollArg.timeout: A timeout in seconds. The request
|
|
will block for at most this length of time, plus up to 90 seconds of
|
|
random jitter added to avoid the thundering herd problem. Care should be
|
|
taken when using this parameter, as some network infrastructure does not
|
|
support long timeouts.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_cursor_value',
|
|
'_cursor_present',
|
|
'_timeout_value',
|
|
'_timeout_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
cursor=None,
|
|
timeout=None):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
self._timeout_value = None
|
|
self._timeout_present = False
|
|
if cursor is not None:
|
|
self.cursor = cursor
|
|
if timeout is not None:
|
|
self.timeout = timeout
|
|
|
|
@property
|
|
def cursor(self):
|
|
"""
|
|
A cursor as returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue`. Cursors
|
|
retrieved by setting ``ListFolderArg.include_media_info`` to ``True``
|
|
are not supported.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._cursor_present:
|
|
return self._cursor_value
|
|
else:
|
|
raise AttributeError("missing required field 'cursor'")
|
|
|
|
@cursor.setter
|
|
def cursor(self, val):
|
|
val = self._cursor_validator.validate(val)
|
|
self._cursor_value = val
|
|
self._cursor_present = True
|
|
|
|
@cursor.deleter
|
|
def cursor(self):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
|
|
@property
|
|
def timeout(self):
|
|
"""
|
|
A timeout in seconds. The request will block for at most this length of
|
|
time, plus up to 90 seconds of random jitter added to avoid the
|
|
thundering herd problem. Care should be taken when using this parameter,
|
|
as some network infrastructure does not support long timeouts.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._timeout_present:
|
|
return self._timeout_value
|
|
else:
|
|
return 30
|
|
|
|
@timeout.setter
|
|
def timeout(self, val):
|
|
val = self._timeout_validator.validate(val)
|
|
self._timeout_value = val
|
|
self._timeout_present = True
|
|
|
|
@timeout.deleter
|
|
def timeout(self):
|
|
self._timeout_value = None
|
|
self._timeout_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderLongpollArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderLongpollArg(cursor={!r}, timeout={!r})'.format(
|
|
self._cursor_value,
|
|
self._timeout_value,
|
|
)
|
|
|
|
ListFolderLongpollArg_validator = bv.Struct(ListFolderLongpollArg)
|
|
|
|
class ListFolderLongpollError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.ListFolderLongpollError.reset: Indicates that the cursor has
|
|
been invalidated. Call :meth:`dropbox.dropbox.Dropbox.files_list_folder`
|
|
to obtain a new cursor.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
reset = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_reset(self):
|
|
"""
|
|
Check if the union tag is ``reset``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'reset'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderLongpollError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderLongpollError(%r, %r)' % (self._tag, self._value)
|
|
|
|
ListFolderLongpollError_validator = bv.Union(ListFolderLongpollError)
|
|
|
|
class ListFolderLongpollResult(bb.Struct):
|
|
"""
|
|
:ivar files.ListFolderLongpollResult.changes: Indicates whether new changes
|
|
are available. If true, call
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to retrieve
|
|
the changes.
|
|
:ivar files.ListFolderLongpollResult.backoff: If present, backoff for at
|
|
least this many seconds before calling
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_longpoll` again.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_changes_value',
|
|
'_changes_present',
|
|
'_backoff_value',
|
|
'_backoff_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
changes=None,
|
|
backoff=None):
|
|
self._changes_value = None
|
|
self._changes_present = False
|
|
self._backoff_value = None
|
|
self._backoff_present = False
|
|
if changes is not None:
|
|
self.changes = changes
|
|
if backoff is not None:
|
|
self.backoff = backoff
|
|
|
|
@property
|
|
def changes(self):
|
|
"""
|
|
Indicates whether new changes are available. If true, call
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to retrieve
|
|
the changes.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._changes_present:
|
|
return self._changes_value
|
|
else:
|
|
raise AttributeError("missing required field 'changes'")
|
|
|
|
@changes.setter
|
|
def changes(self, val):
|
|
val = self._changes_validator.validate(val)
|
|
self._changes_value = val
|
|
self._changes_present = True
|
|
|
|
@changes.deleter
|
|
def changes(self):
|
|
self._changes_value = None
|
|
self._changes_present = False
|
|
|
|
@property
|
|
def backoff(self):
|
|
"""
|
|
If present, backoff for at least this many seconds before calling
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_longpoll` again.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._backoff_present:
|
|
return self._backoff_value
|
|
else:
|
|
return None
|
|
|
|
@backoff.setter
|
|
def backoff(self, val):
|
|
if val is None:
|
|
del self.backoff
|
|
return
|
|
val = self._backoff_validator.validate(val)
|
|
self._backoff_value = val
|
|
self._backoff_present = True
|
|
|
|
@backoff.deleter
|
|
def backoff(self):
|
|
self._backoff_value = None
|
|
self._backoff_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderLongpollResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderLongpollResult(changes={!r}, backoff={!r})'.format(
|
|
self._changes_value,
|
|
self._backoff_value,
|
|
)
|
|
|
|
ListFolderLongpollResult_validator = bv.Struct(ListFolderLongpollResult)
|
|
|
|
class ListFolderResult(bb.Struct):
|
|
"""
|
|
:ivar files.ListFolderResult.entries: The files and (direct) subfolders in
|
|
the folder.
|
|
:ivar files.ListFolderResult.cursor: Pass the cursor into
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to see what's
|
|
changed in the folder since your previous query.
|
|
:ivar files.ListFolderResult.has_more: If true, then there are more entries
|
|
available. Pass the cursor to
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to retrieve
|
|
the rest.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
'_cursor_value',
|
|
'_cursor_present',
|
|
'_has_more_value',
|
|
'_has_more_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None,
|
|
cursor=None,
|
|
has_more=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
self._has_more_value = None
|
|
self._has_more_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
if cursor is not None:
|
|
self.cursor = cursor
|
|
if has_more is not None:
|
|
self.has_more = has_more
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
The files and (direct) subfolders in the folder.
|
|
|
|
:rtype: list of [Metadata]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
@property
|
|
def cursor(self):
|
|
"""
|
|
Pass the cursor into
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to see what's
|
|
changed in the folder since your previous query.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._cursor_present:
|
|
return self._cursor_value
|
|
else:
|
|
raise AttributeError("missing required field 'cursor'")
|
|
|
|
@cursor.setter
|
|
def cursor(self, val):
|
|
val = self._cursor_validator.validate(val)
|
|
self._cursor_value = val
|
|
self._cursor_present = True
|
|
|
|
@cursor.deleter
|
|
def cursor(self):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
|
|
@property
|
|
def has_more(self):
|
|
"""
|
|
If true, then there are more entries available. Pass the cursor to
|
|
:meth:`dropbox.dropbox.Dropbox.files_list_folder_continue` to retrieve
|
|
the rest.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._has_more_present:
|
|
return self._has_more_value
|
|
else:
|
|
raise AttributeError("missing required field 'has_more'")
|
|
|
|
@has_more.setter
|
|
def has_more(self, val):
|
|
val = self._has_more_validator.validate(val)
|
|
self._has_more_value = val
|
|
self._has_more_present = True
|
|
|
|
@has_more.deleter
|
|
def has_more(self):
|
|
self._has_more_value = None
|
|
self._has_more_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListFolderResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListFolderResult(entries={!r}, cursor={!r}, has_more={!r})'.format(
|
|
self._entries_value,
|
|
self._cursor_value,
|
|
self._has_more_value,
|
|
)
|
|
|
|
ListFolderResult_validator = bv.Struct(ListFolderResult)
|
|
|
|
class ListRevisionsArg(bb.Struct):
|
|
"""
|
|
:ivar files.ListRevisionsArg.path: The path to the file you want to see the
|
|
revisions of.
|
|
:ivar files.ListRevisionsArg.mode: Determines the behavior of the API in
|
|
listing the revisions for a given file path or id.
|
|
:ivar files.ListRevisionsArg.limit: The maximum number of revision entries
|
|
returned.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_mode_value',
|
|
'_mode_present',
|
|
'_limit_value',
|
|
'_limit_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
mode=None,
|
|
limit=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
self._limit_value = None
|
|
self._limit_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if mode is not None:
|
|
self.mode = mode
|
|
if limit is not None:
|
|
self.limit = limit
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path to the file you want to see the revisions of.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def mode(self):
|
|
"""
|
|
Determines the behavior of the API in listing the revisions for a given
|
|
file path or id.
|
|
|
|
:rtype: ListRevisionsMode
|
|
"""
|
|
if self._mode_present:
|
|
return self._mode_value
|
|
else:
|
|
return ListRevisionsMode.path
|
|
|
|
@mode.setter
|
|
def mode(self, val):
|
|
self._mode_validator.validate_type_only(val)
|
|
self._mode_value = val
|
|
self._mode_present = True
|
|
|
|
@mode.deleter
|
|
def mode(self):
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
|
|
@property
|
|
def limit(self):
|
|
"""
|
|
The maximum number of revision entries returned.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._limit_present:
|
|
return self._limit_value
|
|
else:
|
|
return 10
|
|
|
|
@limit.setter
|
|
def limit(self, val):
|
|
val = self._limit_validator.validate(val)
|
|
self._limit_value = val
|
|
self._limit_present = True
|
|
|
|
@limit.deleter
|
|
def limit(self):
|
|
self._limit_value = None
|
|
self._limit_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListRevisionsArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListRevisionsArg(path={!r}, mode={!r}, limit={!r})'.format(
|
|
self._path_value,
|
|
self._mode_value,
|
|
self._limit_value,
|
|
)
|
|
|
|
ListRevisionsArg_validator = bv.Struct(ListRevisionsArg)
|
|
|
|
class ListRevisionsError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: ListRevisionsError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListRevisionsError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListRevisionsError(%r, %r)' % (self._tag, self._value)
|
|
|
|
ListRevisionsError_validator = bv.Union(ListRevisionsError)
|
|
|
|
class ListRevisionsMode(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.ListRevisionsMode.path: Returns revisions with the same file
|
|
path as identified by the latest file entry at the given file path or
|
|
id.
|
|
:ivar files.ListRevisionsMode.id: Returns revisions with the same file id as
|
|
identified by the latest file entry at the given file path or id.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
path = None
|
|
# Attribute is overwritten below the class definition
|
|
id = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_id(self):
|
|
"""
|
|
Check if the union tag is ``id``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'id'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListRevisionsMode, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListRevisionsMode(%r, %r)' % (self._tag, self._value)
|
|
|
|
ListRevisionsMode_validator = bv.Union(ListRevisionsMode)
|
|
|
|
class ListRevisionsResult(bb.Struct):
|
|
"""
|
|
:ivar files.ListRevisionsResult.is_deleted: If the file identified by the
|
|
latest revision in the response is either deleted or moved.
|
|
:ivar files.ListRevisionsResult.server_deleted: The time of deletion if the
|
|
file was deleted.
|
|
:ivar files.ListRevisionsResult.entries: The revisions for the file. Only
|
|
revisions that are not deleted will show up here.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_is_deleted_value',
|
|
'_is_deleted_present',
|
|
'_server_deleted_value',
|
|
'_server_deleted_present',
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
is_deleted=None,
|
|
entries=None,
|
|
server_deleted=None):
|
|
self._is_deleted_value = None
|
|
self._is_deleted_present = False
|
|
self._server_deleted_value = None
|
|
self._server_deleted_present = False
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if is_deleted is not None:
|
|
self.is_deleted = is_deleted
|
|
if server_deleted is not None:
|
|
self.server_deleted = server_deleted
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def is_deleted(self):
|
|
"""
|
|
If the file identified by the latest revision in the response is either
|
|
deleted or moved.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._is_deleted_present:
|
|
return self._is_deleted_value
|
|
else:
|
|
raise AttributeError("missing required field 'is_deleted'")
|
|
|
|
@is_deleted.setter
|
|
def is_deleted(self, val):
|
|
val = self._is_deleted_validator.validate(val)
|
|
self._is_deleted_value = val
|
|
self._is_deleted_present = True
|
|
|
|
@is_deleted.deleter
|
|
def is_deleted(self):
|
|
self._is_deleted_value = None
|
|
self._is_deleted_present = False
|
|
|
|
@property
|
|
def server_deleted(self):
|
|
"""
|
|
The time of deletion if the file was deleted.
|
|
|
|
:rtype: datetime.datetime
|
|
"""
|
|
if self._server_deleted_present:
|
|
return self._server_deleted_value
|
|
else:
|
|
return None
|
|
|
|
@server_deleted.setter
|
|
def server_deleted(self, val):
|
|
if val is None:
|
|
del self.server_deleted
|
|
return
|
|
val = self._server_deleted_validator.validate(val)
|
|
self._server_deleted_value = val
|
|
self._server_deleted_present = True
|
|
|
|
@server_deleted.deleter
|
|
def server_deleted(self):
|
|
self._server_deleted_value = None
|
|
self._server_deleted_present = False
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
The revisions for the file. Only revisions that are not deleted will
|
|
show up here.
|
|
|
|
:rtype: list of [FileMetadata]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ListRevisionsResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ListRevisionsResult(is_deleted={!r}, entries={!r}, server_deleted={!r})'.format(
|
|
self._is_deleted_value,
|
|
self._entries_value,
|
|
self._server_deleted_value,
|
|
)
|
|
|
|
ListRevisionsResult_validator = bv.Struct(ListRevisionsResult)
|
|
|
|
class LookupError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar Optional[str] files.LookupError.malformed_path: The given path does
|
|
not satisfy the required path format. Please refer to the :link:`Path
|
|
formats documentation
|
|
https://www.dropbox.com/developers/documentation/http/documentation#path-formats`
|
|
for more information.
|
|
:ivar files.LookupError.not_found: There is nothing at the given path.
|
|
:ivar files.LookupError.not_file: We were expecting a file, but the given
|
|
path refers to something that isn't a file.
|
|
:ivar files.LookupError.not_folder: We were expecting a folder, but the
|
|
given path refers to something that isn't a folder.
|
|
:ivar files.LookupError.restricted_content: The file cannot be transferred
|
|
because the content is restricted. For example, sometimes there are
|
|
legal restrictions due to copyright claims.
|
|
:ivar files.LookupError.unsupported_content_type: This operation is not
|
|
supported for this content type.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
not_found = None
|
|
# Attribute is overwritten below the class definition
|
|
not_file = None
|
|
# Attribute is overwritten below the class definition
|
|
not_folder = None
|
|
# Attribute is overwritten below the class definition
|
|
restricted_content = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_content_type = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def malformed_path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``malformed_path`` tag with
|
|
value ``val``.
|
|
|
|
:param Optional[str] val:
|
|
:rtype: LookupError
|
|
"""
|
|
return cls('malformed_path', val)
|
|
|
|
def is_malformed_path(self):
|
|
"""
|
|
Check if the union tag is ``malformed_path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'malformed_path'
|
|
|
|
def is_not_found(self):
|
|
"""
|
|
Check if the union tag is ``not_found``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_found'
|
|
|
|
def is_not_file(self):
|
|
"""
|
|
Check if the union tag is ``not_file``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_file'
|
|
|
|
def is_not_folder(self):
|
|
"""
|
|
Check if the union tag is ``not_folder``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_folder'
|
|
|
|
def is_restricted_content(self):
|
|
"""
|
|
Check if the union tag is ``restricted_content``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'restricted_content'
|
|
|
|
def is_unsupported_content_type(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_content_type``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_content_type'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_malformed_path(self):
|
|
"""
|
|
The given path does not satisfy the required path format. Please refer
|
|
to the `Path formats documentation
|
|
<https://www.dropbox.com/developers/documentation/http/documentation#path-formats>`_
|
|
for more information.
|
|
|
|
Only call this if :meth:`is_malformed_path` is true.
|
|
|
|
:rtype: Optional[str]
|
|
"""
|
|
if not self.is_malformed_path():
|
|
raise AttributeError("tag 'malformed_path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(LookupError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'LookupError(%r, %r)' % (self._tag, self._value)
|
|
|
|
LookupError_validator = bv.Union(LookupError)
|
|
|
|
class MediaInfo(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.MediaInfo.pending: Indicate the photo/video is still under
|
|
processing and metadata is not available yet.
|
|
:ivar MediaMetadata MediaInfo.metadata: The metadata for the photo/video.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
pending = None
|
|
|
|
@classmethod
|
|
def metadata(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``metadata`` tag with value
|
|
``val``.
|
|
|
|
:param MediaMetadata val:
|
|
:rtype: MediaInfo
|
|
"""
|
|
return cls('metadata', val)
|
|
|
|
def is_pending(self):
|
|
"""
|
|
Check if the union tag is ``pending``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'pending'
|
|
|
|
def is_metadata(self):
|
|
"""
|
|
Check if the union tag is ``metadata``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'metadata'
|
|
|
|
def get_metadata(self):
|
|
"""
|
|
The metadata for the photo/video.
|
|
|
|
Only call this if :meth:`is_metadata` is true.
|
|
|
|
:rtype: MediaMetadata
|
|
"""
|
|
if not self.is_metadata():
|
|
raise AttributeError("tag 'metadata' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(MediaInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'MediaInfo(%r, %r)' % (self._tag, self._value)
|
|
|
|
MediaInfo_validator = bv.Union(MediaInfo)
|
|
|
|
class MediaMetadata(bb.Struct):
|
|
"""
|
|
Metadata for a photo or video.
|
|
|
|
:ivar files.MediaMetadata.dimensions: Dimension of the photo/video.
|
|
:ivar files.MediaMetadata.location: The GPS coordinate of the photo/video.
|
|
:ivar files.MediaMetadata.time_taken: The timestamp when the photo/video is
|
|
taken.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_dimensions_value',
|
|
'_dimensions_present',
|
|
'_location_value',
|
|
'_location_present',
|
|
'_time_taken_value',
|
|
'_time_taken_present',
|
|
]
|
|
|
|
_has_required_fields = False
|
|
|
|
def __init__(self,
|
|
dimensions=None,
|
|
location=None,
|
|
time_taken=None):
|
|
self._dimensions_value = None
|
|
self._dimensions_present = False
|
|
self._location_value = None
|
|
self._location_present = False
|
|
self._time_taken_value = None
|
|
self._time_taken_present = False
|
|
if dimensions is not None:
|
|
self.dimensions = dimensions
|
|
if location is not None:
|
|
self.location = location
|
|
if time_taken is not None:
|
|
self.time_taken = time_taken
|
|
|
|
@property
|
|
def dimensions(self):
|
|
"""
|
|
Dimension of the photo/video.
|
|
|
|
:rtype: Dimensions
|
|
"""
|
|
if self._dimensions_present:
|
|
return self._dimensions_value
|
|
else:
|
|
return None
|
|
|
|
@dimensions.setter
|
|
def dimensions(self, val):
|
|
if val is None:
|
|
del self.dimensions
|
|
return
|
|
self._dimensions_validator.validate_type_only(val)
|
|
self._dimensions_value = val
|
|
self._dimensions_present = True
|
|
|
|
@dimensions.deleter
|
|
def dimensions(self):
|
|
self._dimensions_value = None
|
|
self._dimensions_present = False
|
|
|
|
@property
|
|
def location(self):
|
|
"""
|
|
The GPS coordinate of the photo/video.
|
|
|
|
:rtype: GpsCoordinates
|
|
"""
|
|
if self._location_present:
|
|
return self._location_value
|
|
else:
|
|
return None
|
|
|
|
@location.setter
|
|
def location(self, val):
|
|
if val is None:
|
|
del self.location
|
|
return
|
|
self._location_validator.validate_type_only(val)
|
|
self._location_value = val
|
|
self._location_present = True
|
|
|
|
@location.deleter
|
|
def location(self):
|
|
self._location_value = None
|
|
self._location_present = False
|
|
|
|
@property
|
|
def time_taken(self):
|
|
"""
|
|
The timestamp when the photo/video is taken.
|
|
|
|
:rtype: datetime.datetime
|
|
"""
|
|
if self._time_taken_present:
|
|
return self._time_taken_value
|
|
else:
|
|
return None
|
|
|
|
@time_taken.setter
|
|
def time_taken(self, val):
|
|
if val is None:
|
|
del self.time_taken
|
|
return
|
|
val = self._time_taken_validator.validate(val)
|
|
self._time_taken_value = val
|
|
self._time_taken_present = True
|
|
|
|
@time_taken.deleter
|
|
def time_taken(self):
|
|
self._time_taken_value = None
|
|
self._time_taken_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(MediaMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'MediaMetadata(dimensions={!r}, location={!r}, time_taken={!r})'.format(
|
|
self._dimensions_value,
|
|
self._location_value,
|
|
self._time_taken_value,
|
|
)
|
|
|
|
MediaMetadata_validator = bv.StructTree(MediaMetadata)
|
|
|
|
class RelocationBatchArgBase(bb.Struct):
|
|
"""
|
|
:ivar files.RelocationBatchArgBase.entries: List of entries to be moved or
|
|
copied. Each entry is :class:`RelocationPath`.
|
|
:ivar files.RelocationBatchArgBase.autorename: If there's a conflict with
|
|
any file, have the Dropbox server try to autorename that file to avoid
|
|
the conflict.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
'_autorename_value',
|
|
'_autorename_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None,
|
|
autorename=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
if autorename is not None:
|
|
self.autorename = autorename
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
List of entries to be moved or copied. Each entry is
|
|
:class:`RelocationPath`.
|
|
|
|
:rtype: list of [RelocationPath]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
@property
|
|
def autorename(self):
|
|
"""
|
|
If there's a conflict with any file, have the Dropbox server try to
|
|
autorename that file to avoid the conflict.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._autorename_present:
|
|
return self._autorename_value
|
|
else:
|
|
return False
|
|
|
|
@autorename.setter
|
|
def autorename(self, val):
|
|
val = self._autorename_validator.validate(val)
|
|
self._autorename_value = val
|
|
self._autorename_present = True
|
|
|
|
@autorename.deleter
|
|
def autorename(self):
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchArgBase, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchArgBase(entries={!r}, autorename={!r})'.format(
|
|
self._entries_value,
|
|
self._autorename_value,
|
|
)
|
|
|
|
RelocationBatchArgBase_validator = bv.Struct(RelocationBatchArgBase)
|
|
|
|
class MoveBatchArg(RelocationBatchArgBase):
|
|
"""
|
|
:ivar files.MoveBatchArg.allow_ownership_transfer: Allow moves by owner even
|
|
if it would result in an ownership transfer for the content being moved.
|
|
This does not apply to copies.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_allow_ownership_transfer_value',
|
|
'_allow_ownership_transfer_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None,
|
|
autorename=None,
|
|
allow_ownership_transfer=None):
|
|
super(MoveBatchArg, self).__init__(entries,
|
|
autorename)
|
|
self._allow_ownership_transfer_value = None
|
|
self._allow_ownership_transfer_present = False
|
|
if allow_ownership_transfer is not None:
|
|
self.allow_ownership_transfer = allow_ownership_transfer
|
|
|
|
@property
|
|
def allow_ownership_transfer(self):
|
|
"""
|
|
Allow moves by owner even if it would result in an ownership transfer
|
|
for the content being moved. This does not apply to copies.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._allow_ownership_transfer_present:
|
|
return self._allow_ownership_transfer_value
|
|
else:
|
|
return False
|
|
|
|
@allow_ownership_transfer.setter
|
|
def allow_ownership_transfer(self, val):
|
|
val = self._allow_ownership_transfer_validator.validate(val)
|
|
self._allow_ownership_transfer_value = val
|
|
self._allow_ownership_transfer_present = True
|
|
|
|
@allow_ownership_transfer.deleter
|
|
def allow_ownership_transfer(self):
|
|
self._allow_ownership_transfer_value = None
|
|
self._allow_ownership_transfer_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(MoveBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'MoveBatchArg(entries={!r}, autorename={!r}, allow_ownership_transfer={!r})'.format(
|
|
self._entries_value,
|
|
self._autorename_value,
|
|
self._allow_ownership_transfer_value,
|
|
)
|
|
|
|
MoveBatchArg_validator = bv.Struct(MoveBatchArg)
|
|
|
|
class PhotoMetadata(MediaMetadata):
|
|
"""
|
|
Metadata for a photo.
|
|
"""
|
|
|
|
__slots__ = [
|
|
]
|
|
|
|
_has_required_fields = False
|
|
|
|
def __init__(self,
|
|
dimensions=None,
|
|
location=None,
|
|
time_taken=None):
|
|
super(PhotoMetadata, self).__init__(dimensions,
|
|
location,
|
|
time_taken)
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(PhotoMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'PhotoMetadata(dimensions={!r}, location={!r}, time_taken={!r})'.format(
|
|
self._dimensions_value,
|
|
self._location_value,
|
|
self._time_taken_value,
|
|
)
|
|
|
|
PhotoMetadata_validator = bv.Struct(PhotoMetadata)
|
|
|
|
class PreviewArg(bb.Struct):
|
|
"""
|
|
:ivar files.PreviewArg.path: The path of the file to preview.
|
|
:ivar files.PreviewArg.rev: Please specify revision in ``path`` instead.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_rev_value',
|
|
'_rev_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
rev=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if rev is not None:
|
|
self.rev = rev
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path of the file to preview.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def rev(self):
|
|
"""
|
|
Please specify revision in ``path`` instead.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._rev_present:
|
|
return self._rev_value
|
|
else:
|
|
return None
|
|
|
|
@rev.setter
|
|
def rev(self, val):
|
|
if val is None:
|
|
del self.rev
|
|
return
|
|
val = self._rev_validator.validate(val)
|
|
self._rev_value = val
|
|
self._rev_present = True
|
|
|
|
@rev.deleter
|
|
def rev(self):
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(PreviewArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'PreviewArg(path={!r}, rev={!r})'.format(
|
|
self._path_value,
|
|
self._rev_value,
|
|
)
|
|
|
|
PreviewArg_validator = bv.Struct(PreviewArg)
|
|
|
|
class PreviewError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar LookupError PreviewError.path: An error occurs when downloading
|
|
metadata for the file.
|
|
:ivar files.PreviewError.in_progress: This preview generation is still in
|
|
progress and the file is not ready for preview yet.
|
|
:ivar files.PreviewError.unsupported_extension: The file extension is not
|
|
supported preview generation.
|
|
:ivar files.PreviewError.unsupported_content: The file content is not
|
|
supported for preview generation.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
in_progress = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_extension = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_content = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: PreviewError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_in_progress(self):
|
|
"""
|
|
Check if the union tag is ``in_progress``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'in_progress'
|
|
|
|
def is_unsupported_extension(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_extension``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_extension'
|
|
|
|
def is_unsupported_content(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_content``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_content'
|
|
|
|
def get_path(self):
|
|
"""
|
|
An error occurs when downloading metadata for the file.
|
|
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(PreviewError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'PreviewError(%r, %r)' % (self._tag, self._value)
|
|
|
|
PreviewError_validator = bv.Union(PreviewError)
|
|
|
|
class RelocationPath(bb.Struct):
|
|
"""
|
|
:ivar files.RelocationPath.from_path: Path in the user's Dropbox to be
|
|
copied or moved.
|
|
:ivar files.RelocationPath.to_path: Path in the user's Dropbox that is the
|
|
destination.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_from_path_value',
|
|
'_from_path_present',
|
|
'_to_path_value',
|
|
'_to_path_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
from_path=None,
|
|
to_path=None):
|
|
self._from_path_value = None
|
|
self._from_path_present = False
|
|
self._to_path_value = None
|
|
self._to_path_present = False
|
|
if from_path is not None:
|
|
self.from_path = from_path
|
|
if to_path is not None:
|
|
self.to_path = to_path
|
|
|
|
@property
|
|
def from_path(self):
|
|
"""
|
|
Path in the user's Dropbox to be copied or moved.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._from_path_present:
|
|
return self._from_path_value
|
|
else:
|
|
raise AttributeError("missing required field 'from_path'")
|
|
|
|
@from_path.setter
|
|
def from_path(self, val):
|
|
val = self._from_path_validator.validate(val)
|
|
self._from_path_value = val
|
|
self._from_path_present = True
|
|
|
|
@from_path.deleter
|
|
def from_path(self):
|
|
self._from_path_value = None
|
|
self._from_path_present = False
|
|
|
|
@property
|
|
def to_path(self):
|
|
"""
|
|
Path in the user's Dropbox that is the destination.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._to_path_present:
|
|
return self._to_path_value
|
|
else:
|
|
raise AttributeError("missing required field 'to_path'")
|
|
|
|
@to_path.setter
|
|
def to_path(self, val):
|
|
val = self._to_path_validator.validate(val)
|
|
self._to_path_value = val
|
|
self._to_path_present = True
|
|
|
|
@to_path.deleter
|
|
def to_path(self):
|
|
self._to_path_value = None
|
|
self._to_path_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationPath, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationPath(from_path={!r}, to_path={!r})'.format(
|
|
self._from_path_value,
|
|
self._to_path_value,
|
|
)
|
|
|
|
RelocationPath_validator = bv.Struct(RelocationPath)
|
|
|
|
class RelocationArg(RelocationPath):
|
|
"""
|
|
:ivar files.RelocationArg.allow_shared_folder: If true,
|
|
:meth:`dropbox.dropbox.Dropbox.files_copy` will copy contents in shared
|
|
folder, otherwise ``RelocationError.cant_copy_shared_folder`` will be
|
|
returned if ``from_path`` contains shared folder. This field is always
|
|
true for :meth:`dropbox.dropbox.Dropbox.files_move`.
|
|
:ivar files.RelocationArg.autorename: If there's a conflict, have the
|
|
Dropbox server try to autorename the file to avoid the conflict.
|
|
:ivar files.RelocationArg.allow_ownership_transfer: Allow moves by owner
|
|
even if it would result in an ownership transfer for the content being
|
|
moved. This does not apply to copies.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_allow_shared_folder_value',
|
|
'_allow_shared_folder_present',
|
|
'_autorename_value',
|
|
'_autorename_present',
|
|
'_allow_ownership_transfer_value',
|
|
'_allow_ownership_transfer_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
from_path=None,
|
|
to_path=None,
|
|
allow_shared_folder=None,
|
|
autorename=None,
|
|
allow_ownership_transfer=None):
|
|
super(RelocationArg, self).__init__(from_path,
|
|
to_path)
|
|
self._allow_shared_folder_value = None
|
|
self._allow_shared_folder_present = False
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
self._allow_ownership_transfer_value = None
|
|
self._allow_ownership_transfer_present = False
|
|
if allow_shared_folder is not None:
|
|
self.allow_shared_folder = allow_shared_folder
|
|
if autorename is not None:
|
|
self.autorename = autorename
|
|
if allow_ownership_transfer is not None:
|
|
self.allow_ownership_transfer = allow_ownership_transfer
|
|
|
|
@property
|
|
def allow_shared_folder(self):
|
|
"""
|
|
If true, :meth:`dropbox.dropbox.Dropbox.files_copy` will copy contents
|
|
in shared folder, otherwise ``RelocationError.cant_copy_shared_folder``
|
|
will be returned if ``from_path`` contains shared folder. This field is
|
|
always true for :meth:`dropbox.dropbox.Dropbox.files_move`.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._allow_shared_folder_present:
|
|
return self._allow_shared_folder_value
|
|
else:
|
|
return False
|
|
|
|
@allow_shared_folder.setter
|
|
def allow_shared_folder(self, val):
|
|
val = self._allow_shared_folder_validator.validate(val)
|
|
self._allow_shared_folder_value = val
|
|
self._allow_shared_folder_present = True
|
|
|
|
@allow_shared_folder.deleter
|
|
def allow_shared_folder(self):
|
|
self._allow_shared_folder_value = None
|
|
self._allow_shared_folder_present = False
|
|
|
|
@property
|
|
def autorename(self):
|
|
"""
|
|
If there's a conflict, have the Dropbox server try to autorename the
|
|
file to avoid the conflict.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._autorename_present:
|
|
return self._autorename_value
|
|
else:
|
|
return False
|
|
|
|
@autorename.setter
|
|
def autorename(self, val):
|
|
val = self._autorename_validator.validate(val)
|
|
self._autorename_value = val
|
|
self._autorename_present = True
|
|
|
|
@autorename.deleter
|
|
def autorename(self):
|
|
self._autorename_value = None
|
|
self._autorename_present = False
|
|
|
|
@property
|
|
def allow_ownership_transfer(self):
|
|
"""
|
|
Allow moves by owner even if it would result in an ownership transfer
|
|
for the content being moved. This does not apply to copies.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._allow_ownership_transfer_present:
|
|
return self._allow_ownership_transfer_value
|
|
else:
|
|
return False
|
|
|
|
@allow_ownership_transfer.setter
|
|
def allow_ownership_transfer(self, val):
|
|
val = self._allow_ownership_transfer_validator.validate(val)
|
|
self._allow_ownership_transfer_value = val
|
|
self._allow_ownership_transfer_present = True
|
|
|
|
@allow_ownership_transfer.deleter
|
|
def allow_ownership_transfer(self):
|
|
self._allow_ownership_transfer_value = None
|
|
self._allow_ownership_transfer_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationArg(from_path={!r}, to_path={!r}, allow_shared_folder={!r}, autorename={!r}, allow_ownership_transfer={!r})'.format(
|
|
self._from_path_value,
|
|
self._to_path_value,
|
|
self._allow_shared_folder_value,
|
|
self._autorename_value,
|
|
self._allow_ownership_transfer_value,
|
|
)
|
|
|
|
RelocationArg_validator = bv.Struct(RelocationArg)
|
|
|
|
class RelocationBatchArg(RelocationBatchArgBase):
|
|
"""
|
|
:ivar files.RelocationBatchArg.allow_shared_folder: If true,
|
|
:meth:`dropbox.dropbox.Dropbox.files_copy_batch` will copy contents in
|
|
shared folder, otherwise ``RelocationError.cant_copy_shared_folder``
|
|
will be returned if ``RelocationPath.from_path`` contains shared folder.
|
|
This field is always true for
|
|
:meth:`dropbox.dropbox.Dropbox.files_move_batch`.
|
|
:ivar files.RelocationBatchArg.allow_ownership_transfer: Allow moves by
|
|
owner even if it would result in an ownership transfer for the content
|
|
being moved. This does not apply to copies.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_allow_shared_folder_value',
|
|
'_allow_shared_folder_present',
|
|
'_allow_ownership_transfer_value',
|
|
'_allow_ownership_transfer_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None,
|
|
autorename=None,
|
|
allow_shared_folder=None,
|
|
allow_ownership_transfer=None):
|
|
super(RelocationBatchArg, self).__init__(entries,
|
|
autorename)
|
|
self._allow_shared_folder_value = None
|
|
self._allow_shared_folder_present = False
|
|
self._allow_ownership_transfer_value = None
|
|
self._allow_ownership_transfer_present = False
|
|
if allow_shared_folder is not None:
|
|
self.allow_shared_folder = allow_shared_folder
|
|
if allow_ownership_transfer is not None:
|
|
self.allow_ownership_transfer = allow_ownership_transfer
|
|
|
|
@property
|
|
def allow_shared_folder(self):
|
|
"""
|
|
If true, :meth:`dropbox.dropbox.Dropbox.files_copy_batch` will copy
|
|
contents in shared folder, otherwise
|
|
``RelocationError.cant_copy_shared_folder`` will be returned if
|
|
``RelocationPath.from_path`` contains shared folder. This field is
|
|
always true for :meth:`dropbox.dropbox.Dropbox.files_move_batch`.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._allow_shared_folder_present:
|
|
return self._allow_shared_folder_value
|
|
else:
|
|
return False
|
|
|
|
@allow_shared_folder.setter
|
|
def allow_shared_folder(self, val):
|
|
val = self._allow_shared_folder_validator.validate(val)
|
|
self._allow_shared_folder_value = val
|
|
self._allow_shared_folder_present = True
|
|
|
|
@allow_shared_folder.deleter
|
|
def allow_shared_folder(self):
|
|
self._allow_shared_folder_value = None
|
|
self._allow_shared_folder_present = False
|
|
|
|
@property
|
|
def allow_ownership_transfer(self):
|
|
"""
|
|
Allow moves by owner even if it would result in an ownership transfer
|
|
for the content being moved. This does not apply to copies.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._allow_ownership_transfer_present:
|
|
return self._allow_ownership_transfer_value
|
|
else:
|
|
return False
|
|
|
|
@allow_ownership_transfer.setter
|
|
def allow_ownership_transfer(self, val):
|
|
val = self._allow_ownership_transfer_validator.validate(val)
|
|
self._allow_ownership_transfer_value = val
|
|
self._allow_ownership_transfer_present = True
|
|
|
|
@allow_ownership_transfer.deleter
|
|
def allow_ownership_transfer(self):
|
|
self._allow_ownership_transfer_value = None
|
|
self._allow_ownership_transfer_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchArg(entries={!r}, autorename={!r}, allow_shared_folder={!r}, allow_ownership_transfer={!r})'.format(
|
|
self._entries_value,
|
|
self._autorename_value,
|
|
self._allow_shared_folder_value,
|
|
self._allow_ownership_transfer_value,
|
|
)
|
|
|
|
RelocationBatchArg_validator = bv.Struct(RelocationBatchArg)
|
|
|
|
class RelocationError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.RelocationError.cant_copy_shared_folder: Shared folders can't be
|
|
copied.
|
|
:ivar files.RelocationError.cant_nest_shared_folder: Your move operation
|
|
would result in nested shared folders. This is not allowed.
|
|
:ivar files.RelocationError.cant_move_folder_into_itself: You cannot move a
|
|
folder into itself.
|
|
:ivar files.RelocationError.too_many_files: The operation would involve more
|
|
than 10,000 files and folders.
|
|
:ivar files.RelocationError.duplicated_or_nested_paths: There are
|
|
duplicated/nested paths among ``RelocationArg.from_path`` and
|
|
``RelocationArg.to_path``.
|
|
:ivar files.RelocationError.cant_transfer_ownership: Your move operation
|
|
would result in an ownership transfer. You may reissue the request with
|
|
the field ``RelocationArg.allow_ownership_transfer`` to true.
|
|
:ivar files.RelocationError.insufficient_quota: The current user does not
|
|
have enough space to move or copy the files.
|
|
:ivar files.RelocationError.internal_error: Something went wrong with the
|
|
job on Dropbox's end. You'll need to verify that the action you were
|
|
taking succeeded, and if not, try again. This should happen very rarely.
|
|
:ivar files.RelocationError.cant_move_shared_folder: Can't move the shared
|
|
folder to the given destination.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
cant_copy_shared_folder = None
|
|
# Attribute is overwritten below the class definition
|
|
cant_nest_shared_folder = None
|
|
# Attribute is overwritten below the class definition
|
|
cant_move_folder_into_itself = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_files = None
|
|
# Attribute is overwritten below the class definition
|
|
duplicated_or_nested_paths = None
|
|
# Attribute is overwritten below the class definition
|
|
cant_transfer_ownership = None
|
|
# Attribute is overwritten below the class definition
|
|
insufficient_quota = None
|
|
# Attribute is overwritten below the class definition
|
|
internal_error = None
|
|
# Attribute is overwritten below the class definition
|
|
cant_move_shared_folder = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def from_lookup(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``from_lookup`` tag with
|
|
value ``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: RelocationError
|
|
"""
|
|
return cls('from_lookup', val)
|
|
|
|
@classmethod
|
|
def from_write(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``from_write`` tag with
|
|
value ``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: RelocationError
|
|
"""
|
|
return cls('from_write', val)
|
|
|
|
@classmethod
|
|
def to(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``to`` tag with value
|
|
``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: RelocationError
|
|
"""
|
|
return cls('to', val)
|
|
|
|
def is_from_lookup(self):
|
|
"""
|
|
Check if the union tag is ``from_lookup``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'from_lookup'
|
|
|
|
def is_from_write(self):
|
|
"""
|
|
Check if the union tag is ``from_write``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'from_write'
|
|
|
|
def is_to(self):
|
|
"""
|
|
Check if the union tag is ``to``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'to'
|
|
|
|
def is_cant_copy_shared_folder(self):
|
|
"""
|
|
Check if the union tag is ``cant_copy_shared_folder``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'cant_copy_shared_folder'
|
|
|
|
def is_cant_nest_shared_folder(self):
|
|
"""
|
|
Check if the union tag is ``cant_nest_shared_folder``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'cant_nest_shared_folder'
|
|
|
|
def is_cant_move_folder_into_itself(self):
|
|
"""
|
|
Check if the union tag is ``cant_move_folder_into_itself``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'cant_move_folder_into_itself'
|
|
|
|
def is_too_many_files(self):
|
|
"""
|
|
Check if the union tag is ``too_many_files``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_files'
|
|
|
|
def is_duplicated_or_nested_paths(self):
|
|
"""
|
|
Check if the union tag is ``duplicated_or_nested_paths``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'duplicated_or_nested_paths'
|
|
|
|
def is_cant_transfer_ownership(self):
|
|
"""
|
|
Check if the union tag is ``cant_transfer_ownership``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'cant_transfer_ownership'
|
|
|
|
def is_insufficient_quota(self):
|
|
"""
|
|
Check if the union tag is ``insufficient_quota``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'insufficient_quota'
|
|
|
|
def is_internal_error(self):
|
|
"""
|
|
Check if the union tag is ``internal_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'internal_error'
|
|
|
|
def is_cant_move_shared_folder(self):
|
|
"""
|
|
Check if the union tag is ``cant_move_shared_folder``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'cant_move_shared_folder'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_from_lookup(self):
|
|
"""
|
|
Only call this if :meth:`is_from_lookup` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_from_lookup():
|
|
raise AttributeError("tag 'from_lookup' not set")
|
|
return self._value
|
|
|
|
def get_from_write(self):
|
|
"""
|
|
Only call this if :meth:`is_from_write` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_from_write():
|
|
raise AttributeError("tag 'from_write' not set")
|
|
return self._value
|
|
|
|
def get_to(self):
|
|
"""
|
|
Only call this if :meth:`is_to` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_to():
|
|
raise AttributeError("tag 'to' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationError(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationError_validator = bv.Union(RelocationError)
|
|
|
|
class RelocationBatchError(RelocationError):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.RelocationBatchError.too_many_write_operations: There are too
|
|
many write operations in user's Dropbox. Please retry this request.
|
|
"""
|
|
|
|
# Attribute is overwritten below the class definition
|
|
too_many_write_operations = None
|
|
|
|
def is_too_many_write_operations(self):
|
|
"""
|
|
Check if the union tag is ``too_many_write_operations``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_write_operations'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchError(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchError_validator = bv.Union(RelocationBatchError)
|
|
|
|
class RelocationBatchErrorEntry(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar RelocationError RelocationBatchErrorEntry.relocation_error: User
|
|
errors that retry won't help.
|
|
:ivar files.RelocationBatchErrorEntry.internal_error: Something went wrong
|
|
with the job on Dropbox's end. You'll need to verify that the action you
|
|
were taking succeeded, and if not, try again. This should happen very
|
|
rarely.
|
|
:ivar files.RelocationBatchErrorEntry.too_many_write_operations: There are
|
|
too many write operations in user's Dropbox. Please retry this request.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
internal_error = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_write_operations = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def relocation_error(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``relocation_error`` tag
|
|
with value ``val``.
|
|
|
|
:param RelocationError val:
|
|
:rtype: RelocationBatchErrorEntry
|
|
"""
|
|
return cls('relocation_error', val)
|
|
|
|
def is_relocation_error(self):
|
|
"""
|
|
Check if the union tag is ``relocation_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'relocation_error'
|
|
|
|
def is_internal_error(self):
|
|
"""
|
|
Check if the union tag is ``internal_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'internal_error'
|
|
|
|
def is_too_many_write_operations(self):
|
|
"""
|
|
Check if the union tag is ``too_many_write_operations``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_write_operations'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_relocation_error(self):
|
|
"""
|
|
User errors that retry won't help.
|
|
|
|
Only call this if :meth:`is_relocation_error` is true.
|
|
|
|
:rtype: RelocationError
|
|
"""
|
|
if not self.is_relocation_error():
|
|
raise AttributeError("tag 'relocation_error' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchErrorEntry, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchErrorEntry(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchErrorEntry_validator = bv.Union(RelocationBatchErrorEntry)
|
|
|
|
class RelocationBatchJobStatus(async_.PollResultBase):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar RelocationBatchResult RelocationBatchJobStatus.complete: The copy or
|
|
move batch job has finished.
|
|
:ivar RelocationBatchError RelocationBatchJobStatus.failed: The copy or move
|
|
batch job has failed with exception.
|
|
"""
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param RelocationBatchResult val:
|
|
:rtype: RelocationBatchJobStatus
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
@classmethod
|
|
def failed(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failed`` tag with value
|
|
``val``.
|
|
|
|
:param RelocationBatchError val:
|
|
:rtype: RelocationBatchJobStatus
|
|
"""
|
|
return cls('failed', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_failed(self):
|
|
"""
|
|
Check if the union tag is ``failed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failed'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
The copy or move batch job has finished.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: RelocationBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def get_failed(self):
|
|
"""
|
|
The copy or move batch job has failed with exception.
|
|
|
|
Only call this if :meth:`is_failed` is true.
|
|
|
|
:rtype: RelocationBatchError
|
|
"""
|
|
if not self.is_failed():
|
|
raise AttributeError("tag 'failed' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchJobStatus(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchJobStatus_validator = bv.Union(RelocationBatchJobStatus)
|
|
|
|
class RelocationBatchLaunch(async_.LaunchResultBase):
|
|
"""
|
|
Result returned by :meth:`dropbox.dropbox.Dropbox.files_copy_batch` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_move_batch` that may either launch an
|
|
asynchronous job or complete synchronously.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param RelocationBatchResult val:
|
|
:rtype: RelocationBatchLaunch
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: RelocationBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchLaunch(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchLaunch_validator = bv.Union(RelocationBatchLaunch)
|
|
|
|
class RelocationBatchResult(FileOpsResult):
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
super(RelocationBatchResult, self).__init__()
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
:rtype: list of [RelocationBatchResultData]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchResult(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
RelocationBatchResult_validator = bv.Struct(RelocationBatchResult)
|
|
|
|
class RelocationBatchResultData(bb.Struct):
|
|
"""
|
|
:ivar files.RelocationBatchResultData.metadata: Metadata of the relocated
|
|
object.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the relocated object.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchResultData, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchResultData(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
RelocationBatchResultData_validator = bv.Struct(RelocationBatchResultData)
|
|
|
|
class RelocationBatchResultEntry(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def success(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``success`` tag with value
|
|
``val``.
|
|
|
|
:param Metadata val:
|
|
:rtype: RelocationBatchResultEntry
|
|
"""
|
|
return cls('success', val)
|
|
|
|
@classmethod
|
|
def failure(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failure`` tag with value
|
|
``val``.
|
|
|
|
:param RelocationBatchErrorEntry val:
|
|
:rtype: RelocationBatchResultEntry
|
|
"""
|
|
return cls('failure', val)
|
|
|
|
def is_success(self):
|
|
"""
|
|
Check if the union tag is ``success``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'success'
|
|
|
|
def is_failure(self):
|
|
"""
|
|
Check if the union tag is ``failure``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failure'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_success(self):
|
|
"""
|
|
Only call this if :meth:`is_success` is true.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if not self.is_success():
|
|
raise AttributeError("tag 'success' not set")
|
|
return self._value
|
|
|
|
def get_failure(self):
|
|
"""
|
|
Only call this if :meth:`is_failure` is true.
|
|
|
|
:rtype: RelocationBatchErrorEntry
|
|
"""
|
|
if not self.is_failure():
|
|
raise AttributeError("tag 'failure' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchResultEntry(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchResultEntry_validator = bv.Union(RelocationBatchResultEntry)
|
|
|
|
class RelocationBatchV2JobStatus(async_.PollResultBase):
|
|
"""
|
|
Result returned by :meth:`dropbox.dropbox.Dropbox.files_copy_batch_check` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_move_batch_check` that may either be in
|
|
progress or completed with result for each entry.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar RelocationBatchV2Result RelocationBatchV2JobStatus.complete: The copy
|
|
or move batch job has finished.
|
|
"""
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param RelocationBatchV2Result val:
|
|
:rtype: RelocationBatchV2JobStatus
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
The copy or move batch job has finished.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: RelocationBatchV2Result
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchV2JobStatus, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchV2JobStatus(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchV2JobStatus_validator = bv.Union(RelocationBatchV2JobStatus)
|
|
|
|
class RelocationBatchV2Launch(async_.LaunchResultBase):
|
|
"""
|
|
Result returned by :meth:`dropbox.dropbox.Dropbox.files_copy_batch` or
|
|
:meth:`dropbox.dropbox.Dropbox.files_move_batch` that may either launch an
|
|
asynchronous job or complete synchronously.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param RelocationBatchV2Result val:
|
|
:rtype: RelocationBatchV2Launch
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: RelocationBatchV2Result
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchV2Launch, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchV2Launch(%r, %r)' % (self._tag, self._value)
|
|
|
|
RelocationBatchV2Launch_validator = bv.Union(RelocationBatchV2Launch)
|
|
|
|
class RelocationBatchV2Result(FileOpsResult):
|
|
"""
|
|
:ivar files.RelocationBatchV2Result.entries: Each entry in
|
|
CopyBatchArg.entries or ``MoveBatchArg.entries`` will appear at the same
|
|
position inside ``RelocationBatchV2Result.entries``.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
super(RelocationBatchV2Result, self).__init__()
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
Each entry in CopyBatchArg.entries or ``MoveBatchArg.entries`` will
|
|
appear at the same position inside ``RelocationBatchV2Result.entries``.
|
|
|
|
:rtype: list of [RelocationBatchResultEntry]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationBatchV2Result, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationBatchV2Result(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
RelocationBatchV2Result_validator = bv.Struct(RelocationBatchV2Result)
|
|
|
|
class RelocationResult(FileOpsResult):
|
|
"""
|
|
:ivar files.RelocationResult.metadata: Metadata of the relocated object.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
super(RelocationResult, self).__init__()
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
Metadata of the relocated object.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RelocationResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RelocationResult(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
RelocationResult_validator = bv.Struct(RelocationResult)
|
|
|
|
class RestoreArg(bb.Struct):
|
|
"""
|
|
:ivar files.RestoreArg.path: The path to save the restored file.
|
|
:ivar files.RestoreArg.rev: The revision to restore.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_rev_value',
|
|
'_rev_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
rev=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if rev is not None:
|
|
self.rev = rev
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path to save the restored file.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def rev(self):
|
|
"""
|
|
The revision to restore.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._rev_present:
|
|
return self._rev_value
|
|
else:
|
|
raise AttributeError("missing required field 'rev'")
|
|
|
|
@rev.setter
|
|
def rev(self, val):
|
|
val = self._rev_validator.validate(val)
|
|
self._rev_value = val
|
|
self._rev_present = True
|
|
|
|
@rev.deleter
|
|
def rev(self):
|
|
self._rev_value = None
|
|
self._rev_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RestoreArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RestoreArg(path={!r}, rev={!r})'.format(
|
|
self._path_value,
|
|
self._rev_value,
|
|
)
|
|
|
|
RestoreArg_validator = bv.Struct(RestoreArg)
|
|
|
|
class RestoreError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar LookupError RestoreError.path_lookup: An error occurs when downloading
|
|
metadata for the file.
|
|
:ivar WriteError RestoreError.path_write: An error occurs when trying to
|
|
restore the file to that path.
|
|
:ivar files.RestoreError.invalid_revision: The revision is invalid. It may
|
|
not exist.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
invalid_revision = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path_lookup(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path_lookup`` tag with
|
|
value ``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: RestoreError
|
|
"""
|
|
return cls('path_lookup', val)
|
|
|
|
@classmethod
|
|
def path_write(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path_write`` tag with
|
|
value ``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: RestoreError
|
|
"""
|
|
return cls('path_write', val)
|
|
|
|
def is_path_lookup(self):
|
|
"""
|
|
Check if the union tag is ``path_lookup``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path_lookup'
|
|
|
|
def is_path_write(self):
|
|
"""
|
|
Check if the union tag is ``path_write``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path_write'
|
|
|
|
def is_invalid_revision(self):
|
|
"""
|
|
Check if the union tag is ``invalid_revision``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'invalid_revision'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path_lookup(self):
|
|
"""
|
|
An error occurs when downloading metadata for the file.
|
|
|
|
Only call this if :meth:`is_path_lookup` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path_lookup():
|
|
raise AttributeError("tag 'path_lookup' not set")
|
|
return self._value
|
|
|
|
def get_path_write(self):
|
|
"""
|
|
An error occurs when trying to restore the file to that path.
|
|
|
|
Only call this if :meth:`is_path_write` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path_write():
|
|
raise AttributeError("tag 'path_write' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(RestoreError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'RestoreError(%r, %r)' % (self._tag, self._value)
|
|
|
|
RestoreError_validator = bv.Union(RestoreError)
|
|
|
|
class SaveCopyReferenceArg(bb.Struct):
|
|
"""
|
|
:ivar files.SaveCopyReferenceArg.copy_reference: A copy reference returned
|
|
by :meth:`dropbox.dropbox.Dropbox.files_copy_reference_get`.
|
|
:ivar files.SaveCopyReferenceArg.path: Path in the user's Dropbox that is
|
|
the destination.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_copy_reference_value',
|
|
'_copy_reference_present',
|
|
'_path_value',
|
|
'_path_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
copy_reference=None,
|
|
path=None):
|
|
self._copy_reference_value = None
|
|
self._copy_reference_present = False
|
|
self._path_value = None
|
|
self._path_present = False
|
|
if copy_reference is not None:
|
|
self.copy_reference = copy_reference
|
|
if path is not None:
|
|
self.path = path
|
|
|
|
@property
|
|
def copy_reference(self):
|
|
"""
|
|
A copy reference returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_copy_reference_get`.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._copy_reference_present:
|
|
return self._copy_reference_value
|
|
else:
|
|
raise AttributeError("missing required field 'copy_reference'")
|
|
|
|
@copy_reference.setter
|
|
def copy_reference(self, val):
|
|
val = self._copy_reference_validator.validate(val)
|
|
self._copy_reference_value = val
|
|
self._copy_reference_present = True
|
|
|
|
@copy_reference.deleter
|
|
def copy_reference(self):
|
|
self._copy_reference_value = None
|
|
self._copy_reference_present = False
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
Path in the user's Dropbox that is the destination.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveCopyReferenceArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveCopyReferenceArg(copy_reference={!r}, path={!r})'.format(
|
|
self._copy_reference_value,
|
|
self._path_value,
|
|
)
|
|
|
|
SaveCopyReferenceArg_validator = bv.Struct(SaveCopyReferenceArg)
|
|
|
|
class SaveCopyReferenceError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SaveCopyReferenceError.invalid_copy_reference: The copy
|
|
reference is invalid.
|
|
:ivar files.SaveCopyReferenceError.no_permission: You don't have permission
|
|
to save the given copy reference. Please make sure this app is same app
|
|
which created the copy reference and the source user is still linked to
|
|
the app.
|
|
:ivar files.SaveCopyReferenceError.not_found: The file referenced by the
|
|
copy reference cannot be found.
|
|
:ivar files.SaveCopyReferenceError.too_many_files: The operation would
|
|
involve more than 10,000 files and folders.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
invalid_copy_reference = None
|
|
# Attribute is overwritten below the class definition
|
|
no_permission = None
|
|
# Attribute is overwritten below the class definition
|
|
not_found = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_files = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: SaveCopyReferenceError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_invalid_copy_reference(self):
|
|
"""
|
|
Check if the union tag is ``invalid_copy_reference``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'invalid_copy_reference'
|
|
|
|
def is_no_permission(self):
|
|
"""
|
|
Check if the union tag is ``no_permission``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'no_permission'
|
|
|
|
def is_not_found(self):
|
|
"""
|
|
Check if the union tag is ``not_found``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_found'
|
|
|
|
def is_too_many_files(self):
|
|
"""
|
|
Check if the union tag is ``too_many_files``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_files'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveCopyReferenceError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveCopyReferenceError(%r, %r)' % (self._tag, self._value)
|
|
|
|
SaveCopyReferenceError_validator = bv.Union(SaveCopyReferenceError)
|
|
|
|
class SaveCopyReferenceResult(bb.Struct):
|
|
"""
|
|
:ivar files.SaveCopyReferenceResult.metadata: The metadata of the saved file
|
|
or folder in the user's Dropbox.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
metadata=None):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
The metadata of the saved file or folder in the user's Dropbox.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveCopyReferenceResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveCopyReferenceResult(metadata={!r})'.format(
|
|
self._metadata_value,
|
|
)
|
|
|
|
SaveCopyReferenceResult_validator = bv.Struct(SaveCopyReferenceResult)
|
|
|
|
class SaveUrlArg(bb.Struct):
|
|
"""
|
|
:ivar files.SaveUrlArg.path: The path in Dropbox where the URL will be saved
|
|
to.
|
|
:ivar files.SaveUrlArg.url: The URL to be saved.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_url_value',
|
|
'_url_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
url=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._url_value = None
|
|
self._url_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if url is not None:
|
|
self.url = url
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path in Dropbox where the URL will be saved to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def url(self):
|
|
"""
|
|
The URL to be saved.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._url_present:
|
|
return self._url_value
|
|
else:
|
|
raise AttributeError("missing required field 'url'")
|
|
|
|
@url.setter
|
|
def url(self, val):
|
|
val = self._url_validator.validate(val)
|
|
self._url_value = val
|
|
self._url_present = True
|
|
|
|
@url.deleter
|
|
def url(self):
|
|
self._url_value = None
|
|
self._url_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveUrlArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveUrlArg(path={!r}, url={!r})'.format(
|
|
self._path_value,
|
|
self._url_value,
|
|
)
|
|
|
|
SaveUrlArg_validator = bv.Struct(SaveUrlArg)
|
|
|
|
class SaveUrlError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SaveUrlError.download_failed: Failed downloading the given URL.
|
|
The url may be password-protected / the password provided was incorrect.
|
|
:ivar files.SaveUrlError.invalid_url: The given URL is invalid.
|
|
:ivar files.SaveUrlError.not_found: The file where the URL is saved to no
|
|
longer exists.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
download_failed = None
|
|
# Attribute is overwritten below the class definition
|
|
invalid_url = None
|
|
# Attribute is overwritten below the class definition
|
|
not_found = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: SaveUrlError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_download_failed(self):
|
|
"""
|
|
Check if the union tag is ``download_failed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'download_failed'
|
|
|
|
def is_invalid_url(self):
|
|
"""
|
|
Check if the union tag is ``invalid_url``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'invalid_url'
|
|
|
|
def is_not_found(self):
|
|
"""
|
|
Check if the union tag is ``not_found``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_found'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveUrlError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveUrlError(%r, %r)' % (self._tag, self._value)
|
|
|
|
SaveUrlError_validator = bv.Union(SaveUrlError)
|
|
|
|
class SaveUrlJobStatus(async_.PollResultBase):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar FileMetadata SaveUrlJobStatus.complete: Metadata of the file where the
|
|
URL is saved to.
|
|
"""
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param FileMetadata val:
|
|
:rtype: SaveUrlJobStatus
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
@classmethod
|
|
def failed(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failed`` tag with value
|
|
``val``.
|
|
|
|
:param SaveUrlError val:
|
|
:rtype: SaveUrlJobStatus
|
|
"""
|
|
return cls('failed', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_failed(self):
|
|
"""
|
|
Check if the union tag is ``failed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failed'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Metadata of the file where the URL is saved to.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: FileMetadata
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def get_failed(self):
|
|
"""
|
|
Only call this if :meth:`is_failed` is true.
|
|
|
|
:rtype: SaveUrlError
|
|
"""
|
|
if not self.is_failed():
|
|
raise AttributeError("tag 'failed' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveUrlJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveUrlJobStatus(%r, %r)' % (self._tag, self._value)
|
|
|
|
SaveUrlJobStatus_validator = bv.Union(SaveUrlJobStatus)
|
|
|
|
class SaveUrlResult(async_.LaunchResultBase):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar FileMetadata SaveUrlResult.complete: Metadata of the file where the
|
|
URL is saved to.
|
|
"""
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param FileMetadata val:
|
|
:rtype: SaveUrlResult
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Metadata of the file where the URL is saved to.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: FileMetadata
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SaveUrlResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SaveUrlResult(%r, %r)' % (self._tag, self._value)
|
|
|
|
SaveUrlResult_validator = bv.Union(SaveUrlResult)
|
|
|
|
class SearchArg(bb.Struct):
|
|
"""
|
|
:ivar files.SearchArg.path: The path in the user's Dropbox to search. Should
|
|
probably be a folder.
|
|
:ivar files.SearchArg.query: The string to search for. The search string is
|
|
split on spaces into multiple tokens. For file name searching, the last
|
|
token is used for prefix matching (i.e. "bat c" matches "bat cave" but
|
|
not "batman car").
|
|
:ivar files.SearchArg.start: The starting index within the search results
|
|
(used for paging).
|
|
:ivar files.SearchArg.max_results: The maximum number of search results to
|
|
return.
|
|
:ivar files.SearchArg.mode: The search mode (filename, filename_and_content,
|
|
or deleted_filename). Note that searching file content is only available
|
|
for Dropbox Business accounts.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_query_value',
|
|
'_query_present',
|
|
'_start_value',
|
|
'_start_present',
|
|
'_max_results_value',
|
|
'_max_results_present',
|
|
'_mode_value',
|
|
'_mode_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
query=None,
|
|
start=None,
|
|
max_results=None,
|
|
mode=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._query_value = None
|
|
self._query_present = False
|
|
self._start_value = None
|
|
self._start_present = False
|
|
self._max_results_value = None
|
|
self._max_results_present = False
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if query is not None:
|
|
self.query = query
|
|
if start is not None:
|
|
self.start = start
|
|
if max_results is not None:
|
|
self.max_results = max_results
|
|
if mode is not None:
|
|
self.mode = mode
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path in the user's Dropbox to search. Should probably be a folder.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def query(self):
|
|
"""
|
|
The string to search for. The search string is split on spaces into
|
|
multiple tokens. For file name searching, the last token is used for
|
|
prefix matching (i.e. "bat c" matches "bat cave" but not "batman car").
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._query_present:
|
|
return self._query_value
|
|
else:
|
|
raise AttributeError("missing required field 'query'")
|
|
|
|
@query.setter
|
|
def query(self, val):
|
|
val = self._query_validator.validate(val)
|
|
self._query_value = val
|
|
self._query_present = True
|
|
|
|
@query.deleter
|
|
def query(self):
|
|
self._query_value = None
|
|
self._query_present = False
|
|
|
|
@property
|
|
def start(self):
|
|
"""
|
|
The starting index within the search results (used for paging).
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._start_present:
|
|
return self._start_value
|
|
else:
|
|
return 0
|
|
|
|
@start.setter
|
|
def start(self, val):
|
|
val = self._start_validator.validate(val)
|
|
self._start_value = val
|
|
self._start_present = True
|
|
|
|
@start.deleter
|
|
def start(self):
|
|
self._start_value = None
|
|
self._start_present = False
|
|
|
|
@property
|
|
def max_results(self):
|
|
"""
|
|
The maximum number of search results to return.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._max_results_present:
|
|
return self._max_results_value
|
|
else:
|
|
return 100
|
|
|
|
@max_results.setter
|
|
def max_results(self, val):
|
|
val = self._max_results_validator.validate(val)
|
|
self._max_results_value = val
|
|
self._max_results_present = True
|
|
|
|
@max_results.deleter
|
|
def max_results(self):
|
|
self._max_results_value = None
|
|
self._max_results_present = False
|
|
|
|
@property
|
|
def mode(self):
|
|
"""
|
|
The search mode (filename, filename_and_content, or deleted_filename).
|
|
Note that searching file content is only available for Dropbox Business
|
|
accounts.
|
|
|
|
:rtype: SearchMode
|
|
"""
|
|
if self._mode_present:
|
|
return self._mode_value
|
|
else:
|
|
return SearchMode.filename
|
|
|
|
@mode.setter
|
|
def mode(self, val):
|
|
self._mode_validator.validate_type_only(val)
|
|
self._mode_value = val
|
|
self._mode_present = True
|
|
|
|
@mode.deleter
|
|
def mode(self):
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SearchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SearchArg(path={!r}, query={!r}, start={!r}, max_results={!r}, mode={!r})'.format(
|
|
self._path_value,
|
|
self._query_value,
|
|
self._start_value,
|
|
self._max_results_value,
|
|
self._mode_value,
|
|
)
|
|
|
|
SearchArg_validator = bv.Struct(SearchArg)
|
|
|
|
class SearchError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: SearchError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SearchError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SearchError(%r, %r)' % (self._tag, self._value)
|
|
|
|
SearchError_validator = bv.Union(SearchError)
|
|
|
|
class SearchMatch(bb.Struct):
|
|
"""
|
|
:ivar files.SearchMatch.match_type: The type of the match.
|
|
:ivar files.SearchMatch.metadata: The metadata for the matched file or
|
|
folder.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_match_type_value',
|
|
'_match_type_present',
|
|
'_metadata_value',
|
|
'_metadata_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
match_type=None,
|
|
metadata=None):
|
|
self._match_type_value = None
|
|
self._match_type_present = False
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
if match_type is not None:
|
|
self.match_type = match_type
|
|
if metadata is not None:
|
|
self.metadata = metadata
|
|
|
|
@property
|
|
def match_type(self):
|
|
"""
|
|
The type of the match.
|
|
|
|
:rtype: SearchMatchType
|
|
"""
|
|
if self._match_type_present:
|
|
return self._match_type_value
|
|
else:
|
|
raise AttributeError("missing required field 'match_type'")
|
|
|
|
@match_type.setter
|
|
def match_type(self, val):
|
|
self._match_type_validator.validate_type_only(val)
|
|
self._match_type_value = val
|
|
self._match_type_present = True
|
|
|
|
@match_type.deleter
|
|
def match_type(self):
|
|
self._match_type_value = None
|
|
self._match_type_present = False
|
|
|
|
@property
|
|
def metadata(self):
|
|
"""
|
|
The metadata for the matched file or folder.
|
|
|
|
:rtype: Metadata
|
|
"""
|
|
if self._metadata_present:
|
|
return self._metadata_value
|
|
else:
|
|
raise AttributeError("missing required field 'metadata'")
|
|
|
|
@metadata.setter
|
|
def metadata(self, val):
|
|
self._metadata_validator.validate_type_only(val)
|
|
self._metadata_value = val
|
|
self._metadata_present = True
|
|
|
|
@metadata.deleter
|
|
def metadata(self):
|
|
self._metadata_value = None
|
|
self._metadata_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SearchMatch, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SearchMatch(match_type={!r}, metadata={!r})'.format(
|
|
self._match_type_value,
|
|
self._metadata_value,
|
|
)
|
|
|
|
SearchMatch_validator = bv.Struct(SearchMatch)
|
|
|
|
class SearchMatchType(bb.Union):
|
|
"""
|
|
Indicates what type of match was found for a given item.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SearchMatchType.filename: This item was matched on its file or
|
|
folder name.
|
|
:ivar files.SearchMatchType.content: This item was matched based on its file
|
|
contents.
|
|
:ivar files.SearchMatchType.both: This item was matched based on both its
|
|
contents and its file name.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
filename = None
|
|
# Attribute is overwritten below the class definition
|
|
content = None
|
|
# Attribute is overwritten below the class definition
|
|
both = None
|
|
|
|
def is_filename(self):
|
|
"""
|
|
Check if the union tag is ``filename``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'filename'
|
|
|
|
def is_content(self):
|
|
"""
|
|
Check if the union tag is ``content``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'content'
|
|
|
|
def is_both(self):
|
|
"""
|
|
Check if the union tag is ``both``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'both'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SearchMatchType, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SearchMatchType(%r, %r)' % (self._tag, self._value)
|
|
|
|
SearchMatchType_validator = bv.Union(SearchMatchType)
|
|
|
|
class SearchMode(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SearchMode.filename: Search file and folder names.
|
|
:ivar files.SearchMode.filename_and_content: Search file and folder names as
|
|
well as file contents.
|
|
:ivar files.SearchMode.deleted_filename: Search for deleted file and folder
|
|
names.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
filename = None
|
|
# Attribute is overwritten below the class definition
|
|
filename_and_content = None
|
|
# Attribute is overwritten below the class definition
|
|
deleted_filename = None
|
|
|
|
def is_filename(self):
|
|
"""
|
|
Check if the union tag is ``filename``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'filename'
|
|
|
|
def is_filename_and_content(self):
|
|
"""
|
|
Check if the union tag is ``filename_and_content``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'filename_and_content'
|
|
|
|
def is_deleted_filename(self):
|
|
"""
|
|
Check if the union tag is ``deleted_filename``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'deleted_filename'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SearchMode, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SearchMode(%r, %r)' % (self._tag, self._value)
|
|
|
|
SearchMode_validator = bv.Union(SearchMode)
|
|
|
|
class SearchResult(bb.Struct):
|
|
"""
|
|
:ivar files.SearchResult.matches: A list (possibly empty) of matches for the
|
|
query.
|
|
:ivar files.SearchResult.more: Used for paging. If true, indicates there is
|
|
another page of results available that can be fetched by calling
|
|
:meth:`dropbox.dropbox.Dropbox.files_search` again.
|
|
:ivar files.SearchResult.start: Used for paging. Value to set the start
|
|
argument to when calling :meth:`dropbox.dropbox.Dropbox.files_search` to
|
|
fetch the next page of results.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_matches_value',
|
|
'_matches_present',
|
|
'_more_value',
|
|
'_more_present',
|
|
'_start_value',
|
|
'_start_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
matches=None,
|
|
more=None,
|
|
start=None):
|
|
self._matches_value = None
|
|
self._matches_present = False
|
|
self._more_value = None
|
|
self._more_present = False
|
|
self._start_value = None
|
|
self._start_present = False
|
|
if matches is not None:
|
|
self.matches = matches
|
|
if more is not None:
|
|
self.more = more
|
|
if start is not None:
|
|
self.start = start
|
|
|
|
@property
|
|
def matches(self):
|
|
"""
|
|
A list (possibly empty) of matches for the query.
|
|
|
|
:rtype: list of [SearchMatch]
|
|
"""
|
|
if self._matches_present:
|
|
return self._matches_value
|
|
else:
|
|
raise AttributeError("missing required field 'matches'")
|
|
|
|
@matches.setter
|
|
def matches(self, val):
|
|
val = self._matches_validator.validate(val)
|
|
self._matches_value = val
|
|
self._matches_present = True
|
|
|
|
@matches.deleter
|
|
def matches(self):
|
|
self._matches_value = None
|
|
self._matches_present = False
|
|
|
|
@property
|
|
def more(self):
|
|
"""
|
|
Used for paging. If true, indicates there is another page of results
|
|
available that can be fetched by calling
|
|
:meth:`dropbox.dropbox.Dropbox.files_search` again.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._more_present:
|
|
return self._more_value
|
|
else:
|
|
raise AttributeError("missing required field 'more'")
|
|
|
|
@more.setter
|
|
def more(self, val):
|
|
val = self._more_validator.validate(val)
|
|
self._more_value = val
|
|
self._more_present = True
|
|
|
|
@more.deleter
|
|
def more(self):
|
|
self._more_value = None
|
|
self._more_present = False
|
|
|
|
@property
|
|
def start(self):
|
|
"""
|
|
Used for paging. Value to set the start argument to when calling
|
|
:meth:`dropbox.dropbox.Dropbox.files_search` to fetch the next page of
|
|
results.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._start_present:
|
|
return self._start_value
|
|
else:
|
|
raise AttributeError("missing required field 'start'")
|
|
|
|
@start.setter
|
|
def start(self, val):
|
|
val = self._start_validator.validate(val)
|
|
self._start_value = val
|
|
self._start_present = True
|
|
|
|
@start.deleter
|
|
def start(self):
|
|
self._start_value = None
|
|
self._start_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SearchResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SearchResult(matches={!r}, more={!r}, start={!r})'.format(
|
|
self._matches_value,
|
|
self._more_value,
|
|
self._start_value,
|
|
)
|
|
|
|
SearchResult_validator = bv.Struct(SearchResult)
|
|
|
|
class SharedLink(bb.Struct):
|
|
"""
|
|
:ivar files.SharedLink.url: Shared link url.
|
|
:ivar files.SharedLink.password: Password for the shared link.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_url_value',
|
|
'_url_present',
|
|
'_password_value',
|
|
'_password_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
url=None,
|
|
password=None):
|
|
self._url_value = None
|
|
self._url_present = False
|
|
self._password_value = None
|
|
self._password_present = False
|
|
if url is not None:
|
|
self.url = url
|
|
if password is not None:
|
|
self.password = password
|
|
|
|
@property
|
|
def url(self):
|
|
"""
|
|
Shared link url.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._url_present:
|
|
return self._url_value
|
|
else:
|
|
raise AttributeError("missing required field 'url'")
|
|
|
|
@url.setter
|
|
def url(self, val):
|
|
val = self._url_validator.validate(val)
|
|
self._url_value = val
|
|
self._url_present = True
|
|
|
|
@url.deleter
|
|
def url(self):
|
|
self._url_value = None
|
|
self._url_present = False
|
|
|
|
@property
|
|
def password(self):
|
|
"""
|
|
Password for the shared link.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._password_present:
|
|
return self._password_value
|
|
else:
|
|
return None
|
|
|
|
@password.setter
|
|
def password(self, val):
|
|
if val is None:
|
|
del self.password
|
|
return
|
|
val = self._password_validator.validate(val)
|
|
self._password_value = val
|
|
self._password_present = True
|
|
|
|
@password.deleter
|
|
def password(self):
|
|
self._password_value = None
|
|
self._password_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SharedLink, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SharedLink(url={!r}, password={!r})'.format(
|
|
self._url_value,
|
|
self._password_value,
|
|
)
|
|
|
|
SharedLink_validator = bv.Struct(SharedLink)
|
|
|
|
class SymlinkInfo(bb.Struct):
|
|
"""
|
|
:ivar files.SymlinkInfo.target: The target this symlink points to.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_target_value',
|
|
'_target_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
target=None):
|
|
self._target_value = None
|
|
self._target_present = False
|
|
if target is not None:
|
|
self.target = target
|
|
|
|
@property
|
|
def target(self):
|
|
"""
|
|
The target this symlink points to.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._target_present:
|
|
return self._target_value
|
|
else:
|
|
raise AttributeError("missing required field 'target'")
|
|
|
|
@target.setter
|
|
def target(self, val):
|
|
val = self._target_validator.validate(val)
|
|
self._target_value = val
|
|
self._target_present = True
|
|
|
|
@target.deleter
|
|
def target(self):
|
|
self._target_value = None
|
|
self._target_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SymlinkInfo, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SymlinkInfo(target={!r})'.format(
|
|
self._target_value,
|
|
)
|
|
|
|
SymlinkInfo_validator = bv.Struct(SymlinkInfo)
|
|
|
|
class SyncSetting(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SyncSetting.default: On first sync to members' computers, the
|
|
specified folder will follow its parent folder's setting or otherwise
|
|
follow default sync behavior.
|
|
:ivar files.SyncSetting.not_synced: On first sync to members' computers, the
|
|
specified folder will be set to not sync with selective sync.
|
|
:ivar files.SyncSetting.not_synced_inactive: The specified folder's
|
|
not_synced setting is inactive due to its location or other
|
|
configuration changes. It will follow its parent folder's setting.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
default = None
|
|
# Attribute is overwritten below the class definition
|
|
not_synced = None
|
|
# Attribute is overwritten below the class definition
|
|
not_synced_inactive = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_default(self):
|
|
"""
|
|
Check if the union tag is ``default``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'default'
|
|
|
|
def is_not_synced(self):
|
|
"""
|
|
Check if the union tag is ``not_synced``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_synced'
|
|
|
|
def is_not_synced_inactive(self):
|
|
"""
|
|
Check if the union tag is ``not_synced_inactive``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_synced_inactive'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SyncSetting, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SyncSetting(%r, %r)' % (self._tag, self._value)
|
|
|
|
SyncSetting_validator = bv.Union(SyncSetting)
|
|
|
|
class SyncSettingArg(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SyncSettingArg.default: On first sync to members' computers, the
|
|
specified folder will follow its parent folder's setting or otherwise
|
|
follow default sync behavior.
|
|
:ivar files.SyncSettingArg.not_synced: On first sync to members' computers,
|
|
the specified folder will be set to not sync with selective sync.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
default = None
|
|
# Attribute is overwritten below the class definition
|
|
not_synced = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_default(self):
|
|
"""
|
|
Check if the union tag is ``default``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'default'
|
|
|
|
def is_not_synced(self):
|
|
"""
|
|
Check if the union tag is ``not_synced``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_synced'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SyncSettingArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SyncSettingArg(%r, %r)' % (self._tag, self._value)
|
|
|
|
SyncSettingArg_validator = bv.Union(SyncSettingArg)
|
|
|
|
class SyncSettingsError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.SyncSettingsError.unsupported_combination: Setting this
|
|
combination of sync settings simultaneously is not supported.
|
|
:ivar files.SyncSettingsError.unsupported_configuration: The specified
|
|
configuration is not supported.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_combination = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_configuration = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: SyncSettingsError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_unsupported_combination(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_combination``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_combination'
|
|
|
|
def is_unsupported_configuration(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_configuration``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_configuration'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(SyncSettingsError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'SyncSettingsError(%r, %r)' % (self._tag, self._value)
|
|
|
|
SyncSettingsError_validator = bv.Union(SyncSettingsError)
|
|
|
|
class ThumbnailArg(bb.Struct):
|
|
"""
|
|
:ivar files.ThumbnailArg.path: The path to the image file you want to
|
|
thumbnail.
|
|
:ivar files.ThumbnailArg.format: The format for the thumbnail image, jpeg
|
|
(default) or png. For images that are photos, jpeg should be preferred,
|
|
while png is better for screenshots and digital arts.
|
|
:ivar files.ThumbnailArg.size: The size for the thumbnail image.
|
|
:ivar files.ThumbnailArg.mode: How to resize and crop the image to achieve
|
|
the desired size.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_path_value',
|
|
'_path_present',
|
|
'_format_value',
|
|
'_format_present',
|
|
'_size_value',
|
|
'_size_present',
|
|
'_mode_value',
|
|
'_mode_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
path=None,
|
|
format=None,
|
|
size=None,
|
|
mode=None):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
self._format_value = None
|
|
self._format_present = False
|
|
self._size_value = None
|
|
self._size_present = False
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
if path is not None:
|
|
self.path = path
|
|
if format is not None:
|
|
self.format = format
|
|
if size is not None:
|
|
self.size = size
|
|
if mode is not None:
|
|
self.mode = mode
|
|
|
|
@property
|
|
def path(self):
|
|
"""
|
|
The path to the image file you want to thumbnail.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._path_present:
|
|
return self._path_value
|
|
else:
|
|
raise AttributeError("missing required field 'path'")
|
|
|
|
@path.setter
|
|
def path(self, val):
|
|
val = self._path_validator.validate(val)
|
|
self._path_value = val
|
|
self._path_present = True
|
|
|
|
@path.deleter
|
|
def path(self):
|
|
self._path_value = None
|
|
self._path_present = False
|
|
|
|
@property
|
|
def format(self):
|
|
"""
|
|
The format for the thumbnail image, jpeg (default) or png. For images
|
|
that are photos, jpeg should be preferred, while png is better for
|
|
screenshots and digital arts.
|
|
|
|
:rtype: ThumbnailFormat
|
|
"""
|
|
if self._format_present:
|
|
return self._format_value
|
|
else:
|
|
return ThumbnailFormat.jpeg
|
|
|
|
@format.setter
|
|
def format(self, val):
|
|
self._format_validator.validate_type_only(val)
|
|
self._format_value = val
|
|
self._format_present = True
|
|
|
|
@format.deleter
|
|
def format(self):
|
|
self._format_value = None
|
|
self._format_present = False
|
|
|
|
@property
|
|
def size(self):
|
|
"""
|
|
The size for the thumbnail image.
|
|
|
|
:rtype: ThumbnailSize
|
|
"""
|
|
if self._size_present:
|
|
return self._size_value
|
|
else:
|
|
return ThumbnailSize.w64h64
|
|
|
|
@size.setter
|
|
def size(self, val):
|
|
self._size_validator.validate_type_only(val)
|
|
self._size_value = val
|
|
self._size_present = True
|
|
|
|
@size.deleter
|
|
def size(self):
|
|
self._size_value = None
|
|
self._size_present = False
|
|
|
|
@property
|
|
def mode(self):
|
|
"""
|
|
How to resize and crop the image to achieve the desired size.
|
|
|
|
:rtype: ThumbnailMode
|
|
"""
|
|
if self._mode_present:
|
|
return self._mode_value
|
|
else:
|
|
return ThumbnailMode.strict
|
|
|
|
@mode.setter
|
|
def mode(self, val):
|
|
self._mode_validator.validate_type_only(val)
|
|
self._mode_value = val
|
|
self._mode_present = True
|
|
|
|
@mode.deleter
|
|
def mode(self):
|
|
self._mode_value = None
|
|
self._mode_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ThumbnailArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ThumbnailArg(path={!r}, format={!r}, size={!r}, mode={!r})'.format(
|
|
self._path_value,
|
|
self._format_value,
|
|
self._size_value,
|
|
self._mode_value,
|
|
)
|
|
|
|
ThumbnailArg_validator = bv.Struct(ThumbnailArg)
|
|
|
|
class ThumbnailError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar LookupError ThumbnailError.path: An error occurs when downloading
|
|
metadata for the image.
|
|
:ivar files.ThumbnailError.unsupported_extension: The file extension doesn't
|
|
allow conversion to a thumbnail.
|
|
:ivar files.ThumbnailError.unsupported_image: The image cannot be converted
|
|
to a thumbnail.
|
|
:ivar files.ThumbnailError.conversion_error: An error occurs during
|
|
thumbnail conversion.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_extension = None
|
|
# Attribute is overwritten below the class definition
|
|
unsupported_image = None
|
|
# Attribute is overwritten below the class definition
|
|
conversion_error = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param LookupError val:
|
|
:rtype: ThumbnailError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_unsupported_extension(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_extension``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_extension'
|
|
|
|
def is_unsupported_image(self):
|
|
"""
|
|
Check if the union tag is ``unsupported_image``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'unsupported_image'
|
|
|
|
def is_conversion_error(self):
|
|
"""
|
|
Check if the union tag is ``conversion_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'conversion_error'
|
|
|
|
def get_path(self):
|
|
"""
|
|
An error occurs when downloading metadata for the image.
|
|
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: LookupError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ThumbnailError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ThumbnailError(%r, %r)' % (self._tag, self._value)
|
|
|
|
ThumbnailError_validator = bv.Union(ThumbnailError)
|
|
|
|
class ThumbnailFormat(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
jpeg = None
|
|
# Attribute is overwritten below the class definition
|
|
png = None
|
|
|
|
def is_jpeg(self):
|
|
"""
|
|
Check if the union tag is ``jpeg``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'jpeg'
|
|
|
|
def is_png(self):
|
|
"""
|
|
Check if the union tag is ``png``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'png'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ThumbnailFormat, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ThumbnailFormat(%r, %r)' % (self._tag, self._value)
|
|
|
|
ThumbnailFormat_validator = bv.Union(ThumbnailFormat)
|
|
|
|
class ThumbnailMode(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.ThumbnailMode.strict: Scale down the image to fit within the
|
|
given size.
|
|
:ivar files.ThumbnailMode.bestfit: Scale down the image to fit within the
|
|
given size or its transpose.
|
|
:ivar files.ThumbnailMode.fitone_bestfit: Scale down the image to completely
|
|
cover the given size or its transpose.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
strict = None
|
|
# Attribute is overwritten below the class definition
|
|
bestfit = None
|
|
# Attribute is overwritten below the class definition
|
|
fitone_bestfit = None
|
|
|
|
def is_strict(self):
|
|
"""
|
|
Check if the union tag is ``strict``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'strict'
|
|
|
|
def is_bestfit(self):
|
|
"""
|
|
Check if the union tag is ``bestfit``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'bestfit'
|
|
|
|
def is_fitone_bestfit(self):
|
|
"""
|
|
Check if the union tag is ``fitone_bestfit``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'fitone_bestfit'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ThumbnailMode, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ThumbnailMode(%r, %r)' % (self._tag, self._value)
|
|
|
|
ThumbnailMode_validator = bv.Union(ThumbnailMode)
|
|
|
|
class ThumbnailSize(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.ThumbnailSize.w32h32: 32 by 32 px.
|
|
:ivar files.ThumbnailSize.w64h64: 64 by 64 px.
|
|
:ivar files.ThumbnailSize.w128h128: 128 by 128 px.
|
|
:ivar files.ThumbnailSize.w256h256: 256 by 256 px.
|
|
:ivar files.ThumbnailSize.w480h320: 480 by 320 px.
|
|
:ivar files.ThumbnailSize.w640h480: 640 by 480 px.
|
|
:ivar files.ThumbnailSize.w960h640: 960 by 640 px.
|
|
:ivar files.ThumbnailSize.w1024h768: 1024 by 768 px.
|
|
:ivar files.ThumbnailSize.w2048h1536: 2048 by 1536 px.
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
w32h32 = None
|
|
# Attribute is overwritten below the class definition
|
|
w64h64 = None
|
|
# Attribute is overwritten below the class definition
|
|
w128h128 = None
|
|
# Attribute is overwritten below the class definition
|
|
w256h256 = None
|
|
# Attribute is overwritten below the class definition
|
|
w480h320 = None
|
|
# Attribute is overwritten below the class definition
|
|
w640h480 = None
|
|
# Attribute is overwritten below the class definition
|
|
w960h640 = None
|
|
# Attribute is overwritten below the class definition
|
|
w1024h768 = None
|
|
# Attribute is overwritten below the class definition
|
|
w2048h1536 = None
|
|
|
|
def is_w32h32(self):
|
|
"""
|
|
Check if the union tag is ``w32h32``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w32h32'
|
|
|
|
def is_w64h64(self):
|
|
"""
|
|
Check if the union tag is ``w64h64``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w64h64'
|
|
|
|
def is_w128h128(self):
|
|
"""
|
|
Check if the union tag is ``w128h128``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w128h128'
|
|
|
|
def is_w256h256(self):
|
|
"""
|
|
Check if the union tag is ``w256h256``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w256h256'
|
|
|
|
def is_w480h320(self):
|
|
"""
|
|
Check if the union tag is ``w480h320``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w480h320'
|
|
|
|
def is_w640h480(self):
|
|
"""
|
|
Check if the union tag is ``w640h480``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w640h480'
|
|
|
|
def is_w960h640(self):
|
|
"""
|
|
Check if the union tag is ``w960h640``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w960h640'
|
|
|
|
def is_w1024h768(self):
|
|
"""
|
|
Check if the union tag is ``w1024h768``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w1024h768'
|
|
|
|
def is_w2048h1536(self):
|
|
"""
|
|
Check if the union tag is ``w2048h1536``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'w2048h1536'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(ThumbnailSize, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'ThumbnailSize(%r, %r)' % (self._tag, self._value)
|
|
|
|
ThumbnailSize_validator = bv.Union(ThumbnailSize)
|
|
|
|
class UploadError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar UploadWriteFailed UploadError.path: Unable to save the uploaded
|
|
contents to a file.
|
|
:ivar InvalidPropertyGroupError UploadError.properties_error: The supplied
|
|
property group is invalid. The file has uploaded without property
|
|
groups.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param UploadWriteFailed val:
|
|
:rtype: UploadError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
@classmethod
|
|
def properties_error(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``properties_error`` tag
|
|
with value ``val``.
|
|
|
|
:param file_properties.InvalidPropertyGroupError val:
|
|
:rtype: UploadError
|
|
"""
|
|
return cls('properties_error', val)
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_properties_error(self):
|
|
"""
|
|
Check if the union tag is ``properties_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'properties_error'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_path(self):
|
|
"""
|
|
Unable to save the uploaded contents to a file.
|
|
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: UploadWriteFailed
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def get_properties_error(self):
|
|
"""
|
|
The supplied property group is invalid. The file has uploaded without
|
|
property groups.
|
|
|
|
Only call this if :meth:`is_properties_error` is true.
|
|
|
|
:rtype: file_properties.InvalidPropertyGroupError
|
|
"""
|
|
if not self.is_properties_error():
|
|
raise AttributeError("tag 'properties_error' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadError(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadError_validator = bv.Union(UploadError)
|
|
|
|
class UploadErrorWithProperties(UploadError):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadErrorWithProperties, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadErrorWithProperties(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadErrorWithProperties_validator = bv.Union(UploadErrorWithProperties)
|
|
|
|
class UploadSessionAppendArg(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionAppendArg.cursor: Contains the upload session ID
|
|
and the offset.
|
|
:ivar files.UploadSessionAppendArg.close: If true, the current session will
|
|
be closed, at which point you won't be able to call
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_append` anymore with
|
|
the current session.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_cursor_value',
|
|
'_cursor_present',
|
|
'_close_value',
|
|
'_close_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
cursor=None,
|
|
close=None):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
self._close_value = None
|
|
self._close_present = False
|
|
if cursor is not None:
|
|
self.cursor = cursor
|
|
if close is not None:
|
|
self.close = close
|
|
|
|
@property
|
|
def cursor(self):
|
|
"""
|
|
Contains the upload session ID and the offset.
|
|
|
|
:rtype: UploadSessionCursor
|
|
"""
|
|
if self._cursor_present:
|
|
return self._cursor_value
|
|
else:
|
|
raise AttributeError("missing required field 'cursor'")
|
|
|
|
@cursor.setter
|
|
def cursor(self, val):
|
|
self._cursor_validator.validate_type_only(val)
|
|
self._cursor_value = val
|
|
self._cursor_present = True
|
|
|
|
@cursor.deleter
|
|
def cursor(self):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
|
|
@property
|
|
def close(self):
|
|
"""
|
|
If true, the current session will be closed, at which point you won't be
|
|
able to call :meth:`dropbox.dropbox.Dropbox.files_upload_session_append`
|
|
anymore with the current session.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._close_present:
|
|
return self._close_value
|
|
else:
|
|
return False
|
|
|
|
@close.setter
|
|
def close(self, val):
|
|
val = self._close_validator.validate(val)
|
|
self._close_value = val
|
|
self._close_present = True
|
|
|
|
@close.deleter
|
|
def close(self):
|
|
self._close_value = None
|
|
self._close_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionAppendArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionAppendArg(cursor={!r}, close={!r})'.format(
|
|
self._cursor_value,
|
|
self._close_value,
|
|
)
|
|
|
|
UploadSessionAppendArg_validator = bv.Struct(UploadSessionAppendArg)
|
|
|
|
class UploadSessionCursor(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionCursor.session_id: The upload session ID (returned
|
|
by :meth:`dropbox.dropbox.Dropbox.files_upload_session_start`).
|
|
:ivar files.UploadSessionCursor.offset: The amount of data that has been
|
|
uploaded so far. We use this to make sure upload data isn't lost or
|
|
duplicated in the event of a network error.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_session_id_value',
|
|
'_session_id_present',
|
|
'_offset_value',
|
|
'_offset_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
session_id=None,
|
|
offset=None):
|
|
self._session_id_value = None
|
|
self._session_id_present = False
|
|
self._offset_value = None
|
|
self._offset_present = False
|
|
if session_id is not None:
|
|
self.session_id = session_id
|
|
if offset is not None:
|
|
self.offset = offset
|
|
|
|
@property
|
|
def session_id(self):
|
|
"""
|
|
The upload session ID (returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_start`).
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._session_id_present:
|
|
return self._session_id_value
|
|
else:
|
|
raise AttributeError("missing required field 'session_id'")
|
|
|
|
@session_id.setter
|
|
def session_id(self, val):
|
|
val = self._session_id_validator.validate(val)
|
|
self._session_id_value = val
|
|
self._session_id_present = True
|
|
|
|
@session_id.deleter
|
|
def session_id(self):
|
|
self._session_id_value = None
|
|
self._session_id_present = False
|
|
|
|
@property
|
|
def offset(self):
|
|
"""
|
|
The amount of data that has been uploaded so far. We use this to make
|
|
sure upload data isn't lost or duplicated in the event of a network
|
|
error.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._offset_present:
|
|
return self._offset_value
|
|
else:
|
|
raise AttributeError("missing required field 'offset'")
|
|
|
|
@offset.setter
|
|
def offset(self, val):
|
|
val = self._offset_validator.validate(val)
|
|
self._offset_value = val
|
|
self._offset_present = True
|
|
|
|
@offset.deleter
|
|
def offset(self):
|
|
self._offset_value = None
|
|
self._offset_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionCursor, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionCursor(session_id={!r}, offset={!r})'.format(
|
|
self._session_id_value,
|
|
self._offset_value,
|
|
)
|
|
|
|
UploadSessionCursor_validator = bv.Struct(UploadSessionCursor)
|
|
|
|
class UploadSessionFinishArg(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionFinishArg.cursor: Contains the upload session ID
|
|
and the offset.
|
|
:ivar files.UploadSessionFinishArg.commit: Contains the path and other
|
|
optional modifiers for the commit.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_cursor_value',
|
|
'_cursor_present',
|
|
'_commit_value',
|
|
'_commit_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
cursor=None,
|
|
commit=None):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
self._commit_value = None
|
|
self._commit_present = False
|
|
if cursor is not None:
|
|
self.cursor = cursor
|
|
if commit is not None:
|
|
self.commit = commit
|
|
|
|
@property
|
|
def cursor(self):
|
|
"""
|
|
Contains the upload session ID and the offset.
|
|
|
|
:rtype: UploadSessionCursor
|
|
"""
|
|
if self._cursor_present:
|
|
return self._cursor_value
|
|
else:
|
|
raise AttributeError("missing required field 'cursor'")
|
|
|
|
@cursor.setter
|
|
def cursor(self, val):
|
|
self._cursor_validator.validate_type_only(val)
|
|
self._cursor_value = val
|
|
self._cursor_present = True
|
|
|
|
@cursor.deleter
|
|
def cursor(self):
|
|
self._cursor_value = None
|
|
self._cursor_present = False
|
|
|
|
@property
|
|
def commit(self):
|
|
"""
|
|
Contains the path and other optional modifiers for the commit.
|
|
|
|
:rtype: CommitInfo
|
|
"""
|
|
if self._commit_present:
|
|
return self._commit_value
|
|
else:
|
|
raise AttributeError("missing required field 'commit'")
|
|
|
|
@commit.setter
|
|
def commit(self, val):
|
|
self._commit_validator.validate_type_only(val)
|
|
self._commit_value = val
|
|
self._commit_present = True
|
|
|
|
@commit.deleter
|
|
def commit(self):
|
|
self._commit_value = None
|
|
self._commit_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishArg(cursor={!r}, commit={!r})'.format(
|
|
self._cursor_value,
|
|
self._commit_value,
|
|
)
|
|
|
|
UploadSessionFinishArg_validator = bv.Struct(UploadSessionFinishArg)
|
|
|
|
class UploadSessionFinishBatchArg(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionFinishBatchArg.entries: Commit information for each
|
|
file in the batch.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
Commit information for each file in the batch.
|
|
|
|
:rtype: list of [UploadSessionFinishArg]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishBatchArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishBatchArg(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
UploadSessionFinishBatchArg_validator = bv.Struct(UploadSessionFinishBatchArg)
|
|
|
|
class UploadSessionFinishBatchJobStatus(async_.PollResultBase):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar UploadSessionFinishBatchResult
|
|
UploadSessionFinishBatchJobStatus.complete: The
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_finish_batch` has
|
|
finished.
|
|
"""
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param UploadSessionFinishBatchResult val:
|
|
:rtype: UploadSessionFinishBatchJobStatus
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
The :meth:`dropbox.dropbox.Dropbox.files_upload_session_finish_batch`
|
|
has finished.
|
|
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: UploadSessionFinishBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishBatchJobStatus, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishBatchJobStatus(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadSessionFinishBatchJobStatus_validator = bv.Union(UploadSessionFinishBatchJobStatus)
|
|
|
|
class UploadSessionFinishBatchLaunch(async_.LaunchResultBase):
|
|
"""
|
|
Result returned by
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_finish_batch` that may
|
|
either launch an asynchronous job or complete synchronously.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def complete(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``complete`` tag with value
|
|
``val``.
|
|
|
|
:param UploadSessionFinishBatchResult val:
|
|
:rtype: UploadSessionFinishBatchLaunch
|
|
"""
|
|
return cls('complete', val)
|
|
|
|
def is_complete(self):
|
|
"""
|
|
Check if the union tag is ``complete``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'complete'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_complete(self):
|
|
"""
|
|
Only call this if :meth:`is_complete` is true.
|
|
|
|
:rtype: UploadSessionFinishBatchResult
|
|
"""
|
|
if not self.is_complete():
|
|
raise AttributeError("tag 'complete' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishBatchLaunch, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishBatchLaunch(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadSessionFinishBatchLaunch_validator = bv.Union(UploadSessionFinishBatchLaunch)
|
|
|
|
class UploadSessionFinishBatchResult(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionFinishBatchResult.entries: Each entry in
|
|
``UploadSessionFinishBatchArg.entries`` will appear at the same position
|
|
inside ``UploadSessionFinishBatchResult.entries``.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_entries_value',
|
|
'_entries_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
entries=None):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
if entries is not None:
|
|
self.entries = entries
|
|
|
|
@property
|
|
def entries(self):
|
|
"""
|
|
Each entry in ``UploadSessionFinishBatchArg.entries`` will appear at the
|
|
same position inside ``UploadSessionFinishBatchResult.entries``.
|
|
|
|
:rtype: list of [UploadSessionFinishBatchResultEntry]
|
|
"""
|
|
if self._entries_present:
|
|
return self._entries_value
|
|
else:
|
|
raise AttributeError("missing required field 'entries'")
|
|
|
|
@entries.setter
|
|
def entries(self, val):
|
|
val = self._entries_validator.validate(val)
|
|
self._entries_value = val
|
|
self._entries_present = True
|
|
|
|
@entries.deleter
|
|
def entries(self):
|
|
self._entries_value = None
|
|
self._entries_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishBatchResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishBatchResult(entries={!r})'.format(
|
|
self._entries_value,
|
|
)
|
|
|
|
UploadSessionFinishBatchResult_validator = bv.Struct(UploadSessionFinishBatchResult)
|
|
|
|
class UploadSessionFinishBatchResultEntry(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
"""
|
|
|
|
_catch_all = None
|
|
|
|
@classmethod
|
|
def success(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``success`` tag with value
|
|
``val``.
|
|
|
|
:param FileMetadata val:
|
|
:rtype: UploadSessionFinishBatchResultEntry
|
|
"""
|
|
return cls('success', val)
|
|
|
|
@classmethod
|
|
def failure(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``failure`` tag with value
|
|
``val``.
|
|
|
|
:param UploadSessionFinishError val:
|
|
:rtype: UploadSessionFinishBatchResultEntry
|
|
"""
|
|
return cls('failure', val)
|
|
|
|
def is_success(self):
|
|
"""
|
|
Check if the union tag is ``success``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'success'
|
|
|
|
def is_failure(self):
|
|
"""
|
|
Check if the union tag is ``failure``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'failure'
|
|
|
|
def get_success(self):
|
|
"""
|
|
Only call this if :meth:`is_success` is true.
|
|
|
|
:rtype: FileMetadata
|
|
"""
|
|
if not self.is_success():
|
|
raise AttributeError("tag 'success' not set")
|
|
return self._value
|
|
|
|
def get_failure(self):
|
|
"""
|
|
Only call this if :meth:`is_failure` is true.
|
|
|
|
:rtype: UploadSessionFinishError
|
|
"""
|
|
if not self.is_failure():
|
|
raise AttributeError("tag 'failure' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishBatchResultEntry, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishBatchResultEntry(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadSessionFinishBatchResultEntry_validator = bv.Union(UploadSessionFinishBatchResultEntry)
|
|
|
|
class UploadSessionFinishError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar UploadSessionLookupError UploadSessionFinishError.lookup_failed: The
|
|
session arguments are incorrect; the value explains the reason.
|
|
:ivar WriteError UploadSessionFinishError.path: Unable to save the uploaded
|
|
contents to a file. Data has already been appended to the upload
|
|
session. Please retry with empty data body and updated offset.
|
|
:ivar InvalidPropertyGroupError UploadSessionFinishError.properties_error:
|
|
The supplied property group is invalid. The file has uploaded without
|
|
property groups.
|
|
:ivar files.UploadSessionFinishError.too_many_shared_folder_targets: The
|
|
batch request commits files into too many different shared folders.
|
|
Please limit your batch request to files contained in a single shared
|
|
folder.
|
|
:ivar files.UploadSessionFinishError.too_many_write_operations: There are
|
|
too many write operations happening in the user's Dropbox. You should
|
|
retry uploading this file.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
too_many_shared_folder_targets = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_write_operations = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def lookup_failed(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``lookup_failed`` tag with
|
|
value ``val``.
|
|
|
|
:param UploadSessionLookupError val:
|
|
:rtype: UploadSessionFinishError
|
|
"""
|
|
return cls('lookup_failed', val)
|
|
|
|
@classmethod
|
|
def path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``path`` tag with value
|
|
``val``.
|
|
|
|
:param WriteError val:
|
|
:rtype: UploadSessionFinishError
|
|
"""
|
|
return cls('path', val)
|
|
|
|
@classmethod
|
|
def properties_error(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``properties_error`` tag
|
|
with value ``val``.
|
|
|
|
:param file_properties.InvalidPropertyGroupError val:
|
|
:rtype: UploadSessionFinishError
|
|
"""
|
|
return cls('properties_error', val)
|
|
|
|
def is_lookup_failed(self):
|
|
"""
|
|
Check if the union tag is ``lookup_failed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'lookup_failed'
|
|
|
|
def is_path(self):
|
|
"""
|
|
Check if the union tag is ``path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'path'
|
|
|
|
def is_properties_error(self):
|
|
"""
|
|
Check if the union tag is ``properties_error``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'properties_error'
|
|
|
|
def is_too_many_shared_folder_targets(self):
|
|
"""
|
|
Check if the union tag is ``too_many_shared_folder_targets``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_shared_folder_targets'
|
|
|
|
def is_too_many_write_operations(self):
|
|
"""
|
|
Check if the union tag is ``too_many_write_operations``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_write_operations'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_lookup_failed(self):
|
|
"""
|
|
The session arguments are incorrect; the value explains the reason.
|
|
|
|
Only call this if :meth:`is_lookup_failed` is true.
|
|
|
|
:rtype: UploadSessionLookupError
|
|
"""
|
|
if not self.is_lookup_failed():
|
|
raise AttributeError("tag 'lookup_failed' not set")
|
|
return self._value
|
|
|
|
def get_path(self):
|
|
"""
|
|
Unable to save the uploaded contents to a file. Data has already been
|
|
appended to the upload session. Please retry with empty data body and
|
|
updated offset.
|
|
|
|
Only call this if :meth:`is_path` is true.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if not self.is_path():
|
|
raise AttributeError("tag 'path' not set")
|
|
return self._value
|
|
|
|
def get_properties_error(self):
|
|
"""
|
|
The supplied property group is invalid. The file has uploaded without
|
|
property groups.
|
|
|
|
Only call this if :meth:`is_properties_error` is true.
|
|
|
|
:rtype: file_properties.InvalidPropertyGroupError
|
|
"""
|
|
if not self.is_properties_error():
|
|
raise AttributeError("tag 'properties_error' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionFinishError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionFinishError(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadSessionFinishError_validator = bv.Union(UploadSessionFinishError)
|
|
|
|
class UploadSessionLookupError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.UploadSessionLookupError.not_found: The upload session ID was
|
|
not found or has expired. Upload sessions are valid for 48 hours.
|
|
:ivar UploadSessionOffsetError UploadSessionLookupError.incorrect_offset:
|
|
The specified offset was incorrect. See the value for the correct
|
|
offset. This error may occur when a previous request was received and
|
|
processed successfully but the client did not receive the response, e.g.
|
|
due to a network error.
|
|
:ivar files.UploadSessionLookupError.closed: You are attempting to append
|
|
data to an upload session that has already been closed (i.e. committed).
|
|
:ivar files.UploadSessionLookupError.not_closed: The session must be closed
|
|
before calling upload_session/finish_batch.
|
|
:ivar files.UploadSessionLookupError.too_large: You can not append to the
|
|
upload session because the size of a file should not reach the max file
|
|
size limit (i.e. 350GB).
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
not_found = None
|
|
# Attribute is overwritten below the class definition
|
|
closed = None
|
|
# Attribute is overwritten below the class definition
|
|
not_closed = None
|
|
# Attribute is overwritten below the class definition
|
|
too_large = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def incorrect_offset(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``incorrect_offset`` tag
|
|
with value ``val``.
|
|
|
|
:param UploadSessionOffsetError val:
|
|
:rtype: UploadSessionLookupError
|
|
"""
|
|
return cls('incorrect_offset', val)
|
|
|
|
def is_not_found(self):
|
|
"""
|
|
Check if the union tag is ``not_found``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_found'
|
|
|
|
def is_incorrect_offset(self):
|
|
"""
|
|
Check if the union tag is ``incorrect_offset``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'incorrect_offset'
|
|
|
|
def is_closed(self):
|
|
"""
|
|
Check if the union tag is ``closed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'closed'
|
|
|
|
def is_not_closed(self):
|
|
"""
|
|
Check if the union tag is ``not_closed``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'not_closed'
|
|
|
|
def is_too_large(self):
|
|
"""
|
|
Check if the union tag is ``too_large``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_large'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_incorrect_offset(self):
|
|
"""
|
|
The specified offset was incorrect. See the value for the correct
|
|
offset. This error may occur when a previous request was received and
|
|
processed successfully but the client did not receive the response, e.g.
|
|
due to a network error.
|
|
|
|
Only call this if :meth:`is_incorrect_offset` is true.
|
|
|
|
:rtype: UploadSessionOffsetError
|
|
"""
|
|
if not self.is_incorrect_offset():
|
|
raise AttributeError("tag 'incorrect_offset' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionLookupError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionLookupError(%r, %r)' % (self._tag, self._value)
|
|
|
|
UploadSessionLookupError_validator = bv.Union(UploadSessionLookupError)
|
|
|
|
class UploadSessionOffsetError(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionOffsetError.correct_offset: The offset up to which
|
|
data has been collected.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_correct_offset_value',
|
|
'_correct_offset_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
correct_offset=None):
|
|
self._correct_offset_value = None
|
|
self._correct_offset_present = False
|
|
if correct_offset is not None:
|
|
self.correct_offset = correct_offset
|
|
|
|
@property
|
|
def correct_offset(self):
|
|
"""
|
|
The offset up to which data has been collected.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._correct_offset_present:
|
|
return self._correct_offset_value
|
|
else:
|
|
raise AttributeError("missing required field 'correct_offset'")
|
|
|
|
@correct_offset.setter
|
|
def correct_offset(self, val):
|
|
val = self._correct_offset_validator.validate(val)
|
|
self._correct_offset_value = val
|
|
self._correct_offset_present = True
|
|
|
|
@correct_offset.deleter
|
|
def correct_offset(self):
|
|
self._correct_offset_value = None
|
|
self._correct_offset_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionOffsetError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionOffsetError(correct_offset={!r})'.format(
|
|
self._correct_offset_value,
|
|
)
|
|
|
|
UploadSessionOffsetError_validator = bv.Struct(UploadSessionOffsetError)
|
|
|
|
class UploadSessionStartArg(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionStartArg.close: If true, the current session will
|
|
be closed, at which point you won't be able to call
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_append` anymore with
|
|
the current session.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_close_value',
|
|
'_close_present',
|
|
]
|
|
|
|
_has_required_fields = False
|
|
|
|
def __init__(self,
|
|
close=None):
|
|
self._close_value = None
|
|
self._close_present = False
|
|
if close is not None:
|
|
self.close = close
|
|
|
|
@property
|
|
def close(self):
|
|
"""
|
|
If true, the current session will be closed, at which point you won't be
|
|
able to call :meth:`dropbox.dropbox.Dropbox.files_upload_session_append`
|
|
anymore with the current session.
|
|
|
|
:rtype: bool
|
|
"""
|
|
if self._close_present:
|
|
return self._close_value
|
|
else:
|
|
return False
|
|
|
|
@close.setter
|
|
def close(self, val):
|
|
val = self._close_validator.validate(val)
|
|
self._close_value = val
|
|
self._close_present = True
|
|
|
|
@close.deleter
|
|
def close(self):
|
|
self._close_value = None
|
|
self._close_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionStartArg, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionStartArg(close={!r})'.format(
|
|
self._close_value,
|
|
)
|
|
|
|
UploadSessionStartArg_validator = bv.Struct(UploadSessionStartArg)
|
|
|
|
class UploadSessionStartResult(bb.Struct):
|
|
"""
|
|
:ivar files.UploadSessionStartResult.session_id: A unique identifier for the
|
|
upload session. Pass this to
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_append` and
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_finish`.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_session_id_value',
|
|
'_session_id_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
session_id=None):
|
|
self._session_id_value = None
|
|
self._session_id_present = False
|
|
if session_id is not None:
|
|
self.session_id = session_id
|
|
|
|
@property
|
|
def session_id(self):
|
|
"""
|
|
A unique identifier for the upload session. Pass this to
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_append` and
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_finish`.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._session_id_present:
|
|
return self._session_id_value
|
|
else:
|
|
raise AttributeError("missing required field 'session_id'")
|
|
|
|
@session_id.setter
|
|
def session_id(self, val):
|
|
val = self._session_id_validator.validate(val)
|
|
self._session_id_value = val
|
|
self._session_id_present = True
|
|
|
|
@session_id.deleter
|
|
def session_id(self):
|
|
self._session_id_value = None
|
|
self._session_id_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadSessionStartResult, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadSessionStartResult(session_id={!r})'.format(
|
|
self._session_id_value,
|
|
)
|
|
|
|
UploadSessionStartResult_validator = bv.Struct(UploadSessionStartResult)
|
|
|
|
class UploadWriteFailed(bb.Struct):
|
|
"""
|
|
:ivar files.UploadWriteFailed.reason: The reason why the file couldn't be
|
|
saved.
|
|
:ivar files.UploadWriteFailed.upload_session_id: The upload session ID; data
|
|
has already been uploaded to the corresponding upload session and this
|
|
ID may be used to retry the commit with
|
|
:meth:`dropbox.dropbox.Dropbox.files_upload_session_finish`.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_reason_value',
|
|
'_reason_present',
|
|
'_upload_session_id_value',
|
|
'_upload_session_id_present',
|
|
]
|
|
|
|
_has_required_fields = True
|
|
|
|
def __init__(self,
|
|
reason=None,
|
|
upload_session_id=None):
|
|
self._reason_value = None
|
|
self._reason_present = False
|
|
self._upload_session_id_value = None
|
|
self._upload_session_id_present = False
|
|
if reason is not None:
|
|
self.reason = reason
|
|
if upload_session_id is not None:
|
|
self.upload_session_id = upload_session_id
|
|
|
|
@property
|
|
def reason(self):
|
|
"""
|
|
The reason why the file couldn't be saved.
|
|
|
|
:rtype: WriteError
|
|
"""
|
|
if self._reason_present:
|
|
return self._reason_value
|
|
else:
|
|
raise AttributeError("missing required field 'reason'")
|
|
|
|
@reason.setter
|
|
def reason(self, val):
|
|
self._reason_validator.validate_type_only(val)
|
|
self._reason_value = val
|
|
self._reason_present = True
|
|
|
|
@reason.deleter
|
|
def reason(self):
|
|
self._reason_value = None
|
|
self._reason_present = False
|
|
|
|
@property
|
|
def upload_session_id(self):
|
|
"""
|
|
The upload session ID; data has already been uploaded to the
|
|
corresponding upload session and this ID may be used to retry the commit
|
|
with :meth:`dropbox.dropbox.Dropbox.files_upload_session_finish`.
|
|
|
|
:rtype: str
|
|
"""
|
|
if self._upload_session_id_present:
|
|
return self._upload_session_id_value
|
|
else:
|
|
raise AttributeError("missing required field 'upload_session_id'")
|
|
|
|
@upload_session_id.setter
|
|
def upload_session_id(self, val):
|
|
val = self._upload_session_id_validator.validate(val)
|
|
self._upload_session_id_value = val
|
|
self._upload_session_id_present = True
|
|
|
|
@upload_session_id.deleter
|
|
def upload_session_id(self):
|
|
self._upload_session_id_value = None
|
|
self._upload_session_id_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(UploadWriteFailed, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'UploadWriteFailed(reason={!r}, upload_session_id={!r})'.format(
|
|
self._reason_value,
|
|
self._upload_session_id_value,
|
|
)
|
|
|
|
UploadWriteFailed_validator = bv.Struct(UploadWriteFailed)
|
|
|
|
class VideoMetadata(MediaMetadata):
|
|
"""
|
|
Metadata for a video.
|
|
|
|
:ivar files.VideoMetadata.duration: The duration of the video in
|
|
milliseconds.
|
|
"""
|
|
|
|
__slots__ = [
|
|
'_duration_value',
|
|
'_duration_present',
|
|
]
|
|
|
|
_has_required_fields = False
|
|
|
|
def __init__(self,
|
|
dimensions=None,
|
|
location=None,
|
|
time_taken=None,
|
|
duration=None):
|
|
super(VideoMetadata, self).__init__(dimensions,
|
|
location,
|
|
time_taken)
|
|
self._duration_value = None
|
|
self._duration_present = False
|
|
if duration is not None:
|
|
self.duration = duration
|
|
|
|
@property
|
|
def duration(self):
|
|
"""
|
|
The duration of the video in milliseconds.
|
|
|
|
:rtype: int
|
|
"""
|
|
if self._duration_present:
|
|
return self._duration_value
|
|
else:
|
|
return None
|
|
|
|
@duration.setter
|
|
def duration(self, val):
|
|
if val is None:
|
|
del self.duration
|
|
return
|
|
val = self._duration_validator.validate(val)
|
|
self._duration_value = val
|
|
self._duration_present = True
|
|
|
|
@duration.deleter
|
|
def duration(self):
|
|
self._duration_value = None
|
|
self._duration_present = False
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(VideoMetadata, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'VideoMetadata(dimensions={!r}, location={!r}, time_taken={!r}, duration={!r})'.format(
|
|
self._dimensions_value,
|
|
self._location_value,
|
|
self._time_taken_value,
|
|
self._duration_value,
|
|
)
|
|
|
|
VideoMetadata_validator = bv.Struct(VideoMetadata)
|
|
|
|
class WriteConflictError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.WriteConflictError.file: There's a file in the way.
|
|
:ivar files.WriteConflictError.folder: There's a folder in the way.
|
|
:ivar files.WriteConflictError.file_ancestor: There's a file at an ancestor
|
|
path, so we couldn't create the required parent folders.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
file = None
|
|
# Attribute is overwritten below the class definition
|
|
folder = None
|
|
# Attribute is overwritten below the class definition
|
|
file_ancestor = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
def is_file(self):
|
|
"""
|
|
Check if the union tag is ``file``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'file'
|
|
|
|
def is_folder(self):
|
|
"""
|
|
Check if the union tag is ``folder``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'folder'
|
|
|
|
def is_file_ancestor(self):
|
|
"""
|
|
Check if the union tag is ``file_ancestor``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'file_ancestor'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(WriteConflictError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'WriteConflictError(%r, %r)' % (self._tag, self._value)
|
|
|
|
WriteConflictError_validator = bv.Union(WriteConflictError)
|
|
|
|
class WriteError(bb.Union):
|
|
"""
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar Optional[str] files.WriteError.malformed_path: The given path does not
|
|
satisfy the required path format. Please refer to the :link:`Path
|
|
formats documentation
|
|
https://www.dropbox.com/developers/documentation/http/documentation#path-formats`
|
|
for more information.
|
|
:ivar WriteConflictError WriteError.conflict: Couldn't write to the target
|
|
path because there was something in the way.
|
|
:ivar files.WriteError.no_write_permission: The user doesn't have
|
|
permissions to write to the target location.
|
|
:ivar files.WriteError.insufficient_space: The user doesn't have enough
|
|
available space (bytes) to write more data.
|
|
:ivar files.WriteError.disallowed_name: Dropbox will not save the file or
|
|
folder because of its name.
|
|
:ivar files.WriteError.team_folder: This endpoint cannot move or delete team
|
|
folders.
|
|
:ivar files.WriteError.too_many_write_operations: There are too many write
|
|
operations in user's Dropbox. Please retry this request.
|
|
"""
|
|
|
|
_catch_all = 'other'
|
|
# Attribute is overwritten below the class definition
|
|
no_write_permission = None
|
|
# Attribute is overwritten below the class definition
|
|
insufficient_space = None
|
|
# Attribute is overwritten below the class definition
|
|
disallowed_name = None
|
|
# Attribute is overwritten below the class definition
|
|
team_folder = None
|
|
# Attribute is overwritten below the class definition
|
|
too_many_write_operations = None
|
|
# Attribute is overwritten below the class definition
|
|
other = None
|
|
|
|
@classmethod
|
|
def malformed_path(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``malformed_path`` tag with
|
|
value ``val``.
|
|
|
|
:param Optional[str] val:
|
|
:rtype: WriteError
|
|
"""
|
|
return cls('malformed_path', val)
|
|
|
|
@classmethod
|
|
def conflict(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``conflict`` tag with value
|
|
``val``.
|
|
|
|
:param WriteConflictError val:
|
|
:rtype: WriteError
|
|
"""
|
|
return cls('conflict', val)
|
|
|
|
def is_malformed_path(self):
|
|
"""
|
|
Check if the union tag is ``malformed_path``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'malformed_path'
|
|
|
|
def is_conflict(self):
|
|
"""
|
|
Check if the union tag is ``conflict``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'conflict'
|
|
|
|
def is_no_write_permission(self):
|
|
"""
|
|
Check if the union tag is ``no_write_permission``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'no_write_permission'
|
|
|
|
def is_insufficient_space(self):
|
|
"""
|
|
Check if the union tag is ``insufficient_space``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'insufficient_space'
|
|
|
|
def is_disallowed_name(self):
|
|
"""
|
|
Check if the union tag is ``disallowed_name``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'disallowed_name'
|
|
|
|
def is_team_folder(self):
|
|
"""
|
|
Check if the union tag is ``team_folder``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'team_folder'
|
|
|
|
def is_too_many_write_operations(self):
|
|
"""
|
|
Check if the union tag is ``too_many_write_operations``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'too_many_write_operations'
|
|
|
|
def is_other(self):
|
|
"""
|
|
Check if the union tag is ``other``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'other'
|
|
|
|
def get_malformed_path(self):
|
|
"""
|
|
The given path does not satisfy the required path format. Please refer
|
|
to the `Path formats documentation
|
|
<https://www.dropbox.com/developers/documentation/http/documentation#path-formats>`_
|
|
for more information.
|
|
|
|
Only call this if :meth:`is_malformed_path` is true.
|
|
|
|
:rtype: Optional[str]
|
|
"""
|
|
if not self.is_malformed_path():
|
|
raise AttributeError("tag 'malformed_path' not set")
|
|
return self._value
|
|
|
|
def get_conflict(self):
|
|
"""
|
|
Couldn't write to the target path because there was something in the
|
|
way.
|
|
|
|
Only call this if :meth:`is_conflict` is true.
|
|
|
|
:rtype: WriteConflictError
|
|
"""
|
|
if not self.is_conflict():
|
|
raise AttributeError("tag 'conflict' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(WriteError, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'WriteError(%r, %r)' % (self._tag, self._value)
|
|
|
|
WriteError_validator = bv.Union(WriteError)
|
|
|
|
class WriteMode(bb.Union):
|
|
"""
|
|
Your intent when writing a file to some path. This is used to determine what
|
|
constitutes a conflict and what the autorename strategy is. In some
|
|
situations, the conflict behavior is identical: (a) If the target path
|
|
doesn't refer to anything, the file is always written; no conflict. (b) If
|
|
the target path refers to a folder, it's always a conflict. (c) If the
|
|
target path refers to a file with identical contents, nothing gets written;
|
|
no conflict. The conflict checking differs in the case where there's a file
|
|
at the target path with contents different from the contents you're trying
|
|
to write.
|
|
|
|
This class acts as a tagged union. Only one of the ``is_*`` methods will
|
|
return true. To get the associated value of a tag (if one exists), use the
|
|
corresponding ``get_*`` method.
|
|
|
|
:ivar files.WriteMode.add: Do not overwrite an existing file if there is a
|
|
conflict. The autorename strategy is to append a number to the file
|
|
name. For example, "document.txt" might become "document (2).txt".
|
|
:ivar files.WriteMode.overwrite: Always overwrite the existing file. The
|
|
autorename strategy is the same as it is for ``add``.
|
|
:ivar str files.WriteMode.update: Overwrite if the given "rev" matches the
|
|
existing file's "rev". The autorename strategy is to append the string
|
|
"conflicted copy" to the file name. For example, "document.txt" might
|
|
become "document (conflicted copy).txt" or "document (Panda's conflicted
|
|
copy).txt".
|
|
"""
|
|
|
|
_catch_all = None
|
|
# Attribute is overwritten below the class definition
|
|
add = None
|
|
# Attribute is overwritten below the class definition
|
|
overwrite = None
|
|
|
|
@classmethod
|
|
def update(cls, val):
|
|
"""
|
|
Create an instance of this class set to the ``update`` tag with value
|
|
``val``.
|
|
|
|
:param str val:
|
|
:rtype: WriteMode
|
|
"""
|
|
return cls('update', val)
|
|
|
|
def is_add(self):
|
|
"""
|
|
Check if the union tag is ``add``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'add'
|
|
|
|
def is_overwrite(self):
|
|
"""
|
|
Check if the union tag is ``overwrite``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'overwrite'
|
|
|
|
def is_update(self):
|
|
"""
|
|
Check if the union tag is ``update``.
|
|
|
|
:rtype: bool
|
|
"""
|
|
return self._tag == 'update'
|
|
|
|
def get_update(self):
|
|
"""
|
|
Overwrite if the given "rev" matches the existing file's "rev". The
|
|
autorename strategy is to append the string "conflicted copy" to the
|
|
file name. For example, "document.txt" might become "document
|
|
(conflicted copy).txt" or "document (Panda's conflicted copy).txt".
|
|
|
|
Only call this if :meth:`is_update` is true.
|
|
|
|
:rtype: str
|
|
"""
|
|
if not self.is_update():
|
|
raise AttributeError("tag 'update' not set")
|
|
return self._value
|
|
|
|
def _process_custom_annotations(self, annotation_type, field_path, processor):
|
|
super(WriteMode, self)._process_custom_annotations(annotation_type, field_path, processor)
|
|
|
|
def __repr__(self):
|
|
return 'WriteMode(%r, %r)' % (self._tag, self._value)
|
|
|
|
WriteMode_validator = bv.Union(WriteMode)
|
|
|
|
CopyBatchArg_validator = RelocationBatchArgBase_validator
|
|
CopyBatchArg = RelocationBatchArgBase
|
|
FileId_validator = bv.String(min_length=4, pattern=u'id:.+')
|
|
Id_validator = bv.String(min_length=1)
|
|
ListFolderCursor_validator = bv.String(min_length=1)
|
|
MalformedPathError_validator = bv.Nullable(bv.String())
|
|
Path_validator = bv.String(pattern=u'/(.|[\\r\\n])*')
|
|
PathOrId_validator = bv.String(pattern=u'/(.|[\\r\\n])*|id:.*|(ns:[0-9]+(/.*)?)')
|
|
PathR_validator = bv.String(pattern=u'(/(.|[\\r\\n])*)?|(ns:[0-9]+(/.*)?)')
|
|
PathROrId_validator = bv.String(pattern=u'(/(.|[\\r\\n])*)?|id:.*|(ns:[0-9]+(/.*)?)')
|
|
ReadPath_validator = bv.String(pattern=u'(/(.|[\\r\\n])*|id:.*)|(rev:[0-9a-f]{9,})|(ns:[0-9]+(/.*)?)')
|
|
Rev_validator = bv.String(min_length=9, pattern=u'[0-9a-f]+')
|
|
Sha256HexHash_validator = bv.String(min_length=64, max_length=64)
|
|
SharedLinkUrl_validator = bv.String()
|
|
WritePath_validator = bv.String(pattern=u'(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)')
|
|
WritePathOrId_validator = bv.String(pattern=u'(/(.|[\\r\\n])*)|(ns:[0-9]+(/.*)?)|(id:.*)')
|
|
GetMetadataArg._path_validator = ReadPath_validator
|
|
GetMetadataArg._include_media_info_validator = bv.Boolean()
|
|
GetMetadataArg._include_deleted_validator = bv.Boolean()
|
|
GetMetadataArg._include_has_explicit_shared_members_validator = bv.Boolean()
|
|
GetMetadataArg._include_property_groups_validator = bv.Nullable(file_properties.TemplateFilterBase_validator)
|
|
GetMetadataArg._all_field_names_ = set([
|
|
'path',
|
|
'include_media_info',
|
|
'include_deleted',
|
|
'include_has_explicit_shared_members',
|
|
'include_property_groups',
|
|
])
|
|
GetMetadataArg._all_fields_ = [
|
|
('path', GetMetadataArg._path_validator),
|
|
('include_media_info', GetMetadataArg._include_media_info_validator),
|
|
('include_deleted', GetMetadataArg._include_deleted_validator),
|
|
('include_has_explicit_shared_members', GetMetadataArg._include_has_explicit_shared_members_validator),
|
|
('include_property_groups', GetMetadataArg._include_property_groups_validator),
|
|
]
|
|
|
|
AlphaGetMetadataArg._include_property_templates_validator = bv.Nullable(bv.List(file_properties.TemplateId_validator))
|
|
AlphaGetMetadataArg._all_field_names_ = GetMetadataArg._all_field_names_.union(set(['include_property_templates']))
|
|
AlphaGetMetadataArg._all_fields_ = GetMetadataArg._all_fields_ + [('include_property_templates', AlphaGetMetadataArg._include_property_templates_validator)]
|
|
|
|
GetMetadataError._path_validator = LookupError_validator
|
|
GetMetadataError._tagmap = {
|
|
'path': GetMetadataError._path_validator,
|
|
}
|
|
|
|
AlphaGetMetadataError._properties_error_validator = file_properties.LookUpPropertiesError_validator
|
|
AlphaGetMetadataError._tagmap = {
|
|
'properties_error': AlphaGetMetadataError._properties_error_validator,
|
|
}
|
|
AlphaGetMetadataError._tagmap.update(GetMetadataError._tagmap)
|
|
|
|
CommitInfo._path_validator = WritePathOrId_validator
|
|
CommitInfo._mode_validator = WriteMode_validator
|
|
CommitInfo._autorename_validator = bv.Boolean()
|
|
CommitInfo._client_modified_validator = bv.Nullable(common.DropboxTimestamp_validator)
|
|
CommitInfo._mute_validator = bv.Boolean()
|
|
CommitInfo._property_groups_validator = bv.Nullable(bv.List(file_properties.PropertyGroup_validator))
|
|
CommitInfo._strict_conflict_validator = bv.Boolean()
|
|
CommitInfo._all_field_names_ = set([
|
|
'path',
|
|
'mode',
|
|
'autorename',
|
|
'client_modified',
|
|
'mute',
|
|
'property_groups',
|
|
'strict_conflict',
|
|
])
|
|
CommitInfo._all_fields_ = [
|
|
('path', CommitInfo._path_validator),
|
|
('mode', CommitInfo._mode_validator),
|
|
('autorename', CommitInfo._autorename_validator),
|
|
('client_modified', CommitInfo._client_modified_validator),
|
|
('mute', CommitInfo._mute_validator),
|
|
('property_groups', CommitInfo._property_groups_validator),
|
|
('strict_conflict', CommitInfo._strict_conflict_validator),
|
|
]
|
|
|
|
CommitInfoWithProperties._all_field_names_ = CommitInfo._all_field_names_.union(set([]))
|
|
CommitInfoWithProperties._all_fields_ = CommitInfo._all_fields_ + []
|
|
|
|
ContentSyncSetting._id_validator = FileId_validator
|
|
ContentSyncSetting._sync_setting_validator = SyncSetting_validator
|
|
ContentSyncSetting._all_field_names_ = set([
|
|
'id',
|
|
'sync_setting',
|
|
])
|
|
ContentSyncSetting._all_fields_ = [
|
|
('id', ContentSyncSetting._id_validator),
|
|
('sync_setting', ContentSyncSetting._sync_setting_validator),
|
|
]
|
|
|
|
ContentSyncSettingArg._id_validator = FileId_validator
|
|
ContentSyncSettingArg._sync_setting_validator = SyncSettingArg_validator
|
|
ContentSyncSettingArg._all_field_names_ = set([
|
|
'id',
|
|
'sync_setting',
|
|
])
|
|
ContentSyncSettingArg._all_fields_ = [
|
|
('id', ContentSyncSettingArg._id_validator),
|
|
('sync_setting', ContentSyncSettingArg._sync_setting_validator),
|
|
]
|
|
|
|
CreateFolderArg._path_validator = WritePath_validator
|
|
CreateFolderArg._autorename_validator = bv.Boolean()
|
|
CreateFolderArg._all_field_names_ = set([
|
|
'path',
|
|
'autorename',
|
|
])
|
|
CreateFolderArg._all_fields_ = [
|
|
('path', CreateFolderArg._path_validator),
|
|
('autorename', CreateFolderArg._autorename_validator),
|
|
]
|
|
|
|
CreateFolderBatchArg._paths_validator = bv.List(WritePath_validator)
|
|
CreateFolderBatchArg._autorename_validator = bv.Boolean()
|
|
CreateFolderBatchArg._force_async_validator = bv.Boolean()
|
|
CreateFolderBatchArg._all_field_names_ = set([
|
|
'paths',
|
|
'autorename',
|
|
'force_async',
|
|
])
|
|
CreateFolderBatchArg._all_fields_ = [
|
|
('paths', CreateFolderBatchArg._paths_validator),
|
|
('autorename', CreateFolderBatchArg._autorename_validator),
|
|
('force_async', CreateFolderBatchArg._force_async_validator),
|
|
]
|
|
|
|
CreateFolderBatchError._too_many_files_validator = bv.Void()
|
|
CreateFolderBatchError._other_validator = bv.Void()
|
|
CreateFolderBatchError._tagmap = {
|
|
'too_many_files': CreateFolderBatchError._too_many_files_validator,
|
|
'other': CreateFolderBatchError._other_validator,
|
|
}
|
|
|
|
CreateFolderBatchError.too_many_files = CreateFolderBatchError('too_many_files')
|
|
CreateFolderBatchError.other = CreateFolderBatchError('other')
|
|
|
|
CreateFolderBatchJobStatus._complete_validator = CreateFolderBatchResult_validator
|
|
CreateFolderBatchJobStatus._failed_validator = CreateFolderBatchError_validator
|
|
CreateFolderBatchJobStatus._other_validator = bv.Void()
|
|
CreateFolderBatchJobStatus._tagmap = {
|
|
'complete': CreateFolderBatchJobStatus._complete_validator,
|
|
'failed': CreateFolderBatchJobStatus._failed_validator,
|
|
'other': CreateFolderBatchJobStatus._other_validator,
|
|
}
|
|
CreateFolderBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap)
|
|
|
|
CreateFolderBatchJobStatus.other = CreateFolderBatchJobStatus('other')
|
|
|
|
CreateFolderBatchLaunch._complete_validator = CreateFolderBatchResult_validator
|
|
CreateFolderBatchLaunch._other_validator = bv.Void()
|
|
CreateFolderBatchLaunch._tagmap = {
|
|
'complete': CreateFolderBatchLaunch._complete_validator,
|
|
'other': CreateFolderBatchLaunch._other_validator,
|
|
}
|
|
CreateFolderBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap)
|
|
|
|
CreateFolderBatchLaunch.other = CreateFolderBatchLaunch('other')
|
|
|
|
FileOpsResult._all_field_names_ = set([])
|
|
FileOpsResult._all_fields_ = []
|
|
|
|
CreateFolderBatchResult._entries_validator = bv.List(CreateFolderBatchResultEntry_validator)
|
|
CreateFolderBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries']))
|
|
CreateFolderBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', CreateFolderBatchResult._entries_validator)]
|
|
|
|
CreateFolderBatchResultEntry._success_validator = CreateFolderEntryResult_validator
|
|
CreateFolderBatchResultEntry._failure_validator = CreateFolderEntryError_validator
|
|
CreateFolderBatchResultEntry._tagmap = {
|
|
'success': CreateFolderBatchResultEntry._success_validator,
|
|
'failure': CreateFolderBatchResultEntry._failure_validator,
|
|
}
|
|
|
|
CreateFolderEntryError._path_validator = WriteError_validator
|
|
CreateFolderEntryError._other_validator = bv.Void()
|
|
CreateFolderEntryError._tagmap = {
|
|
'path': CreateFolderEntryError._path_validator,
|
|
'other': CreateFolderEntryError._other_validator,
|
|
}
|
|
|
|
CreateFolderEntryError.other = CreateFolderEntryError('other')
|
|
|
|
CreateFolderEntryResult._metadata_validator = FolderMetadata_validator
|
|
CreateFolderEntryResult._all_field_names_ = set(['metadata'])
|
|
CreateFolderEntryResult._all_fields_ = [('metadata', CreateFolderEntryResult._metadata_validator)]
|
|
|
|
CreateFolderError._path_validator = WriteError_validator
|
|
CreateFolderError._tagmap = {
|
|
'path': CreateFolderError._path_validator,
|
|
}
|
|
|
|
CreateFolderResult._metadata_validator = FolderMetadata_validator
|
|
CreateFolderResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['metadata']))
|
|
CreateFolderResult._all_fields_ = FileOpsResult._all_fields_ + [('metadata', CreateFolderResult._metadata_validator)]
|
|
|
|
DeleteArg._path_validator = WritePathOrId_validator
|
|
DeleteArg._parent_rev_validator = bv.Nullable(Rev_validator)
|
|
DeleteArg._all_field_names_ = set([
|
|
'path',
|
|
'parent_rev',
|
|
])
|
|
DeleteArg._all_fields_ = [
|
|
('path', DeleteArg._path_validator),
|
|
('parent_rev', DeleteArg._parent_rev_validator),
|
|
]
|
|
|
|
DeleteBatchArg._entries_validator = bv.List(DeleteArg_validator)
|
|
DeleteBatchArg._all_field_names_ = set(['entries'])
|
|
DeleteBatchArg._all_fields_ = [('entries', DeleteBatchArg._entries_validator)]
|
|
|
|
DeleteBatchError._too_many_write_operations_validator = bv.Void()
|
|
DeleteBatchError._other_validator = bv.Void()
|
|
DeleteBatchError._tagmap = {
|
|
'too_many_write_operations': DeleteBatchError._too_many_write_operations_validator,
|
|
'other': DeleteBatchError._other_validator,
|
|
}
|
|
|
|
DeleteBatchError.too_many_write_operations = DeleteBatchError('too_many_write_operations')
|
|
DeleteBatchError.other = DeleteBatchError('other')
|
|
|
|
DeleteBatchJobStatus._complete_validator = DeleteBatchResult_validator
|
|
DeleteBatchJobStatus._failed_validator = DeleteBatchError_validator
|
|
DeleteBatchJobStatus._other_validator = bv.Void()
|
|
DeleteBatchJobStatus._tagmap = {
|
|
'complete': DeleteBatchJobStatus._complete_validator,
|
|
'failed': DeleteBatchJobStatus._failed_validator,
|
|
'other': DeleteBatchJobStatus._other_validator,
|
|
}
|
|
DeleteBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap)
|
|
|
|
DeleteBatchJobStatus.other = DeleteBatchJobStatus('other')
|
|
|
|
DeleteBatchLaunch._complete_validator = DeleteBatchResult_validator
|
|
DeleteBatchLaunch._other_validator = bv.Void()
|
|
DeleteBatchLaunch._tagmap = {
|
|
'complete': DeleteBatchLaunch._complete_validator,
|
|
'other': DeleteBatchLaunch._other_validator,
|
|
}
|
|
DeleteBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap)
|
|
|
|
DeleteBatchLaunch.other = DeleteBatchLaunch('other')
|
|
|
|
DeleteBatchResult._entries_validator = bv.List(DeleteBatchResultEntry_validator)
|
|
DeleteBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries']))
|
|
DeleteBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', DeleteBatchResult._entries_validator)]
|
|
|
|
DeleteBatchResultData._metadata_validator = Metadata_validator
|
|
DeleteBatchResultData._all_field_names_ = set(['metadata'])
|
|
DeleteBatchResultData._all_fields_ = [('metadata', DeleteBatchResultData._metadata_validator)]
|
|
|
|
DeleteBatchResultEntry._success_validator = DeleteBatchResultData_validator
|
|
DeleteBatchResultEntry._failure_validator = DeleteError_validator
|
|
DeleteBatchResultEntry._tagmap = {
|
|
'success': DeleteBatchResultEntry._success_validator,
|
|
'failure': DeleteBatchResultEntry._failure_validator,
|
|
}
|
|
|
|
DeleteError._path_lookup_validator = LookupError_validator
|
|
DeleteError._path_write_validator = WriteError_validator
|
|
DeleteError._too_many_write_operations_validator = bv.Void()
|
|
DeleteError._too_many_files_validator = bv.Void()
|
|
DeleteError._other_validator = bv.Void()
|
|
DeleteError._tagmap = {
|
|
'path_lookup': DeleteError._path_lookup_validator,
|
|
'path_write': DeleteError._path_write_validator,
|
|
'too_many_write_operations': DeleteError._too_many_write_operations_validator,
|
|
'too_many_files': DeleteError._too_many_files_validator,
|
|
'other': DeleteError._other_validator,
|
|
}
|
|
|
|
DeleteError.too_many_write_operations = DeleteError('too_many_write_operations')
|
|
DeleteError.too_many_files = DeleteError('too_many_files')
|
|
DeleteError.other = DeleteError('other')
|
|
|
|
DeleteResult._metadata_validator = Metadata_validator
|
|
DeleteResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['metadata']))
|
|
DeleteResult._all_fields_ = FileOpsResult._all_fields_ + [('metadata', DeleteResult._metadata_validator)]
|
|
|
|
Metadata._name_validator = bv.String()
|
|
Metadata._path_lower_validator = bv.Nullable(bv.String())
|
|
Metadata._path_display_validator = bv.Nullable(bv.String())
|
|
Metadata._parent_shared_folder_id_validator = bv.Nullable(common.SharedFolderId_validator)
|
|
Metadata._field_names_ = set([
|
|
'name',
|
|
'path_lower',
|
|
'path_display',
|
|
'parent_shared_folder_id',
|
|
])
|
|
Metadata._all_field_names_ = Metadata._field_names_
|
|
Metadata._fields_ = [
|
|
('name', Metadata._name_validator),
|
|
('path_lower', Metadata._path_lower_validator),
|
|
('path_display', Metadata._path_display_validator),
|
|
('parent_shared_folder_id', Metadata._parent_shared_folder_id_validator),
|
|
]
|
|
Metadata._all_fields_ = Metadata._fields_
|
|
|
|
Metadata._tag_to_subtype_ = {
|
|
(u'file',): FileMetadata_validator,
|
|
(u'folder',): FolderMetadata_validator,
|
|
(u'deleted',): DeletedMetadata_validator,
|
|
}
|
|
Metadata._pytype_to_tag_and_subtype_ = {
|
|
FileMetadata: ((u'file',), FileMetadata_validator),
|
|
FolderMetadata: ((u'folder',), FolderMetadata_validator),
|
|
DeletedMetadata: ((u'deleted',), DeletedMetadata_validator),
|
|
}
|
|
Metadata._is_catch_all_ = False
|
|
|
|
DeletedMetadata._field_names_ = set([])
|
|
DeletedMetadata._all_field_names_ = Metadata._all_field_names_.union(DeletedMetadata._field_names_)
|
|
DeletedMetadata._fields_ = []
|
|
DeletedMetadata._all_fields_ = Metadata._all_fields_ + DeletedMetadata._fields_
|
|
|
|
Dimensions._height_validator = bv.UInt64()
|
|
Dimensions._width_validator = bv.UInt64()
|
|
Dimensions._all_field_names_ = set([
|
|
'height',
|
|
'width',
|
|
])
|
|
Dimensions._all_fields_ = [
|
|
('height', Dimensions._height_validator),
|
|
('width', Dimensions._width_validator),
|
|
]
|
|
|
|
DownloadArg._path_validator = ReadPath_validator
|
|
DownloadArg._rev_validator = bv.Nullable(Rev_validator)
|
|
DownloadArg._all_field_names_ = set([
|
|
'path',
|
|
'rev',
|
|
])
|
|
DownloadArg._all_fields_ = [
|
|
('path', DownloadArg._path_validator),
|
|
('rev', DownloadArg._rev_validator),
|
|
]
|
|
|
|
DownloadError._path_validator = LookupError_validator
|
|
DownloadError._unsupported_file_validator = bv.Void()
|
|
DownloadError._other_validator = bv.Void()
|
|
DownloadError._tagmap = {
|
|
'path': DownloadError._path_validator,
|
|
'unsupported_file': DownloadError._unsupported_file_validator,
|
|
'other': DownloadError._other_validator,
|
|
}
|
|
|
|
DownloadError.unsupported_file = DownloadError('unsupported_file')
|
|
DownloadError.other = DownloadError('other')
|
|
|
|
DownloadZipArg._path_validator = ReadPath_validator
|
|
DownloadZipArg._all_field_names_ = set(['path'])
|
|
DownloadZipArg._all_fields_ = [('path', DownloadZipArg._path_validator)]
|
|
|
|
DownloadZipError._path_validator = LookupError_validator
|
|
DownloadZipError._too_large_validator = bv.Void()
|
|
DownloadZipError._too_many_files_validator = bv.Void()
|
|
DownloadZipError._other_validator = bv.Void()
|
|
DownloadZipError._tagmap = {
|
|
'path': DownloadZipError._path_validator,
|
|
'too_large': DownloadZipError._too_large_validator,
|
|
'too_many_files': DownloadZipError._too_many_files_validator,
|
|
'other': DownloadZipError._other_validator,
|
|
}
|
|
|
|
DownloadZipError.too_large = DownloadZipError('too_large')
|
|
DownloadZipError.too_many_files = DownloadZipError('too_many_files')
|
|
DownloadZipError.other = DownloadZipError('other')
|
|
|
|
DownloadZipResult._metadata_validator = FolderMetadata_validator
|
|
DownloadZipResult._all_field_names_ = set(['metadata'])
|
|
DownloadZipResult._all_fields_ = [('metadata', DownloadZipResult._metadata_validator)]
|
|
|
|
ExportArg._path_validator = ReadPath_validator
|
|
ExportArg._all_field_names_ = set(['path'])
|
|
ExportArg._all_fields_ = [('path', ExportArg._path_validator)]
|
|
|
|
ExportError._path_validator = LookupError_validator
|
|
ExportError._non_exportable_validator = bv.Void()
|
|
ExportError._other_validator = bv.Void()
|
|
ExportError._tagmap = {
|
|
'path': ExportError._path_validator,
|
|
'non_exportable': ExportError._non_exportable_validator,
|
|
'other': ExportError._other_validator,
|
|
}
|
|
|
|
ExportError.non_exportable = ExportError('non_exportable')
|
|
ExportError.other = ExportError('other')
|
|
|
|
ExportInfo._export_as_validator = bv.Nullable(bv.String())
|
|
ExportInfo._all_field_names_ = set(['export_as'])
|
|
ExportInfo._all_fields_ = [('export_as', ExportInfo._export_as_validator)]
|
|
|
|
ExportMetadata._name_validator = bv.String()
|
|
ExportMetadata._size_validator = bv.UInt64()
|
|
ExportMetadata._export_hash_validator = bv.Nullable(Sha256HexHash_validator)
|
|
ExportMetadata._all_field_names_ = set([
|
|
'name',
|
|
'size',
|
|
'export_hash',
|
|
])
|
|
ExportMetadata._all_fields_ = [
|
|
('name', ExportMetadata._name_validator),
|
|
('size', ExportMetadata._size_validator),
|
|
('export_hash', ExportMetadata._export_hash_validator),
|
|
]
|
|
|
|
ExportResult._export_metadata_validator = ExportMetadata_validator
|
|
ExportResult._file_metadata_validator = FileMetadata_validator
|
|
ExportResult._all_field_names_ = set([
|
|
'export_metadata',
|
|
'file_metadata',
|
|
])
|
|
ExportResult._all_fields_ = [
|
|
('export_metadata', ExportResult._export_metadata_validator),
|
|
('file_metadata', ExportResult._file_metadata_validator),
|
|
]
|
|
|
|
FileMetadata._id_validator = Id_validator
|
|
FileMetadata._client_modified_validator = common.DropboxTimestamp_validator
|
|
FileMetadata._server_modified_validator = common.DropboxTimestamp_validator
|
|
FileMetadata._rev_validator = Rev_validator
|
|
FileMetadata._size_validator = bv.UInt64()
|
|
FileMetadata._media_info_validator = bv.Nullable(MediaInfo_validator)
|
|
FileMetadata._symlink_info_validator = bv.Nullable(SymlinkInfo_validator)
|
|
FileMetadata._sharing_info_validator = bv.Nullable(FileSharingInfo_validator)
|
|
FileMetadata._is_downloadable_validator = bv.Boolean()
|
|
FileMetadata._export_info_validator = bv.Nullable(ExportInfo_validator)
|
|
FileMetadata._property_groups_validator = bv.Nullable(bv.List(file_properties.PropertyGroup_validator))
|
|
FileMetadata._has_explicit_shared_members_validator = bv.Nullable(bv.Boolean())
|
|
FileMetadata._content_hash_validator = bv.Nullable(Sha256HexHash_validator)
|
|
FileMetadata._field_names_ = set([
|
|
'id',
|
|
'client_modified',
|
|
'server_modified',
|
|
'rev',
|
|
'size',
|
|
'media_info',
|
|
'symlink_info',
|
|
'sharing_info',
|
|
'is_downloadable',
|
|
'export_info',
|
|
'property_groups',
|
|
'has_explicit_shared_members',
|
|
'content_hash',
|
|
])
|
|
FileMetadata._all_field_names_ = Metadata._all_field_names_.union(FileMetadata._field_names_)
|
|
FileMetadata._fields_ = [
|
|
('id', FileMetadata._id_validator),
|
|
('client_modified', FileMetadata._client_modified_validator),
|
|
('server_modified', FileMetadata._server_modified_validator),
|
|
('rev', FileMetadata._rev_validator),
|
|
('size', FileMetadata._size_validator),
|
|
('media_info', FileMetadata._media_info_validator),
|
|
('symlink_info', FileMetadata._symlink_info_validator),
|
|
('sharing_info', FileMetadata._sharing_info_validator),
|
|
('is_downloadable', FileMetadata._is_downloadable_validator),
|
|
('export_info', FileMetadata._export_info_validator),
|
|
('property_groups', FileMetadata._property_groups_validator),
|
|
('has_explicit_shared_members', FileMetadata._has_explicit_shared_members_validator),
|
|
('content_hash', FileMetadata._content_hash_validator),
|
|
]
|
|
FileMetadata._all_fields_ = Metadata._all_fields_ + FileMetadata._fields_
|
|
|
|
SharingInfo._read_only_validator = bv.Boolean()
|
|
SharingInfo._all_field_names_ = set(['read_only'])
|
|
SharingInfo._all_fields_ = [('read_only', SharingInfo._read_only_validator)]
|
|
|
|
FileSharingInfo._parent_shared_folder_id_validator = common.SharedFolderId_validator
|
|
FileSharingInfo._modified_by_validator = bv.Nullable(users_common.AccountId_validator)
|
|
FileSharingInfo._all_field_names_ = SharingInfo._all_field_names_.union(set([
|
|
'parent_shared_folder_id',
|
|
'modified_by',
|
|
]))
|
|
FileSharingInfo._all_fields_ = SharingInfo._all_fields_ + [
|
|
('parent_shared_folder_id', FileSharingInfo._parent_shared_folder_id_validator),
|
|
('modified_by', FileSharingInfo._modified_by_validator),
|
|
]
|
|
|
|
FolderMetadata._id_validator = Id_validator
|
|
FolderMetadata._shared_folder_id_validator = bv.Nullable(common.SharedFolderId_validator)
|
|
FolderMetadata._sharing_info_validator = bv.Nullable(FolderSharingInfo_validator)
|
|
FolderMetadata._property_groups_validator = bv.Nullable(bv.List(file_properties.PropertyGroup_validator))
|
|
FolderMetadata._field_names_ = set([
|
|
'id',
|
|
'shared_folder_id',
|
|
'sharing_info',
|
|
'property_groups',
|
|
])
|
|
FolderMetadata._all_field_names_ = Metadata._all_field_names_.union(FolderMetadata._field_names_)
|
|
FolderMetadata._fields_ = [
|
|
('id', FolderMetadata._id_validator),
|
|
('shared_folder_id', FolderMetadata._shared_folder_id_validator),
|
|
('sharing_info', FolderMetadata._sharing_info_validator),
|
|
('property_groups', FolderMetadata._property_groups_validator),
|
|
]
|
|
FolderMetadata._all_fields_ = Metadata._all_fields_ + FolderMetadata._fields_
|
|
|
|
FolderSharingInfo._parent_shared_folder_id_validator = bv.Nullable(common.SharedFolderId_validator)
|
|
FolderSharingInfo._shared_folder_id_validator = bv.Nullable(common.SharedFolderId_validator)
|
|
FolderSharingInfo._traverse_only_validator = bv.Boolean()
|
|
FolderSharingInfo._no_access_validator = bv.Boolean()
|
|
FolderSharingInfo._all_field_names_ = SharingInfo._all_field_names_.union(set([
|
|
'parent_shared_folder_id',
|
|
'shared_folder_id',
|
|
'traverse_only',
|
|
'no_access',
|
|
]))
|
|
FolderSharingInfo._all_fields_ = SharingInfo._all_fields_ + [
|
|
('parent_shared_folder_id', FolderSharingInfo._parent_shared_folder_id_validator),
|
|
('shared_folder_id', FolderSharingInfo._shared_folder_id_validator),
|
|
('traverse_only', FolderSharingInfo._traverse_only_validator),
|
|
('no_access', FolderSharingInfo._no_access_validator),
|
|
]
|
|
|
|
GetCopyReferenceArg._path_validator = ReadPath_validator
|
|
GetCopyReferenceArg._all_field_names_ = set(['path'])
|
|
GetCopyReferenceArg._all_fields_ = [('path', GetCopyReferenceArg._path_validator)]
|
|
|
|
GetCopyReferenceError._path_validator = LookupError_validator
|
|
GetCopyReferenceError._other_validator = bv.Void()
|
|
GetCopyReferenceError._tagmap = {
|
|
'path': GetCopyReferenceError._path_validator,
|
|
'other': GetCopyReferenceError._other_validator,
|
|
}
|
|
|
|
GetCopyReferenceError.other = GetCopyReferenceError('other')
|
|
|
|
GetCopyReferenceResult._metadata_validator = Metadata_validator
|
|
GetCopyReferenceResult._copy_reference_validator = bv.String()
|
|
GetCopyReferenceResult._expires_validator = common.DropboxTimestamp_validator
|
|
GetCopyReferenceResult._all_field_names_ = set([
|
|
'metadata',
|
|
'copy_reference',
|
|
'expires',
|
|
])
|
|
GetCopyReferenceResult._all_fields_ = [
|
|
('metadata', GetCopyReferenceResult._metadata_validator),
|
|
('copy_reference', GetCopyReferenceResult._copy_reference_validator),
|
|
('expires', GetCopyReferenceResult._expires_validator),
|
|
]
|
|
|
|
GetTemporaryLinkArg._path_validator = ReadPath_validator
|
|
GetTemporaryLinkArg._all_field_names_ = set(['path'])
|
|
GetTemporaryLinkArg._all_fields_ = [('path', GetTemporaryLinkArg._path_validator)]
|
|
|
|
GetTemporaryLinkError._path_validator = LookupError_validator
|
|
GetTemporaryLinkError._email_not_verified_validator = bv.Void()
|
|
GetTemporaryLinkError._unsupported_file_validator = bv.Void()
|
|
GetTemporaryLinkError._other_validator = bv.Void()
|
|
GetTemporaryLinkError._tagmap = {
|
|
'path': GetTemporaryLinkError._path_validator,
|
|
'email_not_verified': GetTemporaryLinkError._email_not_verified_validator,
|
|
'unsupported_file': GetTemporaryLinkError._unsupported_file_validator,
|
|
'other': GetTemporaryLinkError._other_validator,
|
|
}
|
|
|
|
GetTemporaryLinkError.email_not_verified = GetTemporaryLinkError('email_not_verified')
|
|
GetTemporaryLinkError.unsupported_file = GetTemporaryLinkError('unsupported_file')
|
|
GetTemporaryLinkError.other = GetTemporaryLinkError('other')
|
|
|
|
GetTemporaryLinkResult._metadata_validator = FileMetadata_validator
|
|
GetTemporaryLinkResult._link_validator = bv.String()
|
|
GetTemporaryLinkResult._all_field_names_ = set([
|
|
'metadata',
|
|
'link',
|
|
])
|
|
GetTemporaryLinkResult._all_fields_ = [
|
|
('metadata', GetTemporaryLinkResult._metadata_validator),
|
|
('link', GetTemporaryLinkResult._link_validator),
|
|
]
|
|
|
|
GetTemporaryUploadLinkArg._commit_info_validator = CommitInfo_validator
|
|
GetTemporaryUploadLinkArg._duration_validator = bv.Float64(min_value=60.0, max_value=14400.0)
|
|
GetTemporaryUploadLinkArg._all_field_names_ = set([
|
|
'commit_info',
|
|
'duration',
|
|
])
|
|
GetTemporaryUploadLinkArg._all_fields_ = [
|
|
('commit_info', GetTemporaryUploadLinkArg._commit_info_validator),
|
|
('duration', GetTemporaryUploadLinkArg._duration_validator),
|
|
]
|
|
|
|
GetTemporaryUploadLinkResult._link_validator = bv.String()
|
|
GetTemporaryUploadLinkResult._all_field_names_ = set(['link'])
|
|
GetTemporaryUploadLinkResult._all_fields_ = [('link', GetTemporaryUploadLinkResult._link_validator)]
|
|
|
|
GetThumbnailBatchArg._entries_validator = bv.List(ThumbnailArg_validator)
|
|
GetThumbnailBatchArg._all_field_names_ = set(['entries'])
|
|
GetThumbnailBatchArg._all_fields_ = [('entries', GetThumbnailBatchArg._entries_validator)]
|
|
|
|
GetThumbnailBatchError._too_many_files_validator = bv.Void()
|
|
GetThumbnailBatchError._other_validator = bv.Void()
|
|
GetThumbnailBatchError._tagmap = {
|
|
'too_many_files': GetThumbnailBatchError._too_many_files_validator,
|
|
'other': GetThumbnailBatchError._other_validator,
|
|
}
|
|
|
|
GetThumbnailBatchError.too_many_files = GetThumbnailBatchError('too_many_files')
|
|
GetThumbnailBatchError.other = GetThumbnailBatchError('other')
|
|
|
|
GetThumbnailBatchResult._entries_validator = bv.List(GetThumbnailBatchResultEntry_validator)
|
|
GetThumbnailBatchResult._all_field_names_ = set(['entries'])
|
|
GetThumbnailBatchResult._all_fields_ = [('entries', GetThumbnailBatchResult._entries_validator)]
|
|
|
|
GetThumbnailBatchResultData._metadata_validator = FileMetadata_validator
|
|
GetThumbnailBatchResultData._thumbnail_validator = bv.String()
|
|
GetThumbnailBatchResultData._all_field_names_ = set([
|
|
'metadata',
|
|
'thumbnail',
|
|
])
|
|
GetThumbnailBatchResultData._all_fields_ = [
|
|
('metadata', GetThumbnailBatchResultData._metadata_validator),
|
|
('thumbnail', GetThumbnailBatchResultData._thumbnail_validator),
|
|
]
|
|
|
|
GetThumbnailBatchResultEntry._success_validator = GetThumbnailBatchResultData_validator
|
|
GetThumbnailBatchResultEntry._failure_validator = ThumbnailError_validator
|
|
GetThumbnailBatchResultEntry._other_validator = bv.Void()
|
|
GetThumbnailBatchResultEntry._tagmap = {
|
|
'success': GetThumbnailBatchResultEntry._success_validator,
|
|
'failure': GetThumbnailBatchResultEntry._failure_validator,
|
|
'other': GetThumbnailBatchResultEntry._other_validator,
|
|
}
|
|
|
|
GetThumbnailBatchResultEntry.other = GetThumbnailBatchResultEntry('other')
|
|
|
|
GpsCoordinates._latitude_validator = bv.Float64()
|
|
GpsCoordinates._longitude_validator = bv.Float64()
|
|
GpsCoordinates._all_field_names_ = set([
|
|
'latitude',
|
|
'longitude',
|
|
])
|
|
GpsCoordinates._all_fields_ = [
|
|
('latitude', GpsCoordinates._latitude_validator),
|
|
('longitude', GpsCoordinates._longitude_validator),
|
|
]
|
|
|
|
ListFolderArg._path_validator = PathROrId_validator
|
|
ListFolderArg._recursive_validator = bv.Boolean()
|
|
ListFolderArg._include_media_info_validator = bv.Boolean()
|
|
ListFolderArg._include_deleted_validator = bv.Boolean()
|
|
ListFolderArg._include_has_explicit_shared_members_validator = bv.Boolean()
|
|
ListFolderArg._include_mounted_folders_validator = bv.Boolean()
|
|
ListFolderArg._limit_validator = bv.Nullable(bv.UInt32(min_value=1, max_value=2000))
|
|
ListFolderArg._shared_link_validator = bv.Nullable(SharedLink_validator)
|
|
ListFolderArg._include_property_groups_validator = bv.Nullable(file_properties.TemplateFilterBase_validator)
|
|
ListFolderArg._include_non_downloadable_files_validator = bv.Boolean()
|
|
ListFolderArg._all_field_names_ = set([
|
|
'path',
|
|
'recursive',
|
|
'include_media_info',
|
|
'include_deleted',
|
|
'include_has_explicit_shared_members',
|
|
'include_mounted_folders',
|
|
'limit',
|
|
'shared_link',
|
|
'include_property_groups',
|
|
'include_non_downloadable_files',
|
|
])
|
|
ListFolderArg._all_fields_ = [
|
|
('path', ListFolderArg._path_validator),
|
|
('recursive', ListFolderArg._recursive_validator),
|
|
('include_media_info', ListFolderArg._include_media_info_validator),
|
|
('include_deleted', ListFolderArg._include_deleted_validator),
|
|
('include_has_explicit_shared_members', ListFolderArg._include_has_explicit_shared_members_validator),
|
|
('include_mounted_folders', ListFolderArg._include_mounted_folders_validator),
|
|
('limit', ListFolderArg._limit_validator),
|
|
('shared_link', ListFolderArg._shared_link_validator),
|
|
('include_property_groups', ListFolderArg._include_property_groups_validator),
|
|
('include_non_downloadable_files', ListFolderArg._include_non_downloadable_files_validator),
|
|
]
|
|
|
|
ListFolderContinueArg._cursor_validator = ListFolderCursor_validator
|
|
ListFolderContinueArg._all_field_names_ = set(['cursor'])
|
|
ListFolderContinueArg._all_fields_ = [('cursor', ListFolderContinueArg._cursor_validator)]
|
|
|
|
ListFolderContinueError._path_validator = LookupError_validator
|
|
ListFolderContinueError._reset_validator = bv.Void()
|
|
ListFolderContinueError._other_validator = bv.Void()
|
|
ListFolderContinueError._tagmap = {
|
|
'path': ListFolderContinueError._path_validator,
|
|
'reset': ListFolderContinueError._reset_validator,
|
|
'other': ListFolderContinueError._other_validator,
|
|
}
|
|
|
|
ListFolderContinueError.reset = ListFolderContinueError('reset')
|
|
ListFolderContinueError.other = ListFolderContinueError('other')
|
|
|
|
ListFolderError._path_validator = LookupError_validator
|
|
ListFolderError._other_validator = bv.Void()
|
|
ListFolderError._tagmap = {
|
|
'path': ListFolderError._path_validator,
|
|
'other': ListFolderError._other_validator,
|
|
}
|
|
|
|
ListFolderError.other = ListFolderError('other')
|
|
|
|
ListFolderGetLatestCursorResult._cursor_validator = ListFolderCursor_validator
|
|
ListFolderGetLatestCursorResult._all_field_names_ = set(['cursor'])
|
|
ListFolderGetLatestCursorResult._all_fields_ = [('cursor', ListFolderGetLatestCursorResult._cursor_validator)]
|
|
|
|
ListFolderLongpollArg._cursor_validator = ListFolderCursor_validator
|
|
ListFolderLongpollArg._timeout_validator = bv.UInt64(min_value=30, max_value=480)
|
|
ListFolderLongpollArg._all_field_names_ = set([
|
|
'cursor',
|
|
'timeout',
|
|
])
|
|
ListFolderLongpollArg._all_fields_ = [
|
|
('cursor', ListFolderLongpollArg._cursor_validator),
|
|
('timeout', ListFolderLongpollArg._timeout_validator),
|
|
]
|
|
|
|
ListFolderLongpollError._reset_validator = bv.Void()
|
|
ListFolderLongpollError._other_validator = bv.Void()
|
|
ListFolderLongpollError._tagmap = {
|
|
'reset': ListFolderLongpollError._reset_validator,
|
|
'other': ListFolderLongpollError._other_validator,
|
|
}
|
|
|
|
ListFolderLongpollError.reset = ListFolderLongpollError('reset')
|
|
ListFolderLongpollError.other = ListFolderLongpollError('other')
|
|
|
|
ListFolderLongpollResult._changes_validator = bv.Boolean()
|
|
ListFolderLongpollResult._backoff_validator = bv.Nullable(bv.UInt64())
|
|
ListFolderLongpollResult._all_field_names_ = set([
|
|
'changes',
|
|
'backoff',
|
|
])
|
|
ListFolderLongpollResult._all_fields_ = [
|
|
('changes', ListFolderLongpollResult._changes_validator),
|
|
('backoff', ListFolderLongpollResult._backoff_validator),
|
|
]
|
|
|
|
ListFolderResult._entries_validator = bv.List(Metadata_validator)
|
|
ListFolderResult._cursor_validator = ListFolderCursor_validator
|
|
ListFolderResult._has_more_validator = bv.Boolean()
|
|
ListFolderResult._all_field_names_ = set([
|
|
'entries',
|
|
'cursor',
|
|
'has_more',
|
|
])
|
|
ListFolderResult._all_fields_ = [
|
|
('entries', ListFolderResult._entries_validator),
|
|
('cursor', ListFolderResult._cursor_validator),
|
|
('has_more', ListFolderResult._has_more_validator),
|
|
]
|
|
|
|
ListRevisionsArg._path_validator = PathOrId_validator
|
|
ListRevisionsArg._mode_validator = ListRevisionsMode_validator
|
|
ListRevisionsArg._limit_validator = bv.UInt64(min_value=1, max_value=100)
|
|
ListRevisionsArg._all_field_names_ = set([
|
|
'path',
|
|
'mode',
|
|
'limit',
|
|
])
|
|
ListRevisionsArg._all_fields_ = [
|
|
('path', ListRevisionsArg._path_validator),
|
|
('mode', ListRevisionsArg._mode_validator),
|
|
('limit', ListRevisionsArg._limit_validator),
|
|
]
|
|
|
|
ListRevisionsError._path_validator = LookupError_validator
|
|
ListRevisionsError._other_validator = bv.Void()
|
|
ListRevisionsError._tagmap = {
|
|
'path': ListRevisionsError._path_validator,
|
|
'other': ListRevisionsError._other_validator,
|
|
}
|
|
|
|
ListRevisionsError.other = ListRevisionsError('other')
|
|
|
|
ListRevisionsMode._path_validator = bv.Void()
|
|
ListRevisionsMode._id_validator = bv.Void()
|
|
ListRevisionsMode._other_validator = bv.Void()
|
|
ListRevisionsMode._tagmap = {
|
|
'path': ListRevisionsMode._path_validator,
|
|
'id': ListRevisionsMode._id_validator,
|
|
'other': ListRevisionsMode._other_validator,
|
|
}
|
|
|
|
ListRevisionsMode.path = ListRevisionsMode('path')
|
|
ListRevisionsMode.id = ListRevisionsMode('id')
|
|
ListRevisionsMode.other = ListRevisionsMode('other')
|
|
|
|
ListRevisionsResult._is_deleted_validator = bv.Boolean()
|
|
ListRevisionsResult._server_deleted_validator = bv.Nullable(common.DropboxTimestamp_validator)
|
|
ListRevisionsResult._entries_validator = bv.List(FileMetadata_validator)
|
|
ListRevisionsResult._all_field_names_ = set([
|
|
'is_deleted',
|
|
'server_deleted',
|
|
'entries',
|
|
])
|
|
ListRevisionsResult._all_fields_ = [
|
|
('is_deleted', ListRevisionsResult._is_deleted_validator),
|
|
('server_deleted', ListRevisionsResult._server_deleted_validator),
|
|
('entries', ListRevisionsResult._entries_validator),
|
|
]
|
|
|
|
LookupError._malformed_path_validator = MalformedPathError_validator
|
|
LookupError._not_found_validator = bv.Void()
|
|
LookupError._not_file_validator = bv.Void()
|
|
LookupError._not_folder_validator = bv.Void()
|
|
LookupError._restricted_content_validator = bv.Void()
|
|
LookupError._unsupported_content_type_validator = bv.Void()
|
|
LookupError._other_validator = bv.Void()
|
|
LookupError._tagmap = {
|
|
'malformed_path': LookupError._malformed_path_validator,
|
|
'not_found': LookupError._not_found_validator,
|
|
'not_file': LookupError._not_file_validator,
|
|
'not_folder': LookupError._not_folder_validator,
|
|
'restricted_content': LookupError._restricted_content_validator,
|
|
'unsupported_content_type': LookupError._unsupported_content_type_validator,
|
|
'other': LookupError._other_validator,
|
|
}
|
|
|
|
LookupError.not_found = LookupError('not_found')
|
|
LookupError.not_file = LookupError('not_file')
|
|
LookupError.not_folder = LookupError('not_folder')
|
|
LookupError.restricted_content = LookupError('restricted_content')
|
|
LookupError.unsupported_content_type = LookupError('unsupported_content_type')
|
|
LookupError.other = LookupError('other')
|
|
|
|
MediaInfo._pending_validator = bv.Void()
|
|
MediaInfo._metadata_validator = MediaMetadata_validator
|
|
MediaInfo._tagmap = {
|
|
'pending': MediaInfo._pending_validator,
|
|
'metadata': MediaInfo._metadata_validator,
|
|
}
|
|
|
|
MediaInfo.pending = MediaInfo('pending')
|
|
|
|
MediaMetadata._dimensions_validator = bv.Nullable(Dimensions_validator)
|
|
MediaMetadata._location_validator = bv.Nullable(GpsCoordinates_validator)
|
|
MediaMetadata._time_taken_validator = bv.Nullable(common.DropboxTimestamp_validator)
|
|
MediaMetadata._field_names_ = set([
|
|
'dimensions',
|
|
'location',
|
|
'time_taken',
|
|
])
|
|
MediaMetadata._all_field_names_ = MediaMetadata._field_names_
|
|
MediaMetadata._fields_ = [
|
|
('dimensions', MediaMetadata._dimensions_validator),
|
|
('location', MediaMetadata._location_validator),
|
|
('time_taken', MediaMetadata._time_taken_validator),
|
|
]
|
|
MediaMetadata._all_fields_ = MediaMetadata._fields_
|
|
|
|
MediaMetadata._tag_to_subtype_ = {
|
|
(u'photo',): PhotoMetadata_validator,
|
|
(u'video',): VideoMetadata_validator,
|
|
}
|
|
MediaMetadata._pytype_to_tag_and_subtype_ = {
|
|
PhotoMetadata: ((u'photo',), PhotoMetadata_validator),
|
|
VideoMetadata: ((u'video',), VideoMetadata_validator),
|
|
}
|
|
MediaMetadata._is_catch_all_ = False
|
|
|
|
RelocationBatchArgBase._entries_validator = bv.List(RelocationPath_validator, min_items=1)
|
|
RelocationBatchArgBase._autorename_validator = bv.Boolean()
|
|
RelocationBatchArgBase._all_field_names_ = set([
|
|
'entries',
|
|
'autorename',
|
|
])
|
|
RelocationBatchArgBase._all_fields_ = [
|
|
('entries', RelocationBatchArgBase._entries_validator),
|
|
('autorename', RelocationBatchArgBase._autorename_validator),
|
|
]
|
|
|
|
MoveBatchArg._allow_ownership_transfer_validator = bv.Boolean()
|
|
MoveBatchArg._all_field_names_ = RelocationBatchArgBase._all_field_names_.union(set(['allow_ownership_transfer']))
|
|
MoveBatchArg._all_fields_ = RelocationBatchArgBase._all_fields_ + [('allow_ownership_transfer', MoveBatchArg._allow_ownership_transfer_validator)]
|
|
|
|
PhotoMetadata._field_names_ = set([])
|
|
PhotoMetadata._all_field_names_ = MediaMetadata._all_field_names_.union(PhotoMetadata._field_names_)
|
|
PhotoMetadata._fields_ = []
|
|
PhotoMetadata._all_fields_ = MediaMetadata._all_fields_ + PhotoMetadata._fields_
|
|
|
|
PreviewArg._path_validator = ReadPath_validator
|
|
PreviewArg._rev_validator = bv.Nullable(Rev_validator)
|
|
PreviewArg._all_field_names_ = set([
|
|
'path',
|
|
'rev',
|
|
])
|
|
PreviewArg._all_fields_ = [
|
|
('path', PreviewArg._path_validator),
|
|
('rev', PreviewArg._rev_validator),
|
|
]
|
|
|
|
PreviewError._path_validator = LookupError_validator
|
|
PreviewError._in_progress_validator = bv.Void()
|
|
PreviewError._unsupported_extension_validator = bv.Void()
|
|
PreviewError._unsupported_content_validator = bv.Void()
|
|
PreviewError._tagmap = {
|
|
'path': PreviewError._path_validator,
|
|
'in_progress': PreviewError._in_progress_validator,
|
|
'unsupported_extension': PreviewError._unsupported_extension_validator,
|
|
'unsupported_content': PreviewError._unsupported_content_validator,
|
|
}
|
|
|
|
PreviewError.in_progress = PreviewError('in_progress')
|
|
PreviewError.unsupported_extension = PreviewError('unsupported_extension')
|
|
PreviewError.unsupported_content = PreviewError('unsupported_content')
|
|
|
|
RelocationPath._from_path_validator = WritePathOrId_validator
|
|
RelocationPath._to_path_validator = WritePathOrId_validator
|
|
RelocationPath._all_field_names_ = set([
|
|
'from_path',
|
|
'to_path',
|
|
])
|
|
RelocationPath._all_fields_ = [
|
|
('from_path', RelocationPath._from_path_validator),
|
|
('to_path', RelocationPath._to_path_validator),
|
|
]
|
|
|
|
RelocationArg._allow_shared_folder_validator = bv.Boolean()
|
|
RelocationArg._autorename_validator = bv.Boolean()
|
|
RelocationArg._allow_ownership_transfer_validator = bv.Boolean()
|
|
RelocationArg._all_field_names_ = RelocationPath._all_field_names_.union(set([
|
|
'allow_shared_folder',
|
|
'autorename',
|
|
'allow_ownership_transfer',
|
|
]))
|
|
RelocationArg._all_fields_ = RelocationPath._all_fields_ + [
|
|
('allow_shared_folder', RelocationArg._allow_shared_folder_validator),
|
|
('autorename', RelocationArg._autorename_validator),
|
|
('allow_ownership_transfer', RelocationArg._allow_ownership_transfer_validator),
|
|
]
|
|
|
|
RelocationBatchArg._allow_shared_folder_validator = bv.Boolean()
|
|
RelocationBatchArg._allow_ownership_transfer_validator = bv.Boolean()
|
|
RelocationBatchArg._all_field_names_ = RelocationBatchArgBase._all_field_names_.union(set([
|
|
'allow_shared_folder',
|
|
'allow_ownership_transfer',
|
|
]))
|
|
RelocationBatchArg._all_fields_ = RelocationBatchArgBase._all_fields_ + [
|
|
('allow_shared_folder', RelocationBatchArg._allow_shared_folder_validator),
|
|
('allow_ownership_transfer', RelocationBatchArg._allow_ownership_transfer_validator),
|
|
]
|
|
|
|
RelocationError._from_lookup_validator = LookupError_validator
|
|
RelocationError._from_write_validator = WriteError_validator
|
|
RelocationError._to_validator = WriteError_validator
|
|
RelocationError._cant_copy_shared_folder_validator = bv.Void()
|
|
RelocationError._cant_nest_shared_folder_validator = bv.Void()
|
|
RelocationError._cant_move_folder_into_itself_validator = bv.Void()
|
|
RelocationError._too_many_files_validator = bv.Void()
|
|
RelocationError._duplicated_or_nested_paths_validator = bv.Void()
|
|
RelocationError._cant_transfer_ownership_validator = bv.Void()
|
|
RelocationError._insufficient_quota_validator = bv.Void()
|
|
RelocationError._internal_error_validator = bv.Void()
|
|
RelocationError._cant_move_shared_folder_validator = bv.Void()
|
|
RelocationError._other_validator = bv.Void()
|
|
RelocationError._tagmap = {
|
|
'from_lookup': RelocationError._from_lookup_validator,
|
|
'from_write': RelocationError._from_write_validator,
|
|
'to': RelocationError._to_validator,
|
|
'cant_copy_shared_folder': RelocationError._cant_copy_shared_folder_validator,
|
|
'cant_nest_shared_folder': RelocationError._cant_nest_shared_folder_validator,
|
|
'cant_move_folder_into_itself': RelocationError._cant_move_folder_into_itself_validator,
|
|
'too_many_files': RelocationError._too_many_files_validator,
|
|
'duplicated_or_nested_paths': RelocationError._duplicated_or_nested_paths_validator,
|
|
'cant_transfer_ownership': RelocationError._cant_transfer_ownership_validator,
|
|
'insufficient_quota': RelocationError._insufficient_quota_validator,
|
|
'internal_error': RelocationError._internal_error_validator,
|
|
'cant_move_shared_folder': RelocationError._cant_move_shared_folder_validator,
|
|
'other': RelocationError._other_validator,
|
|
}
|
|
|
|
RelocationError.cant_copy_shared_folder = RelocationError('cant_copy_shared_folder')
|
|
RelocationError.cant_nest_shared_folder = RelocationError('cant_nest_shared_folder')
|
|
RelocationError.cant_move_folder_into_itself = RelocationError('cant_move_folder_into_itself')
|
|
RelocationError.too_many_files = RelocationError('too_many_files')
|
|
RelocationError.duplicated_or_nested_paths = RelocationError('duplicated_or_nested_paths')
|
|
RelocationError.cant_transfer_ownership = RelocationError('cant_transfer_ownership')
|
|
RelocationError.insufficient_quota = RelocationError('insufficient_quota')
|
|
RelocationError.internal_error = RelocationError('internal_error')
|
|
RelocationError.cant_move_shared_folder = RelocationError('cant_move_shared_folder')
|
|
RelocationError.other = RelocationError('other')
|
|
|
|
RelocationBatchError._too_many_write_operations_validator = bv.Void()
|
|
RelocationBatchError._tagmap = {
|
|
'too_many_write_operations': RelocationBatchError._too_many_write_operations_validator,
|
|
}
|
|
RelocationBatchError._tagmap.update(RelocationError._tagmap)
|
|
|
|
RelocationBatchError.too_many_write_operations = RelocationBatchError('too_many_write_operations')
|
|
|
|
RelocationBatchErrorEntry._relocation_error_validator = RelocationError_validator
|
|
RelocationBatchErrorEntry._internal_error_validator = bv.Void()
|
|
RelocationBatchErrorEntry._too_many_write_operations_validator = bv.Void()
|
|
RelocationBatchErrorEntry._other_validator = bv.Void()
|
|
RelocationBatchErrorEntry._tagmap = {
|
|
'relocation_error': RelocationBatchErrorEntry._relocation_error_validator,
|
|
'internal_error': RelocationBatchErrorEntry._internal_error_validator,
|
|
'too_many_write_operations': RelocationBatchErrorEntry._too_many_write_operations_validator,
|
|
'other': RelocationBatchErrorEntry._other_validator,
|
|
}
|
|
|
|
RelocationBatchErrorEntry.internal_error = RelocationBatchErrorEntry('internal_error')
|
|
RelocationBatchErrorEntry.too_many_write_operations = RelocationBatchErrorEntry('too_many_write_operations')
|
|
RelocationBatchErrorEntry.other = RelocationBatchErrorEntry('other')
|
|
|
|
RelocationBatchJobStatus._complete_validator = RelocationBatchResult_validator
|
|
RelocationBatchJobStatus._failed_validator = RelocationBatchError_validator
|
|
RelocationBatchJobStatus._tagmap = {
|
|
'complete': RelocationBatchJobStatus._complete_validator,
|
|
'failed': RelocationBatchJobStatus._failed_validator,
|
|
}
|
|
RelocationBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap)
|
|
|
|
RelocationBatchLaunch._complete_validator = RelocationBatchResult_validator
|
|
RelocationBatchLaunch._other_validator = bv.Void()
|
|
RelocationBatchLaunch._tagmap = {
|
|
'complete': RelocationBatchLaunch._complete_validator,
|
|
'other': RelocationBatchLaunch._other_validator,
|
|
}
|
|
RelocationBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap)
|
|
|
|
RelocationBatchLaunch.other = RelocationBatchLaunch('other')
|
|
|
|
RelocationBatchResult._entries_validator = bv.List(RelocationBatchResultData_validator)
|
|
RelocationBatchResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries']))
|
|
RelocationBatchResult._all_fields_ = FileOpsResult._all_fields_ + [('entries', RelocationBatchResult._entries_validator)]
|
|
|
|
RelocationBatchResultData._metadata_validator = Metadata_validator
|
|
RelocationBatchResultData._all_field_names_ = set(['metadata'])
|
|
RelocationBatchResultData._all_fields_ = [('metadata', RelocationBatchResultData._metadata_validator)]
|
|
|
|
RelocationBatchResultEntry._success_validator = Metadata_validator
|
|
RelocationBatchResultEntry._failure_validator = RelocationBatchErrorEntry_validator
|
|
RelocationBatchResultEntry._other_validator = bv.Void()
|
|
RelocationBatchResultEntry._tagmap = {
|
|
'success': RelocationBatchResultEntry._success_validator,
|
|
'failure': RelocationBatchResultEntry._failure_validator,
|
|
'other': RelocationBatchResultEntry._other_validator,
|
|
}
|
|
|
|
RelocationBatchResultEntry.other = RelocationBatchResultEntry('other')
|
|
|
|
RelocationBatchV2JobStatus._complete_validator = RelocationBatchV2Result_validator
|
|
RelocationBatchV2JobStatus._tagmap = {
|
|
'complete': RelocationBatchV2JobStatus._complete_validator,
|
|
}
|
|
RelocationBatchV2JobStatus._tagmap.update(async_.PollResultBase._tagmap)
|
|
|
|
RelocationBatchV2Launch._complete_validator = RelocationBatchV2Result_validator
|
|
RelocationBatchV2Launch._tagmap = {
|
|
'complete': RelocationBatchV2Launch._complete_validator,
|
|
}
|
|
RelocationBatchV2Launch._tagmap.update(async_.LaunchResultBase._tagmap)
|
|
|
|
RelocationBatchV2Result._entries_validator = bv.List(RelocationBatchResultEntry_validator)
|
|
RelocationBatchV2Result._all_field_names_ = FileOpsResult._all_field_names_.union(set(['entries']))
|
|
RelocationBatchV2Result._all_fields_ = FileOpsResult._all_fields_ + [('entries', RelocationBatchV2Result._entries_validator)]
|
|
|
|
RelocationResult._metadata_validator = Metadata_validator
|
|
RelocationResult._all_field_names_ = FileOpsResult._all_field_names_.union(set(['metadata']))
|
|
RelocationResult._all_fields_ = FileOpsResult._all_fields_ + [('metadata', RelocationResult._metadata_validator)]
|
|
|
|
RestoreArg._path_validator = WritePath_validator
|
|
RestoreArg._rev_validator = Rev_validator
|
|
RestoreArg._all_field_names_ = set([
|
|
'path',
|
|
'rev',
|
|
])
|
|
RestoreArg._all_fields_ = [
|
|
('path', RestoreArg._path_validator),
|
|
('rev', RestoreArg._rev_validator),
|
|
]
|
|
|
|
RestoreError._path_lookup_validator = LookupError_validator
|
|
RestoreError._path_write_validator = WriteError_validator
|
|
RestoreError._invalid_revision_validator = bv.Void()
|
|
RestoreError._other_validator = bv.Void()
|
|
RestoreError._tagmap = {
|
|
'path_lookup': RestoreError._path_lookup_validator,
|
|
'path_write': RestoreError._path_write_validator,
|
|
'invalid_revision': RestoreError._invalid_revision_validator,
|
|
'other': RestoreError._other_validator,
|
|
}
|
|
|
|
RestoreError.invalid_revision = RestoreError('invalid_revision')
|
|
RestoreError.other = RestoreError('other')
|
|
|
|
SaveCopyReferenceArg._copy_reference_validator = bv.String()
|
|
SaveCopyReferenceArg._path_validator = Path_validator
|
|
SaveCopyReferenceArg._all_field_names_ = set([
|
|
'copy_reference',
|
|
'path',
|
|
])
|
|
SaveCopyReferenceArg._all_fields_ = [
|
|
('copy_reference', SaveCopyReferenceArg._copy_reference_validator),
|
|
('path', SaveCopyReferenceArg._path_validator),
|
|
]
|
|
|
|
SaveCopyReferenceError._path_validator = WriteError_validator
|
|
SaveCopyReferenceError._invalid_copy_reference_validator = bv.Void()
|
|
SaveCopyReferenceError._no_permission_validator = bv.Void()
|
|
SaveCopyReferenceError._not_found_validator = bv.Void()
|
|
SaveCopyReferenceError._too_many_files_validator = bv.Void()
|
|
SaveCopyReferenceError._other_validator = bv.Void()
|
|
SaveCopyReferenceError._tagmap = {
|
|
'path': SaveCopyReferenceError._path_validator,
|
|
'invalid_copy_reference': SaveCopyReferenceError._invalid_copy_reference_validator,
|
|
'no_permission': SaveCopyReferenceError._no_permission_validator,
|
|
'not_found': SaveCopyReferenceError._not_found_validator,
|
|
'too_many_files': SaveCopyReferenceError._too_many_files_validator,
|
|
'other': SaveCopyReferenceError._other_validator,
|
|
}
|
|
|
|
SaveCopyReferenceError.invalid_copy_reference = SaveCopyReferenceError('invalid_copy_reference')
|
|
SaveCopyReferenceError.no_permission = SaveCopyReferenceError('no_permission')
|
|
SaveCopyReferenceError.not_found = SaveCopyReferenceError('not_found')
|
|
SaveCopyReferenceError.too_many_files = SaveCopyReferenceError('too_many_files')
|
|
SaveCopyReferenceError.other = SaveCopyReferenceError('other')
|
|
|
|
SaveCopyReferenceResult._metadata_validator = Metadata_validator
|
|
SaveCopyReferenceResult._all_field_names_ = set(['metadata'])
|
|
SaveCopyReferenceResult._all_fields_ = [('metadata', SaveCopyReferenceResult._metadata_validator)]
|
|
|
|
SaveUrlArg._path_validator = Path_validator
|
|
SaveUrlArg._url_validator = bv.String()
|
|
SaveUrlArg._all_field_names_ = set([
|
|
'path',
|
|
'url',
|
|
])
|
|
SaveUrlArg._all_fields_ = [
|
|
('path', SaveUrlArg._path_validator),
|
|
('url', SaveUrlArg._url_validator),
|
|
]
|
|
|
|
SaveUrlError._path_validator = WriteError_validator
|
|
SaveUrlError._download_failed_validator = bv.Void()
|
|
SaveUrlError._invalid_url_validator = bv.Void()
|
|
SaveUrlError._not_found_validator = bv.Void()
|
|
SaveUrlError._other_validator = bv.Void()
|
|
SaveUrlError._tagmap = {
|
|
'path': SaveUrlError._path_validator,
|
|
'download_failed': SaveUrlError._download_failed_validator,
|
|
'invalid_url': SaveUrlError._invalid_url_validator,
|
|
'not_found': SaveUrlError._not_found_validator,
|
|
'other': SaveUrlError._other_validator,
|
|
}
|
|
|
|
SaveUrlError.download_failed = SaveUrlError('download_failed')
|
|
SaveUrlError.invalid_url = SaveUrlError('invalid_url')
|
|
SaveUrlError.not_found = SaveUrlError('not_found')
|
|
SaveUrlError.other = SaveUrlError('other')
|
|
|
|
SaveUrlJobStatus._complete_validator = FileMetadata_validator
|
|
SaveUrlJobStatus._failed_validator = SaveUrlError_validator
|
|
SaveUrlJobStatus._tagmap = {
|
|
'complete': SaveUrlJobStatus._complete_validator,
|
|
'failed': SaveUrlJobStatus._failed_validator,
|
|
}
|
|
SaveUrlJobStatus._tagmap.update(async_.PollResultBase._tagmap)
|
|
|
|
SaveUrlResult._complete_validator = FileMetadata_validator
|
|
SaveUrlResult._tagmap = {
|
|
'complete': SaveUrlResult._complete_validator,
|
|
}
|
|
SaveUrlResult._tagmap.update(async_.LaunchResultBase._tagmap)
|
|
|
|
SearchArg._path_validator = PathROrId_validator
|
|
SearchArg._query_validator = bv.String()
|
|
SearchArg._start_validator = bv.UInt64(max_value=9999)
|
|
SearchArg._max_results_validator = bv.UInt64(min_value=1, max_value=1000)
|
|
SearchArg._mode_validator = SearchMode_validator
|
|
SearchArg._all_field_names_ = set([
|
|
'path',
|
|
'query',
|
|
'start',
|
|
'max_results',
|
|
'mode',
|
|
])
|
|
SearchArg._all_fields_ = [
|
|
('path', SearchArg._path_validator),
|
|
('query', SearchArg._query_validator),
|
|
('start', SearchArg._start_validator),
|
|
('max_results', SearchArg._max_results_validator),
|
|
('mode', SearchArg._mode_validator),
|
|
]
|
|
|
|
SearchError._path_validator = LookupError_validator
|
|
SearchError._other_validator = bv.Void()
|
|
SearchError._tagmap = {
|
|
'path': SearchError._path_validator,
|
|
'other': SearchError._other_validator,
|
|
}
|
|
|
|
SearchError.other = SearchError('other')
|
|
|
|
SearchMatch._match_type_validator = SearchMatchType_validator
|
|
SearchMatch._metadata_validator = Metadata_validator
|
|
SearchMatch._all_field_names_ = set([
|
|
'match_type',
|
|
'metadata',
|
|
])
|
|
SearchMatch._all_fields_ = [
|
|
('match_type', SearchMatch._match_type_validator),
|
|
('metadata', SearchMatch._metadata_validator),
|
|
]
|
|
|
|
SearchMatchType._filename_validator = bv.Void()
|
|
SearchMatchType._content_validator = bv.Void()
|
|
SearchMatchType._both_validator = bv.Void()
|
|
SearchMatchType._tagmap = {
|
|
'filename': SearchMatchType._filename_validator,
|
|
'content': SearchMatchType._content_validator,
|
|
'both': SearchMatchType._both_validator,
|
|
}
|
|
|
|
SearchMatchType.filename = SearchMatchType('filename')
|
|
SearchMatchType.content = SearchMatchType('content')
|
|
SearchMatchType.both = SearchMatchType('both')
|
|
|
|
SearchMode._filename_validator = bv.Void()
|
|
SearchMode._filename_and_content_validator = bv.Void()
|
|
SearchMode._deleted_filename_validator = bv.Void()
|
|
SearchMode._tagmap = {
|
|
'filename': SearchMode._filename_validator,
|
|
'filename_and_content': SearchMode._filename_and_content_validator,
|
|
'deleted_filename': SearchMode._deleted_filename_validator,
|
|
}
|
|
|
|
SearchMode.filename = SearchMode('filename')
|
|
SearchMode.filename_and_content = SearchMode('filename_and_content')
|
|
SearchMode.deleted_filename = SearchMode('deleted_filename')
|
|
|
|
SearchResult._matches_validator = bv.List(SearchMatch_validator)
|
|
SearchResult._more_validator = bv.Boolean()
|
|
SearchResult._start_validator = bv.UInt64()
|
|
SearchResult._all_field_names_ = set([
|
|
'matches',
|
|
'more',
|
|
'start',
|
|
])
|
|
SearchResult._all_fields_ = [
|
|
('matches', SearchResult._matches_validator),
|
|
('more', SearchResult._more_validator),
|
|
('start', SearchResult._start_validator),
|
|
]
|
|
|
|
SharedLink._url_validator = SharedLinkUrl_validator
|
|
SharedLink._password_validator = bv.Nullable(bv.String())
|
|
SharedLink._all_field_names_ = set([
|
|
'url',
|
|
'password',
|
|
])
|
|
SharedLink._all_fields_ = [
|
|
('url', SharedLink._url_validator),
|
|
('password', SharedLink._password_validator),
|
|
]
|
|
|
|
SymlinkInfo._target_validator = bv.String()
|
|
SymlinkInfo._all_field_names_ = set(['target'])
|
|
SymlinkInfo._all_fields_ = [('target', SymlinkInfo._target_validator)]
|
|
|
|
SyncSetting._default_validator = bv.Void()
|
|
SyncSetting._not_synced_validator = bv.Void()
|
|
SyncSetting._not_synced_inactive_validator = bv.Void()
|
|
SyncSetting._other_validator = bv.Void()
|
|
SyncSetting._tagmap = {
|
|
'default': SyncSetting._default_validator,
|
|
'not_synced': SyncSetting._not_synced_validator,
|
|
'not_synced_inactive': SyncSetting._not_synced_inactive_validator,
|
|
'other': SyncSetting._other_validator,
|
|
}
|
|
|
|
SyncSetting.default = SyncSetting('default')
|
|
SyncSetting.not_synced = SyncSetting('not_synced')
|
|
SyncSetting.not_synced_inactive = SyncSetting('not_synced_inactive')
|
|
SyncSetting.other = SyncSetting('other')
|
|
|
|
SyncSettingArg._default_validator = bv.Void()
|
|
SyncSettingArg._not_synced_validator = bv.Void()
|
|
SyncSettingArg._other_validator = bv.Void()
|
|
SyncSettingArg._tagmap = {
|
|
'default': SyncSettingArg._default_validator,
|
|
'not_synced': SyncSettingArg._not_synced_validator,
|
|
'other': SyncSettingArg._other_validator,
|
|
}
|
|
|
|
SyncSettingArg.default = SyncSettingArg('default')
|
|
SyncSettingArg.not_synced = SyncSettingArg('not_synced')
|
|
SyncSettingArg.other = SyncSettingArg('other')
|
|
|
|
SyncSettingsError._path_validator = LookupError_validator
|
|
SyncSettingsError._unsupported_combination_validator = bv.Void()
|
|
SyncSettingsError._unsupported_configuration_validator = bv.Void()
|
|
SyncSettingsError._other_validator = bv.Void()
|
|
SyncSettingsError._tagmap = {
|
|
'path': SyncSettingsError._path_validator,
|
|
'unsupported_combination': SyncSettingsError._unsupported_combination_validator,
|
|
'unsupported_configuration': SyncSettingsError._unsupported_configuration_validator,
|
|
'other': SyncSettingsError._other_validator,
|
|
}
|
|
|
|
SyncSettingsError.unsupported_combination = SyncSettingsError('unsupported_combination')
|
|
SyncSettingsError.unsupported_configuration = SyncSettingsError('unsupported_configuration')
|
|
SyncSettingsError.other = SyncSettingsError('other')
|
|
|
|
ThumbnailArg._path_validator = ReadPath_validator
|
|
ThumbnailArg._format_validator = ThumbnailFormat_validator
|
|
ThumbnailArg._size_validator = ThumbnailSize_validator
|
|
ThumbnailArg._mode_validator = ThumbnailMode_validator
|
|
ThumbnailArg._all_field_names_ = set([
|
|
'path',
|
|
'format',
|
|
'size',
|
|
'mode',
|
|
])
|
|
ThumbnailArg._all_fields_ = [
|
|
('path', ThumbnailArg._path_validator),
|
|
('format', ThumbnailArg._format_validator),
|
|
('size', ThumbnailArg._size_validator),
|
|
('mode', ThumbnailArg._mode_validator),
|
|
]
|
|
|
|
ThumbnailError._path_validator = LookupError_validator
|
|
ThumbnailError._unsupported_extension_validator = bv.Void()
|
|
ThumbnailError._unsupported_image_validator = bv.Void()
|
|
ThumbnailError._conversion_error_validator = bv.Void()
|
|
ThumbnailError._tagmap = {
|
|
'path': ThumbnailError._path_validator,
|
|
'unsupported_extension': ThumbnailError._unsupported_extension_validator,
|
|
'unsupported_image': ThumbnailError._unsupported_image_validator,
|
|
'conversion_error': ThumbnailError._conversion_error_validator,
|
|
}
|
|
|
|
ThumbnailError.unsupported_extension = ThumbnailError('unsupported_extension')
|
|
ThumbnailError.unsupported_image = ThumbnailError('unsupported_image')
|
|
ThumbnailError.conversion_error = ThumbnailError('conversion_error')
|
|
|
|
ThumbnailFormat._jpeg_validator = bv.Void()
|
|
ThumbnailFormat._png_validator = bv.Void()
|
|
ThumbnailFormat._tagmap = {
|
|
'jpeg': ThumbnailFormat._jpeg_validator,
|
|
'png': ThumbnailFormat._png_validator,
|
|
}
|
|
|
|
ThumbnailFormat.jpeg = ThumbnailFormat('jpeg')
|
|
ThumbnailFormat.png = ThumbnailFormat('png')
|
|
|
|
ThumbnailMode._strict_validator = bv.Void()
|
|
ThumbnailMode._bestfit_validator = bv.Void()
|
|
ThumbnailMode._fitone_bestfit_validator = bv.Void()
|
|
ThumbnailMode._tagmap = {
|
|
'strict': ThumbnailMode._strict_validator,
|
|
'bestfit': ThumbnailMode._bestfit_validator,
|
|
'fitone_bestfit': ThumbnailMode._fitone_bestfit_validator,
|
|
}
|
|
|
|
ThumbnailMode.strict = ThumbnailMode('strict')
|
|
ThumbnailMode.bestfit = ThumbnailMode('bestfit')
|
|
ThumbnailMode.fitone_bestfit = ThumbnailMode('fitone_bestfit')
|
|
|
|
ThumbnailSize._w32h32_validator = bv.Void()
|
|
ThumbnailSize._w64h64_validator = bv.Void()
|
|
ThumbnailSize._w128h128_validator = bv.Void()
|
|
ThumbnailSize._w256h256_validator = bv.Void()
|
|
ThumbnailSize._w480h320_validator = bv.Void()
|
|
ThumbnailSize._w640h480_validator = bv.Void()
|
|
ThumbnailSize._w960h640_validator = bv.Void()
|
|
ThumbnailSize._w1024h768_validator = bv.Void()
|
|
ThumbnailSize._w2048h1536_validator = bv.Void()
|
|
ThumbnailSize._tagmap = {
|
|
'w32h32': ThumbnailSize._w32h32_validator,
|
|
'w64h64': ThumbnailSize._w64h64_validator,
|
|
'w128h128': ThumbnailSize._w128h128_validator,
|
|
'w256h256': ThumbnailSize._w256h256_validator,
|
|
'w480h320': ThumbnailSize._w480h320_validator,
|
|
'w640h480': ThumbnailSize._w640h480_validator,
|
|
'w960h640': ThumbnailSize._w960h640_validator,
|
|
'w1024h768': ThumbnailSize._w1024h768_validator,
|
|
'w2048h1536': ThumbnailSize._w2048h1536_validator,
|
|
}
|
|
|
|
ThumbnailSize.w32h32 = ThumbnailSize('w32h32')
|
|
ThumbnailSize.w64h64 = ThumbnailSize('w64h64')
|
|
ThumbnailSize.w128h128 = ThumbnailSize('w128h128')
|
|
ThumbnailSize.w256h256 = ThumbnailSize('w256h256')
|
|
ThumbnailSize.w480h320 = ThumbnailSize('w480h320')
|
|
ThumbnailSize.w640h480 = ThumbnailSize('w640h480')
|
|
ThumbnailSize.w960h640 = ThumbnailSize('w960h640')
|
|
ThumbnailSize.w1024h768 = ThumbnailSize('w1024h768')
|
|
ThumbnailSize.w2048h1536 = ThumbnailSize('w2048h1536')
|
|
|
|
UploadError._path_validator = UploadWriteFailed_validator
|
|
UploadError._properties_error_validator = file_properties.InvalidPropertyGroupError_validator
|
|
UploadError._other_validator = bv.Void()
|
|
UploadError._tagmap = {
|
|
'path': UploadError._path_validator,
|
|
'properties_error': UploadError._properties_error_validator,
|
|
'other': UploadError._other_validator,
|
|
}
|
|
|
|
UploadError.other = UploadError('other')
|
|
|
|
UploadErrorWithProperties._tagmap = {
|
|
}
|
|
UploadErrorWithProperties._tagmap.update(UploadError._tagmap)
|
|
|
|
UploadSessionAppendArg._cursor_validator = UploadSessionCursor_validator
|
|
UploadSessionAppendArg._close_validator = bv.Boolean()
|
|
UploadSessionAppendArg._all_field_names_ = set([
|
|
'cursor',
|
|
'close',
|
|
])
|
|
UploadSessionAppendArg._all_fields_ = [
|
|
('cursor', UploadSessionAppendArg._cursor_validator),
|
|
('close', UploadSessionAppendArg._close_validator),
|
|
]
|
|
|
|
UploadSessionCursor._session_id_validator = bv.String()
|
|
UploadSessionCursor._offset_validator = bv.UInt64()
|
|
UploadSessionCursor._all_field_names_ = set([
|
|
'session_id',
|
|
'offset',
|
|
])
|
|
UploadSessionCursor._all_fields_ = [
|
|
('session_id', UploadSessionCursor._session_id_validator),
|
|
('offset', UploadSessionCursor._offset_validator),
|
|
]
|
|
|
|
UploadSessionFinishArg._cursor_validator = UploadSessionCursor_validator
|
|
UploadSessionFinishArg._commit_validator = CommitInfo_validator
|
|
UploadSessionFinishArg._all_field_names_ = set([
|
|
'cursor',
|
|
'commit',
|
|
])
|
|
UploadSessionFinishArg._all_fields_ = [
|
|
('cursor', UploadSessionFinishArg._cursor_validator),
|
|
('commit', UploadSessionFinishArg._commit_validator),
|
|
]
|
|
|
|
UploadSessionFinishBatchArg._entries_validator = bv.List(UploadSessionFinishArg_validator, max_items=1000)
|
|
UploadSessionFinishBatchArg._all_field_names_ = set(['entries'])
|
|
UploadSessionFinishBatchArg._all_fields_ = [('entries', UploadSessionFinishBatchArg._entries_validator)]
|
|
|
|
UploadSessionFinishBatchJobStatus._complete_validator = UploadSessionFinishBatchResult_validator
|
|
UploadSessionFinishBatchJobStatus._tagmap = {
|
|
'complete': UploadSessionFinishBatchJobStatus._complete_validator,
|
|
}
|
|
UploadSessionFinishBatchJobStatus._tagmap.update(async_.PollResultBase._tagmap)
|
|
|
|
UploadSessionFinishBatchLaunch._complete_validator = UploadSessionFinishBatchResult_validator
|
|
UploadSessionFinishBatchLaunch._other_validator = bv.Void()
|
|
UploadSessionFinishBatchLaunch._tagmap = {
|
|
'complete': UploadSessionFinishBatchLaunch._complete_validator,
|
|
'other': UploadSessionFinishBatchLaunch._other_validator,
|
|
}
|
|
UploadSessionFinishBatchLaunch._tagmap.update(async_.LaunchResultBase._tagmap)
|
|
|
|
UploadSessionFinishBatchLaunch.other = UploadSessionFinishBatchLaunch('other')
|
|
|
|
UploadSessionFinishBatchResult._entries_validator = bv.List(UploadSessionFinishBatchResultEntry_validator)
|
|
UploadSessionFinishBatchResult._all_field_names_ = set(['entries'])
|
|
UploadSessionFinishBatchResult._all_fields_ = [('entries', UploadSessionFinishBatchResult._entries_validator)]
|
|
|
|
UploadSessionFinishBatchResultEntry._success_validator = FileMetadata_validator
|
|
UploadSessionFinishBatchResultEntry._failure_validator = UploadSessionFinishError_validator
|
|
UploadSessionFinishBatchResultEntry._tagmap = {
|
|
'success': UploadSessionFinishBatchResultEntry._success_validator,
|
|
'failure': UploadSessionFinishBatchResultEntry._failure_validator,
|
|
}
|
|
|
|
UploadSessionFinishError._lookup_failed_validator = UploadSessionLookupError_validator
|
|
UploadSessionFinishError._path_validator = WriteError_validator
|
|
UploadSessionFinishError._properties_error_validator = file_properties.InvalidPropertyGroupError_validator
|
|
UploadSessionFinishError._too_many_shared_folder_targets_validator = bv.Void()
|
|
UploadSessionFinishError._too_many_write_operations_validator = bv.Void()
|
|
UploadSessionFinishError._other_validator = bv.Void()
|
|
UploadSessionFinishError._tagmap = {
|
|
'lookup_failed': UploadSessionFinishError._lookup_failed_validator,
|
|
'path': UploadSessionFinishError._path_validator,
|
|
'properties_error': UploadSessionFinishError._properties_error_validator,
|
|
'too_many_shared_folder_targets': UploadSessionFinishError._too_many_shared_folder_targets_validator,
|
|
'too_many_write_operations': UploadSessionFinishError._too_many_write_operations_validator,
|
|
'other': UploadSessionFinishError._other_validator,
|
|
}
|
|
|
|
UploadSessionFinishError.too_many_shared_folder_targets = UploadSessionFinishError('too_many_shared_folder_targets')
|
|
UploadSessionFinishError.too_many_write_operations = UploadSessionFinishError('too_many_write_operations')
|
|
UploadSessionFinishError.other = UploadSessionFinishError('other')
|
|
|
|
UploadSessionLookupError._not_found_validator = bv.Void()
|
|
UploadSessionLookupError._incorrect_offset_validator = UploadSessionOffsetError_validator
|
|
UploadSessionLookupError._closed_validator = bv.Void()
|
|
UploadSessionLookupError._not_closed_validator = bv.Void()
|
|
UploadSessionLookupError._too_large_validator = bv.Void()
|
|
UploadSessionLookupError._other_validator = bv.Void()
|
|
UploadSessionLookupError._tagmap = {
|
|
'not_found': UploadSessionLookupError._not_found_validator,
|
|
'incorrect_offset': UploadSessionLookupError._incorrect_offset_validator,
|
|
'closed': UploadSessionLookupError._closed_validator,
|
|
'not_closed': UploadSessionLookupError._not_closed_validator,
|
|
'too_large': UploadSessionLookupError._too_large_validator,
|
|
'other': UploadSessionLookupError._other_validator,
|
|
}
|
|
|
|
UploadSessionLookupError.not_found = UploadSessionLookupError('not_found')
|
|
UploadSessionLookupError.closed = UploadSessionLookupError('closed')
|
|
UploadSessionLookupError.not_closed = UploadSessionLookupError('not_closed')
|
|
UploadSessionLookupError.too_large = UploadSessionLookupError('too_large')
|
|
UploadSessionLookupError.other = UploadSessionLookupError('other')
|
|
|
|
UploadSessionOffsetError._correct_offset_validator = bv.UInt64()
|
|
UploadSessionOffsetError._all_field_names_ = set(['correct_offset'])
|
|
UploadSessionOffsetError._all_fields_ = [('correct_offset', UploadSessionOffsetError._correct_offset_validator)]
|
|
|
|
UploadSessionStartArg._close_validator = bv.Boolean()
|
|
UploadSessionStartArg._all_field_names_ = set(['close'])
|
|
UploadSessionStartArg._all_fields_ = [('close', UploadSessionStartArg._close_validator)]
|
|
|
|
UploadSessionStartResult._session_id_validator = bv.String()
|
|
UploadSessionStartResult._all_field_names_ = set(['session_id'])
|
|
UploadSessionStartResult._all_fields_ = [('session_id', UploadSessionStartResult._session_id_validator)]
|
|
|
|
UploadWriteFailed._reason_validator = WriteError_validator
|
|
UploadWriteFailed._upload_session_id_validator = bv.String()
|
|
UploadWriteFailed._all_field_names_ = set([
|
|
'reason',
|
|
'upload_session_id',
|
|
])
|
|
UploadWriteFailed._all_fields_ = [
|
|
('reason', UploadWriteFailed._reason_validator),
|
|
('upload_session_id', UploadWriteFailed._upload_session_id_validator),
|
|
]
|
|
|
|
VideoMetadata._duration_validator = bv.Nullable(bv.UInt64())
|
|
VideoMetadata._field_names_ = set(['duration'])
|
|
VideoMetadata._all_field_names_ = MediaMetadata._all_field_names_.union(VideoMetadata._field_names_)
|
|
VideoMetadata._fields_ = [('duration', VideoMetadata._duration_validator)]
|
|
VideoMetadata._all_fields_ = MediaMetadata._all_fields_ + VideoMetadata._fields_
|
|
|
|
WriteConflictError._file_validator = bv.Void()
|
|
WriteConflictError._folder_validator = bv.Void()
|
|
WriteConflictError._file_ancestor_validator = bv.Void()
|
|
WriteConflictError._other_validator = bv.Void()
|
|
WriteConflictError._tagmap = {
|
|
'file': WriteConflictError._file_validator,
|
|
'folder': WriteConflictError._folder_validator,
|
|
'file_ancestor': WriteConflictError._file_ancestor_validator,
|
|
'other': WriteConflictError._other_validator,
|
|
}
|
|
|
|
WriteConflictError.file = WriteConflictError('file')
|
|
WriteConflictError.folder = WriteConflictError('folder')
|
|
WriteConflictError.file_ancestor = WriteConflictError('file_ancestor')
|
|
WriteConflictError.other = WriteConflictError('other')
|
|
|
|
WriteError._malformed_path_validator = MalformedPathError_validator
|
|
WriteError._conflict_validator = WriteConflictError_validator
|
|
WriteError._no_write_permission_validator = bv.Void()
|
|
WriteError._insufficient_space_validator = bv.Void()
|
|
WriteError._disallowed_name_validator = bv.Void()
|
|
WriteError._team_folder_validator = bv.Void()
|
|
WriteError._too_many_write_operations_validator = bv.Void()
|
|
WriteError._other_validator = bv.Void()
|
|
WriteError._tagmap = {
|
|
'malformed_path': WriteError._malformed_path_validator,
|
|
'conflict': WriteError._conflict_validator,
|
|
'no_write_permission': WriteError._no_write_permission_validator,
|
|
'insufficient_space': WriteError._insufficient_space_validator,
|
|
'disallowed_name': WriteError._disallowed_name_validator,
|
|
'team_folder': WriteError._team_folder_validator,
|
|
'too_many_write_operations': WriteError._too_many_write_operations_validator,
|
|
'other': WriteError._other_validator,
|
|
}
|
|
|
|
WriteError.no_write_permission = WriteError('no_write_permission')
|
|
WriteError.insufficient_space = WriteError('insufficient_space')
|
|
WriteError.disallowed_name = WriteError('disallowed_name')
|
|
WriteError.team_folder = WriteError('team_folder')
|
|
WriteError.too_many_write_operations = WriteError('too_many_write_operations')
|
|
WriteError.other = WriteError('other')
|
|
|
|
WriteMode._add_validator = bv.Void()
|
|
WriteMode._overwrite_validator = bv.Void()
|
|
WriteMode._update_validator = Rev_validator
|
|
WriteMode._tagmap = {
|
|
'add': WriteMode._add_validator,
|
|
'overwrite': WriteMode._overwrite_validator,
|
|
'update': WriteMode._update_validator,
|
|
}
|
|
|
|
WriteMode.add = WriteMode('add')
|
|
WriteMode.overwrite = WriteMode('overwrite')
|
|
|
|
alpha_get_metadata = bb.Route(
|
|
'alpha/get_metadata',
|
|
1,
|
|
True,
|
|
AlphaGetMetadataArg_validator,
|
|
Metadata_validator,
|
|
AlphaGetMetadataError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
alpha_upload = bb.Route(
|
|
'alpha/upload',
|
|
1,
|
|
True,
|
|
CommitInfoWithProperties_validator,
|
|
FileMetadata_validator,
|
|
UploadErrorWithProperties_validator,
|
|
{'host': u'content',
|
|
'style': u'upload'},
|
|
)
|
|
copy_v2 = bb.Route(
|
|
'copy',
|
|
2,
|
|
False,
|
|
RelocationArg_validator,
|
|
RelocationResult_validator,
|
|
RelocationError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy = bb.Route(
|
|
'copy',
|
|
1,
|
|
True,
|
|
RelocationArg_validator,
|
|
Metadata_validator,
|
|
RelocationError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy_batch_v2 = bb.Route(
|
|
'copy_batch',
|
|
2,
|
|
False,
|
|
CopyBatchArg_validator,
|
|
RelocationBatchV2Launch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy_batch = bb.Route(
|
|
'copy_batch',
|
|
1,
|
|
True,
|
|
RelocationBatchArg_validator,
|
|
RelocationBatchLaunch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy_batch_check_v2 = bb.Route(
|
|
'copy_batch/check',
|
|
2,
|
|
False,
|
|
async_.PollArg_validator,
|
|
RelocationBatchV2JobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy_batch_check = bb.Route(
|
|
'copy_batch/check',
|
|
1,
|
|
True,
|
|
async_.PollArg_validator,
|
|
RelocationBatchJobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy_reference_get = bb.Route(
|
|
'copy_reference/get',
|
|
1,
|
|
False,
|
|
GetCopyReferenceArg_validator,
|
|
GetCopyReferenceResult_validator,
|
|
GetCopyReferenceError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
copy_reference_save = bb.Route(
|
|
'copy_reference/save',
|
|
1,
|
|
False,
|
|
SaveCopyReferenceArg_validator,
|
|
SaveCopyReferenceResult_validator,
|
|
SaveCopyReferenceError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
create_folder_v2 = bb.Route(
|
|
'create_folder',
|
|
2,
|
|
False,
|
|
CreateFolderArg_validator,
|
|
CreateFolderResult_validator,
|
|
CreateFolderError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
create_folder = bb.Route(
|
|
'create_folder',
|
|
1,
|
|
True,
|
|
CreateFolderArg_validator,
|
|
FolderMetadata_validator,
|
|
CreateFolderError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
create_folder_batch = bb.Route(
|
|
'create_folder_batch',
|
|
1,
|
|
False,
|
|
CreateFolderBatchArg_validator,
|
|
CreateFolderBatchLaunch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
create_folder_batch_check = bb.Route(
|
|
'create_folder_batch/check',
|
|
1,
|
|
False,
|
|
async_.PollArg_validator,
|
|
CreateFolderBatchJobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
delete_v2 = bb.Route(
|
|
'delete',
|
|
2,
|
|
False,
|
|
DeleteArg_validator,
|
|
DeleteResult_validator,
|
|
DeleteError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
delete = bb.Route(
|
|
'delete',
|
|
1,
|
|
True,
|
|
DeleteArg_validator,
|
|
Metadata_validator,
|
|
DeleteError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
delete_batch = bb.Route(
|
|
'delete_batch',
|
|
1,
|
|
False,
|
|
DeleteBatchArg_validator,
|
|
DeleteBatchLaunch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
delete_batch_check = bb.Route(
|
|
'delete_batch/check',
|
|
1,
|
|
False,
|
|
async_.PollArg_validator,
|
|
DeleteBatchJobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
download = bb.Route(
|
|
'download',
|
|
1,
|
|
False,
|
|
DownloadArg_validator,
|
|
FileMetadata_validator,
|
|
DownloadError_validator,
|
|
{'host': u'content',
|
|
'style': u'download'},
|
|
)
|
|
download_zip = bb.Route(
|
|
'download_zip',
|
|
1,
|
|
False,
|
|
DownloadZipArg_validator,
|
|
DownloadZipResult_validator,
|
|
DownloadZipError_validator,
|
|
{'host': u'content',
|
|
'style': u'download'},
|
|
)
|
|
export = bb.Route(
|
|
'export',
|
|
1,
|
|
False,
|
|
ExportArg_validator,
|
|
ExportResult_validator,
|
|
ExportError_validator,
|
|
{'host': u'content',
|
|
'style': u'download'},
|
|
)
|
|
get_metadata = bb.Route(
|
|
'get_metadata',
|
|
1,
|
|
False,
|
|
GetMetadataArg_validator,
|
|
Metadata_validator,
|
|
GetMetadataError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
get_preview = bb.Route(
|
|
'get_preview',
|
|
1,
|
|
False,
|
|
PreviewArg_validator,
|
|
FileMetadata_validator,
|
|
PreviewError_validator,
|
|
{'host': u'content',
|
|
'style': u'download'},
|
|
)
|
|
get_temporary_link = bb.Route(
|
|
'get_temporary_link',
|
|
1,
|
|
False,
|
|
GetTemporaryLinkArg_validator,
|
|
GetTemporaryLinkResult_validator,
|
|
GetTemporaryLinkError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
get_temporary_upload_link = bb.Route(
|
|
'get_temporary_upload_link',
|
|
1,
|
|
False,
|
|
GetTemporaryUploadLinkArg_validator,
|
|
GetTemporaryUploadLinkResult_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
get_thumbnail = bb.Route(
|
|
'get_thumbnail',
|
|
1,
|
|
False,
|
|
ThumbnailArg_validator,
|
|
FileMetadata_validator,
|
|
ThumbnailError_validator,
|
|
{'host': u'content',
|
|
'style': u'download'},
|
|
)
|
|
get_thumbnail_batch = bb.Route(
|
|
'get_thumbnail_batch',
|
|
1,
|
|
False,
|
|
GetThumbnailBatchArg_validator,
|
|
GetThumbnailBatchResult_validator,
|
|
GetThumbnailBatchError_validator,
|
|
{'host': u'content',
|
|
'style': u'rpc'},
|
|
)
|
|
list_folder = bb.Route(
|
|
'list_folder',
|
|
1,
|
|
False,
|
|
ListFolderArg_validator,
|
|
ListFolderResult_validator,
|
|
ListFolderError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
list_folder_continue = bb.Route(
|
|
'list_folder/continue',
|
|
1,
|
|
False,
|
|
ListFolderContinueArg_validator,
|
|
ListFolderResult_validator,
|
|
ListFolderContinueError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
list_folder_get_latest_cursor = bb.Route(
|
|
'list_folder/get_latest_cursor',
|
|
1,
|
|
False,
|
|
ListFolderArg_validator,
|
|
ListFolderGetLatestCursorResult_validator,
|
|
ListFolderError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
list_folder_longpoll = bb.Route(
|
|
'list_folder/longpoll',
|
|
1,
|
|
False,
|
|
ListFolderLongpollArg_validator,
|
|
ListFolderLongpollResult_validator,
|
|
ListFolderLongpollError_validator,
|
|
{'host': u'notify',
|
|
'style': u'rpc'},
|
|
)
|
|
list_revisions = bb.Route(
|
|
'list_revisions',
|
|
1,
|
|
False,
|
|
ListRevisionsArg_validator,
|
|
ListRevisionsResult_validator,
|
|
ListRevisionsError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
move_v2 = bb.Route(
|
|
'move',
|
|
2,
|
|
False,
|
|
RelocationArg_validator,
|
|
RelocationResult_validator,
|
|
RelocationError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
move = bb.Route(
|
|
'move',
|
|
1,
|
|
True,
|
|
RelocationArg_validator,
|
|
Metadata_validator,
|
|
RelocationError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
move_batch_v2 = bb.Route(
|
|
'move_batch',
|
|
2,
|
|
False,
|
|
MoveBatchArg_validator,
|
|
RelocationBatchV2Launch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
move_batch = bb.Route(
|
|
'move_batch',
|
|
1,
|
|
False,
|
|
RelocationBatchArg_validator,
|
|
RelocationBatchLaunch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
move_batch_check_v2 = bb.Route(
|
|
'move_batch/check',
|
|
2,
|
|
False,
|
|
async_.PollArg_validator,
|
|
RelocationBatchV2JobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
move_batch_check = bb.Route(
|
|
'move_batch/check',
|
|
1,
|
|
False,
|
|
async_.PollArg_validator,
|
|
RelocationBatchJobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
permanently_delete = bb.Route(
|
|
'permanently_delete',
|
|
1,
|
|
False,
|
|
DeleteArg_validator,
|
|
bv.Void(),
|
|
DeleteError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
properties_add = bb.Route(
|
|
'properties/add',
|
|
1,
|
|
True,
|
|
file_properties.AddPropertiesArg_validator,
|
|
bv.Void(),
|
|
file_properties.AddPropertiesError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
properties_overwrite = bb.Route(
|
|
'properties/overwrite',
|
|
1,
|
|
True,
|
|
file_properties.OverwritePropertyGroupArg_validator,
|
|
bv.Void(),
|
|
file_properties.InvalidPropertyGroupError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
properties_remove = bb.Route(
|
|
'properties/remove',
|
|
1,
|
|
True,
|
|
file_properties.RemovePropertiesArg_validator,
|
|
bv.Void(),
|
|
file_properties.RemovePropertiesError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
properties_template_get = bb.Route(
|
|
'properties/template/get',
|
|
1,
|
|
True,
|
|
file_properties.GetTemplateArg_validator,
|
|
file_properties.GetTemplateResult_validator,
|
|
file_properties.TemplateError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
properties_template_list = bb.Route(
|
|
'properties/template/list',
|
|
1,
|
|
True,
|
|
bv.Void(),
|
|
file_properties.ListTemplateResult_validator,
|
|
file_properties.TemplateError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
properties_update = bb.Route(
|
|
'properties/update',
|
|
1,
|
|
True,
|
|
file_properties.UpdatePropertiesArg_validator,
|
|
bv.Void(),
|
|
file_properties.UpdatePropertiesError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
restore = bb.Route(
|
|
'restore',
|
|
1,
|
|
False,
|
|
RestoreArg_validator,
|
|
FileMetadata_validator,
|
|
RestoreError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
save_url = bb.Route(
|
|
'save_url',
|
|
1,
|
|
False,
|
|
SaveUrlArg_validator,
|
|
SaveUrlResult_validator,
|
|
SaveUrlError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
save_url_check_job_status = bb.Route(
|
|
'save_url/check_job_status',
|
|
1,
|
|
False,
|
|
async_.PollArg_validator,
|
|
SaveUrlJobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
search = bb.Route(
|
|
'search',
|
|
1,
|
|
False,
|
|
SearchArg_validator,
|
|
SearchResult_validator,
|
|
SearchError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
upload = bb.Route(
|
|
'upload',
|
|
1,
|
|
False,
|
|
CommitInfo_validator,
|
|
FileMetadata_validator,
|
|
UploadError_validator,
|
|
{'host': u'content',
|
|
'style': u'upload'},
|
|
)
|
|
upload_session_append_v2 = bb.Route(
|
|
'upload_session/append',
|
|
2,
|
|
False,
|
|
UploadSessionAppendArg_validator,
|
|
bv.Void(),
|
|
UploadSessionLookupError_validator,
|
|
{'host': u'content',
|
|
'style': u'upload'},
|
|
)
|
|
upload_session_append = bb.Route(
|
|
'upload_session/append',
|
|
1,
|
|
True,
|
|
UploadSessionCursor_validator,
|
|
bv.Void(),
|
|
UploadSessionLookupError_validator,
|
|
{'host': u'content',
|
|
'style': u'upload'},
|
|
)
|
|
upload_session_finish = bb.Route(
|
|
'upload_session/finish',
|
|
1,
|
|
False,
|
|
UploadSessionFinishArg_validator,
|
|
FileMetadata_validator,
|
|
UploadSessionFinishError_validator,
|
|
{'host': u'content',
|
|
'style': u'upload'},
|
|
)
|
|
upload_session_finish_batch = bb.Route(
|
|
'upload_session/finish_batch',
|
|
1,
|
|
False,
|
|
UploadSessionFinishBatchArg_validator,
|
|
UploadSessionFinishBatchLaunch_validator,
|
|
bv.Void(),
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
upload_session_finish_batch_check = bb.Route(
|
|
'upload_session/finish_batch/check',
|
|
1,
|
|
False,
|
|
async_.PollArg_validator,
|
|
UploadSessionFinishBatchJobStatus_validator,
|
|
async_.PollError_validator,
|
|
{'host': u'api',
|
|
'style': u'rpc'},
|
|
)
|
|
upload_session_start = bb.Route(
|
|
'upload_session/start',
|
|
1,
|
|
False,
|
|
UploadSessionStartArg_validator,
|
|
UploadSessionStartResult_validator,
|
|
bv.Void(),
|
|
{'host': u'content',
|
|
'style': u'upload'},
|
|
)
|
|
|
|
ROUTES = {
|
|
'alpha/get_metadata': alpha_get_metadata,
|
|
'alpha/upload': alpha_upload,
|
|
'copy:2': copy_v2,
|
|
'copy': copy,
|
|
'copy_batch:2': copy_batch_v2,
|
|
'copy_batch': copy_batch,
|
|
'copy_batch/check:2': copy_batch_check_v2,
|
|
'copy_batch/check': copy_batch_check,
|
|
'copy_reference/get': copy_reference_get,
|
|
'copy_reference/save': copy_reference_save,
|
|
'create_folder:2': create_folder_v2,
|
|
'create_folder': create_folder,
|
|
'create_folder_batch': create_folder_batch,
|
|
'create_folder_batch/check': create_folder_batch_check,
|
|
'delete:2': delete_v2,
|
|
'delete': delete,
|
|
'delete_batch': delete_batch,
|
|
'delete_batch/check': delete_batch_check,
|
|
'download': download,
|
|
'download_zip': download_zip,
|
|
'export': export,
|
|
'get_metadata': get_metadata,
|
|
'get_preview': get_preview,
|
|
'get_temporary_link': get_temporary_link,
|
|
'get_temporary_upload_link': get_temporary_upload_link,
|
|
'get_thumbnail': get_thumbnail,
|
|
'get_thumbnail_batch': get_thumbnail_batch,
|
|
'list_folder': list_folder,
|
|
'list_folder/continue': list_folder_continue,
|
|
'list_folder/get_latest_cursor': list_folder_get_latest_cursor,
|
|
'list_folder/longpoll': list_folder_longpoll,
|
|
'list_revisions': list_revisions,
|
|
'move:2': move_v2,
|
|
'move': move,
|
|
'move_batch:2': move_batch_v2,
|
|
'move_batch': move_batch,
|
|
'move_batch/check:2': move_batch_check_v2,
|
|
'move_batch/check': move_batch_check,
|
|
'permanently_delete': permanently_delete,
|
|
'properties/add': properties_add,
|
|
'properties/overwrite': properties_overwrite,
|
|
'properties/remove': properties_remove,
|
|
'properties/template/get': properties_template_get,
|
|
'properties/template/list': properties_template_list,
|
|
'properties/update': properties_update,
|
|
'restore': restore,
|
|
'save_url': save_url,
|
|
'save_url/check_job_status': save_url_check_job_status,
|
|
'search': search,
|
|
'upload': upload,
|
|
'upload_session/append:2': upload_session_append_v2,
|
|
'upload_session/append': upload_session_append,
|
|
'upload_session/finish': upload_session_finish,
|
|
'upload_session/finish_batch': upload_session_finish_batch,
|
|
'upload_session/finish_batch/check': upload_session_finish_batch_check,
|
|
'upload_session/start': upload_session_start,
|
|
}
|
|
|