Package apiclient :: Module http :: Class MediaUpload |
[hide private]
[frames] | no frames]

# Class MediaUpload

source code

    Describes a media object to upload.

    Base class that defines the interface of MediaUpload subclasses.

    Note that subclasses of MediaUpload may allow you to control the chunksize
    when uploading a media object. It is important to keep the size of the chunk
    as large as possible to keep the upload efficient. Other factors may influence
    the size of the chunk you use, particularly if you are working in an
    environment where individual HTTP requests may have a hardcoded time limit,
    such as under certain classes of requests under Google App Engine.

    Streams are io.Base compatible objects that support seek(). Some MediaUpload
    subclasses support using streams directly to upload data. Support for
    streaming may be indicated by a MediaUpload sub-class and if appropriate for a
    platform that stream will be used for uploading the media object. The support
    for streaming is indicated by has_stream() returning True. The stream() method
    should return an io.Base object that supports seek(). On platforms where the
    underlying httplib module supports streaming, for example Python 2.6 and
    later, the stream will be passed into the http library which will result in
    less memory being used and possibly faster uploads.

    If you need to upload media that can't be uploaded using any of the existing
    MediaUpload sub-class then you can sub-class MediaUpload for your particular
    needs.

Instance Methods | [hide private]
chunksize(self) Chunk size for resumable uploads. | source code
mimetype(self) Mime type of the body. | source code
size(self) Size of upload. | source code
resumable(self) Whether this upload is resumable. | source code
getbytes(self, begin, end) Get bytes from the media. | source code
has_stream(self) Does the underlying upload support a streaming interface. | source code
stream(self) A stream interface to the data being uploaded. | source code
_to_json(self, strip=None) Utility function for creating a JSON representation of a MediaUpload. | source code
to_json(self) Create a JSON representation of an instance of MediaUpload. | source code
Inherited from `object`: `__delattr__`, `__format__`, `__getattribute__`, `__hash__`, `__init__`, `__new__`, `__reduce__`, `__reduce_ex__`, `__repr__`, `__setattr__`, `__sizeof__`, `__str__`, `__subclasshook__`

Class Methods | [hide private]
new_from_json(cls, s) Utility class method to instantiate a MediaUpload subclass from a JSON representation produced by to_json(). | source code

Properties | [hide private]
Inherited from `object`: `__class__`

Method Details | [hide private]

### chunksize(self) | source code
    Chunk size for resumable uploads.

    Returns:
      Chunk size in bytes.

### mimetype(self) | source code
    Mime type of the body.

    Returns:
      Mime type.

### size(self) | source code
    Size of upload.

    Returns:
      Size of the body, or None of the size is unknown.

### resumable(self) | source code
    Whether this upload is resumable.

    Returns:
      True if resumable upload or False.

### getbytes(self, begin, end) | source code
    Get bytes from the media.

    Args:
      begin: int, offset from beginning of file.
      length: int, number of bytes to read, starting at begin.

    Returns:
      A string of bytes read. May be shorter than length if EOF was reached
      first.

### has_stream(self) | source code
    Does the underlying upload support a streaming interface.

    Streaming means it is an io.IOBase subclass that supports seek, i.e.
    seekable() returns True.

    Returns:
      True if the call to stream() will return an instance of a seekable io.Base
      subclass.

### stream(self) | source code
    A stream interface to the data being uploaded.

    Returns:
      The returned value is an io.IOBase subclass that supports seek, i.e.
      seekable() returns True.

### _to_json(self, strip=None) | source code
    Utility function for creating a JSON representation of a MediaUpload.

    Args:
      strip: array, An array of names of members to not include in the JSON.

    Returns:
       string, a JSON representation of this instance, suitable to pass to
       from_json().
Decorators: `@util.positional(1)`

### to_json(self) | source code
    Create a JSON representation of an instance of MediaUpload.

    Returns:
       string, a JSON representation of this instance, suitable to pass to
       from_json().

### new_from_json(cls, s) Class Method | source code
    Utility class method to instantiate a MediaUpload subclass from a JSON
    representation produced by to_json().

    Args:
      s: string, JSON from to_json().

    Returns:
      An instance of the subclass of MediaUpload that was serialized with
      to_json().