b2sdk.sync.action

class b2sdk.sync.action.AbstractAction[source]

Bases: object

An action to take, such as uploading, downloading, or deleting a file. Multi-threaded tasks create a sequence of Actions which are then run by a pool of threads.

An action can depend on other actions completing. An example of this is making sure a CreateBucketAction happens before an UploadFileAction.

run(bucket, reporter, dry_run=False)[source]

Main action routine.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

  • dry_run (bool) – if True, perform a dry run

abstract get_bytes()[source]

Return the number of bytes to transfer for this action.

Return type

int

abstract do_action(bucket, reporter)[source]

Perform the action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

abstract do_report(bucket, reporter)[source]

Report the action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

class b2sdk.sync.action.B2UploadAction(local_full_path, relative_name, b2_file_name, mod_time_millis, size, encryption_settings_provider: b2sdk.sync.encryption_provider.AbstractSyncEncryptionSettingsProvider)[source]

Bases: b2sdk.sync.action.AbstractAction

File uploading action.

__init__(local_full_path, relative_name, b2_file_name, mod_time_millis, size, encryption_settings_provider: b2sdk.sync.encryption_provider.AbstractSyncEncryptionSettingsProvider)[source]
Parameters
  • local_full_path (str) – a local file path

  • relative_name (str) – a relative file name

  • b2_file_name (str) – a name of a new remote file

  • mod_time_millis (int) – file modification time in milliseconds

  • size (int) – a file size

  • encryption_settings_provider (b2sdk.v1.AbstractSyncEncryptionSettingsProvider) – encryption setting provider

get_bytes()[source]

Return file size.

Return type

int

do_action(bucket, reporter)[source]

Perform the uploading action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.v1.Bucket) – a Bucket object

  • reporter – a place to report errors

do_report(bucket, reporter)[source]

Report the uploading action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

class b2sdk.sync.action.B2HideAction(relative_name, b2_file_name)[source]

Bases: b2sdk.sync.action.AbstractAction

__init__(relative_name, b2_file_name)[source]
Parameters
  • relative_name (str) – a relative file name

  • b2_file_name (str) – a name of a remote file

get_bytes()[source]

Return file size.

Returns

always zero

Return type

int

do_action(bucket, reporter)[source]

Perform the hiding action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

do_report(bucket, reporter)[source]

Report the hiding action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

class b2sdk.sync.action.B2DownloadAction(source_path: b2sdk.sync.path.B2SyncPath, b2_file_name: str, local_full_path: str, encryption_settings_provider: b2sdk.sync.encryption_provider.AbstractSyncEncryptionSettingsProvider)[source]

Bases: b2sdk.sync.action.AbstractAction

__init__(source_path: b2sdk.sync.path.B2SyncPath, b2_file_name: str, local_full_path: str, encryption_settings_provider: b2sdk.sync.encryption_provider.AbstractSyncEncryptionSettingsProvider)[source]
Parameters
get_bytes()[source]

Return file size.

Return type

int

do_action(bucket, reporter)[source]

Perform the downloading action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.v1.Bucket) – a Bucket object

  • reporter – a place to report errors

do_report(bucket, reporter)[source]

Report the downloading action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

class b2sdk.sync.action.B2CopyAction(b2_file_name: str, source_path: b2sdk.sync.path.B2SyncPath, dest_b2_file_name, source_bucket: b2sdk.bucket.Bucket, destination_bucket: b2sdk.bucket.Bucket, encryption_settings_provider: b2sdk.sync.encryption_provider.AbstractSyncEncryptionSettingsProvider)[source]

Bases: b2sdk.sync.action.AbstractAction

File copying action.

__init__(b2_file_name: str, source_path: b2sdk.sync.path.B2SyncPath, dest_b2_file_name, source_bucket: b2sdk.bucket.Bucket, destination_bucket: b2sdk.bucket.Bucket, encryption_settings_provider: b2sdk.sync.encryption_provider.AbstractSyncEncryptionSettingsProvider)[source]
Parameters
  • b2_file_name (str) – a b2_file_name

  • source_path (b2sdk.v1.B2SyncPath) – the file to be copied

  • dest_b2_file_name (str) – a name of a destination remote file

  • source_bucket (Bucket) – bucket to copy from

  • destination_bucket (Bucket) – bucket to copy to

  • encryption_settings_provider (b2sdk.v1.AbstractSyncEncryptionSettingsProvider) – encryption setting provider

get_bytes()[source]

Return file size.

Return type

int

do_action(bucket, reporter)[source]

Perform the copying action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

do_report(bucket, reporter)[source]

Report the copying action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

class b2sdk.sync.action.B2DeleteAction(relative_name, b2_file_name, file_id, note)[source]

Bases: b2sdk.sync.action.AbstractAction

__init__(relative_name, b2_file_name, file_id, note)[source]
Parameters
  • relative_name (str) – a relative file name

  • b2_file_name (str) – a name of a remote file

  • file_id (str) – a file ID

  • note (str) – a deletion note

get_bytes()[source]

Return file size.

Returns

always zero

Return type

int

do_action(bucket, reporter)[source]

Perform the deleting action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

do_report(bucket, reporter)[source]

Report the deleting action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

class b2sdk.sync.action.LocalDeleteAction(relative_name, full_path)[source]

Bases: b2sdk.sync.action.AbstractAction

__init__(relative_name, full_path)[source]
Parameters
  • relative_name (str) – a relative file name

  • full_path – a full local path

Type

str

get_bytes()[source]

Return file size.

Returns

always zero

Return type

int

do_action(bucket, reporter)[source]

Perform the deleting of a local file action, returning only after the action is completed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors

do_report(bucket, reporter)[source]

Report the deleting of a local file action performed.

Parameters
  • bucket (b2sdk.bucket.Bucket) – a Bucket object

  • reporter – a place to report errors