def _copy_blob(self, container_name, blob_name, copy_source,<EOL>metadata=None,<EOL>source_if_modified_since=None,<EOL>source_if_unmodified_since=None,<EOL>source_if_match=None, source_if_none_match=None,<EOL>destination_if_modified_since=None,<EOL>destination_if_unmodified_since=None,<EOL>destination_if_match=None,<EOL>destination_if_none_match=None,<EOL>destination_lease_id=None,<EOL>source_lease_id=None, timeout=None,<EOL>incremental_copy=False):
_validate_not_none('<STR_LIT>', container_name)<EOL>_validate_not_none('<STR_LIT>', blob_name)<EOL>_validate_not_none('<STR_LIT>', copy_source)<EOL>if copy_source.startswith('<STR_LIT:/>'):<EOL><INDENT>account, _, source =copy_source.partition('<STR_LIT:/>')[<NUM_LIT:2>].partition('<STR_LIT:/>')<EOL>copy_source = self.protocol + '<STR_LIT>' +self.primary_endpoint + '<STR_LIT:/>' + source<EOL><DEDENT>request = HTTPRequest()<EOL>request.method = '<STR_LIT>'<EOL>request.host_locations = self._get_host_locations()<EOL>request.path = _get_path(container_name, blob_name)<EOL>if incremental_copy:<EOL><INDENT>request.query = {<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': _int_to_str(timeout),<EOL>}<EOL><DEDENT>else:<EOL><INDENT>request.query = {'<STR_LIT>': _int_to_str(timeout)}<EOL><DEDENT>request.headers = {<EOL>'<STR_LIT>': _to_str(copy_source),<EOL>'<STR_LIT>': _to_str(source_if_modified_since),<EOL>'<STR_LIT>': _to_str(source_if_unmodified_since),<EOL>'<STR_LIT>': _to_str(source_if_match),<EOL>'<STR_LIT>': _to_str(source_if_none_match),<EOL>'<STR_LIT>': _datetime_to_utc_string(destination_if_modified_since),<EOL>'<STR_LIT>': _datetime_to_utc_string(destination_if_unmodified_since),<EOL>'<STR_LIT>': _to_str(destination_if_match),<EOL>'<STR_LIT>': _to_str(destination_if_none_match),<EOL>'<STR_LIT>': _to_str(destination_lease_id),<EOL>'<STR_LIT>': _to_str(source_lease_id)<EOL>}<EOL>_add_metadata_headers(metadata, request)<EOL>return self._perform_request(request, _parse_properties, [BlobProperties]).copy<EOL>
See copy_blob for more details. This helper method
allows for standard copies as well as incremental copies which are only supported for page blobs.
:param bool incremental_copy:
    The timeout parameter is expressed in seconds.