## API Documentation

# Gdata/Docs.php

Zend Framework

LICENSE

This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.

category
  Zend
copyright
  Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
license
  New BSD License
package
  Zend_Gdata
subpackage
  Docs
version
  $Id: Docs.php 24396 2011-08-21 14:28:50Z padraic $

## \Zend_Gdata_Docs
jump to top

Service class for interacting with the Google Document List data API

As the Google data API protocol is based upon the Atom Publishing Protocol (APP), Gdata functionality extends the appropriate Zend_Gdata_App classes

Extends from
  \Zend_Gdata
category
  Zend
copyright
  Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com)
license
  New BSD License
link
  http://code.google.com/apis/documents/
package
  Zend_Gdata
subpackage
  Docs

### Constants

`DOCUMENTS_LIST_FEED_URI = 'https://docs.google.com/feeds/documents/private/full'`

`DOCUMENTS_FOLDER_FEED_URI = 'https://docs.google.com/feeds/folders/private/full'`

`DOCUMENTS_CATEGORY_SCHEMA = 'http://schemas.google.com/g/2005#kind'`

`DOCUMENTS_CATEGORY_TERM = 'http://schemas.google.com/docs/2007#folder'`

`AUTH_SERVICE_NAME = 'writely'`

### Properties

`$SUPPORTED_FILETYPES= 'array'`
static
Default value `array` Details

Type

`string $_defaultPostUri= 'self'`

Default URI to which to POST.

Default value `self` Details

Type
  string

### Methods

`__call( string $method, array $args ) : void`

Provides a magic factory method to instantiate new objects with shorter syntax than would otherwise be required by the Zend Framework naming conventions. For instance, to construct a new Zend_Gdata_Calendar_Extension_Color, a developer simply needs to do $gCal->newColor(). For this magic constructor, packages are searched in the same order as which they appear in the $_registeredPackages array

Inherited from: \Zend_Gdata_App::__call()
Parameters

Name | Type | Description
--- | --- | ---
$method | string | The method name being called
$args | array | The arguments passed to the call

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |

`__construct( \Zend_Http_Client $client = null, string $applicationId = MyCompany-MyApp-1.0 ) : void`

Create Gdata_Docs object

Parameters

Name | Type | Description
--- | --- | ---
$client | \Zend_Http_Client | (optional) The HTTP client to use when when communicating with the Google servers.
$applicationId | string | The identity of the app in the form of Company-AppName-Version

`createFolder( string $folderName, string|null $folderResourceId = null ) : \Zend_Gdata_Entry`

Creates a new folder in Google Docs

Parameters

Name | Type | Description
--- | --- | ---
$folderName | string | The folder name to create
$folderResourceId | string|null | The parent folder to create it in ("folder%3Amy_parent_folder")

Returns

Type | Description
--- | ---
\Zend_Gdata_Entry | The folder entry created.

Details

todo
  ZF-8732: This should return a *subclass* of Zend_Gdata_Entry, but the appropriate type doesn't exist yet.

`delete( mixed $data, $remainingRedirects = null ) : void`

DELETE entry with client object

Inherited from: \Zend_Gdata_App::delete()
Parameters

Name | Type | Description
--- | --- | ---
$data | mixed | The Zend_Gdata_App_Entry or URL to delete
$remainingRedirects |  |

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |
\Zend_Gdata_App_HttpException |
\Zend_Gdata_App_InvalidArgumentException |

`get( string $uri, array $extraHeaders = array ) : \Zend_Http_Response`

GET a URI using client object.

Inherited from: \Zend_Gdata_App::get()
Parameters

Name | Type | Description
--- | --- | ---
$uri | string | GET URI
$extraHeaders | array | Extra headers to add to the request, as an array of string-based key/value pairs.

Returns

Type | Description
--- | ---
\Zend_Http_Response |

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_HttpException |

`getDoc( string $docId, string $docType ) : \Zend_Gdata_Docs_DocumentListEntry`

Retreive entry object representing a single document.

This method builds the URL where this item is stored using the type and the id of the document.

Parameters

Name | Type | Description
--- | --- | ---
$docId | string | The URL key for the document. Examples: dcmg89gw_62hfjj8m, pKq0CzjiF3YmGd0AIlHKqeg
$docType | string | The type of the document as used in the Google Document List URLs. Examples: document, spreadsheet, presentation

Returns

Type | Description
--- | ---
\Zend_Gdata_Docs_DocumentListEntry |

`getDocument( string $id ) : void`

Retreive entry object for the desired word processing document.

Parameters

Name | Type | Description
--- | --- | ---
$id | string | The URL id for the document. Example: dcmg89gw_62hfjj8m

`getDocumentListEntry( mixed $location = null ) : \Zend_Gdata_Docs_DocumentListEntry`

Retreive entry object representing a single document.

Parameters

Name | Type | Description
--- | --- | ---
$location | mixed | The location for the entry, as a URL or Query

Returns

Type | Description
--- | ---
\Zend_Gdata_Docs_DocumentListEntry |

`getDocumentListFeed( mixed $location = null ) : \Zend_Gdata_Docs_DocumentListFeed`

Retreive feed object containing entries for the user's documents.

Parameters

Name | Type | Description
--- | --- | ---
$location | mixed | The location for the feed, as a URL or Query

Returns

Type | Description
--- | ---
\Zend_Gdata_Docs_DocumentListFeed |

`getEntry( mixed $location, $className = Zend_Gdata_Entry ) : string|\Zend_Gdata_App_Entry`

Retrieve entry as string or object

Inherited from: \Zend_Gdata::getEntry()
Parameters

Name | Type | Description
--- | --- | ---
$location | mixed | The location as string or Zend_Gdata_Query
$className |  |

Returns

Type | Description
--- | ---
string\Zend_Gdata_App_Entry | Returns string only if the object mapping has been disabled explicitly by passing false to the useObjectMapping() function.

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_InvalidArgumentException |

`getFeed( mixed $location, string $className = Zend_Gdata_Feed ) : string|\Zend_Gdata_App_Feed`

Retrieve feed as string or object

Inherited from: \Zend_Gdata::getFeed()
Parameters

Name | Type | Description
--- | --- | ---
$location | mixed | The location as string or Zend_Gdata_Query
$className | string | The class type to use for returning the feed

Returns

Type | Description
--- | ---
string\Zend_Gdata_App_Feed | Returns string only if the object mapping has been disabled explicitly by passing false to the useObjectMapping() function.

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_InvalidArgumentException |

`getGzipEnabled( ) : boolean`
static

Get the HTTP override state

Inherited from: \Zend_Gdata_App::getGzipEnabled()
Returns

Type | Description
--- | ---
boolean |

`getHttpClient( ) : \Zend_Http_Client`

Get the Zend_Http_Client object used for communication

Inherited from: \Zend_Gdata_App::getHttpClient()
Returns

Type | Description
--- | ---
\Zend_Http_Client |

`getHttpMethodOverride( ) : boolean`
static

Get the HTTP override state

Inherited from: \Zend_Gdata_App::getHttpMethodOverride()
Returns

Type | Description
--- | ---
boolean |

`getMajorProtocolVersion( ) : int`

Get the major protocol version that is in use.

Inherited from: \Zend_Gdata_App::getMajorProtocolVersion()
Returns

Type | Description
--- | ---
int | The major protocol version in use.

Details

see
  \_majorProtocolVersion

`getMaxRedirects( ) : int`
static

Get the maximum number of redirects to follow during HTTP operations

Inherited from: \Zend_Gdata_App::getMaxRedirects()
Returns

Type | Description
--- | ---
int | Maximum number of redirects to follow

`getMinorProtocolVersion( ) : \(int|\NULL)`

Get the minor protocol version that is in use.

Inherited from: \Zend_Gdata_App::getMinorProtocolVersion()
Returns

Type | Description
--- | ---
\(int\NULL) | The major protocol version in use, or NULL if no minor version is specified.

Details

see
  \_minorProtocolVersion

`getPresentation( string $id ) : void`

Retreive entry object for the desired presentation.

Parameters

Name | Type | Description
--- | --- | ---
$id | string | The URL id for the document. Example: dcmg89gw_21gtrjcn

`getSpreadsheet( string $id ) : void`

Retreive entry object for the desired spreadsheet.

Parameters

Name | Type | Description
--- | --- | ---
$id | string | The URL id for the document. Example: pKq0CzjiF3YmGd0AIlHKqeg

`getStaticHttpClient( ) : \Zend_Http_Client`
static

Gets the HTTP client object. If none is set, a new Zend_Http_Client will be used.

Inherited from: \Zend_Gdata_App::getStaticHttpClient()
Returns

Type | Description
--- | ---
\Zend_Http_Client |

`getVerboseExceptionMessages( ) : boolean`
static

Get whether to use verbose exception messages

Inherited from: \Zend_Gdata_App::getVerboseExceptionMessages()

In the case of HTTP errors, use the body of the HTTP response in the exception message.

Returns

Type | Description
--- | ---
boolean |

`import( string $uri, \Zend_Http_Client $client = null, string $className = Zend_Gdata_Feed ) : string|\Zend_Gdata_App_Feed`
static

Imports a feed located at $uri.

Inherited from: \Zend_Gdata::import()
Parameters

Name | Type | Description
--- | --- | ---
$uri | string |
$client | \Zend_Http_Client | The client used for communication
$className | string | The class which is used as the return type

Returns

Type | Description
--- | ---
string\Zend_Gdata_App_Feed | Returns string only if the object mapping has been disabled explicitly by passing false to the useObjectMapping() function.

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |

`importFile( string $filename, string $className = Zend_Gdata_App_Feed, string $useIncludePath = false ) : \Zend_Gdata_App_Feed`
static

Imports a feed from a file located at $filename.

Inherited from: \Zend_Gdata_App::importFile()
Parameters

Name | Type | Description
--- | --- | ---
$filename | string |
$className | string | The class which is used as the return type
$useIncludePath | string | Whether the include_path should be searched

Returns

Type | Description
--- | ---
\Zend_Gdata_App_Feed |

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |

`importString( string $string, string $className = Zend_Gdata_App_Feed, $majorProtocolVersion = null, $minorProtocolVersion = null ) : \Zend_Gdata_App_Feed`
static

Imports a feed represented by $string.

Inherited from: \Zend_Gdata_App::importString()
Parameters

Name | Type | Description
--- | --- | ---
$string | string |
$className | string | The class which is used as the return type
$majorProtocolVersion |  |
$minorProtocolVersion |  |

Returns

Type | Description
--- | ---
\Zend_Gdata_App_Feed |

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |

`importUrl( string $url, string $className = Zend_Gdata_App_Feed, array $extraHeaders = array ) : string|\Zend_Gdata_App_Feed`

Imports the specified URL (non-statically).

Inherited from: \Zend_Gdata_App::importUrl()
Parameters

Name | Type | Description
--- | --- | ---
$url | string | The URL to import
$className | string | The class which is used as the return type
$extraHeaders | array | Extra headers to add to the request, as an array of string-based key/value pairs.

Returns

Type | Description
--- | ---
string\Zend_Gdata_App_Feed | Returns string only if the object mapping has been disabled explicitly by passing false to the useObjectMapping() function.

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |

`insertDocument( mixed $data, string $uri, string $className = Zend_Gdata_Docs_DocumentListEntry ) : \Zend_Gdata_Docs_DocumentListEntry`

Inserts an entry to a given URI and returns the response as an Entry.

Parameters

Name | Type | Description
--- | --- | ---
$data | mixed | The Zend_Gdata_Docs_DocumentListEntry or media source to post. If it is a DocumentListEntry, the mediaSource should already have been set. If $data is a mediaSource, it should have the correct slug header and mime type.
$uri | string | POST URI
$className | string | (optional) The class of entry to be returned. The default is a 'Zend_Gdata_Docs_DocumentListEntry'.

Returns

Type | Description
--- | ---
\Zend_Gdata_Docs_DocumentListEntry | The entry returned by the service after insertion.

`insertEntry( mixed $data, string $uri, string $className = Zend_Gdata_App_Entry, array $extraHeaders = array ) : \Zend_Gdata_App_Entry`

Inserts an entry to a given URI and returns the response as a fully formed Entry.

Inherited from: \Zend_Gdata_App::insertEntry()
Parameters

Name | Type | Description
--- | --- | ---
$data | mixed | The Zend_Gdata_App_Entry or XML to post
$uri | string | POST URI
$className | string | The class of entry to be returned.
$extraHeaders | array | Extra headers to add to the request, as an array of string-based key/value pairs.

Returns

Type | Description
--- | ---
\Zend_Gdata_App_Entry | The entry returned by the service after insertion.

`isAuthenticated( ) : boolean`

Determines whether service object is authenticated.

Inherited from: \Zend_Gdata::isAuthenticated()
Returns

Type | Description
--- | ---
boolean | True if service object is authenticated, false otherwise.

`lookupMimeType( string $fileExtension ) : string`
static

Looks up the mime type based on the file name extension. For example, calling this method with 'csv' would return 'text/comma-separated-values'. The Mime type is sent as a header in the upload HTTP POST request.

Parameters

Name | Type | Description
--- | --- | ---
$fileExtension | string |

Returns

Type | Description
--- | ---
string | The mime type to be sent to the server to tell it how the multipart mime data should be interpreted.

`performHttpRequest( string $method, string $url, array $headers = array, string $body = null, string $contentType = null, int $remainingRedirects = null ) : \Zend_Http_Response`

Performs a HTTP request using the specified method.

Inherited from: \Zend_Gdata::performHttpRequest()

Overrides the definition in the parent (Zend_Gdata_App) and uses the Zend_Gdata_HttpClient functionality to filter the HTTP requests and responses.

Parameters

Name | Type | Description
--- | --- | ---
$method | string | The HTTP method for the request - 'GET', 'POST', 'PUT', 'DELETE'
$url | string | The URL to which this request is being performed, or null if found in $data
$headers | array | An associative array of HTTP headers for this request
$body | string | The body of the HTTP request
$contentType | string | The value for the content type of the request body
$remainingRedirects | int | Number of redirects to follow if requests results in one

Returns

Type | Description
--- | ---
\Zend_Http_Response | The response object

`post( mixed $data, string $uri = null, $remainingRedirects = null, string $contentType = null, array $extraHeaders = null ) : \Zend_Http_Response`

POST data with client object

Inherited from: \Zend_Gdata_App::post()
Parameters

Name | Type | Description
--- | --- | ---
$data | mixed | The Zend_Gdata_App_Entry or XML to post
$uri | string | POST URI
$remainingRedirects |  |
$contentType | string | Content-type of the data
$extraHeaders | array | Extra headers to add to the request, as an array of string-based key/value pairs.

Returns

Type | Description
--- | ---
\Zend_Http_Response |

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |
\Zend_Gdata_App_HttpException |
\Zend_Gdata_App_InvalidArgumentException |

`prepareRequest( string $method, string $url = null, array $headers = array, mixed $data = null, string $contentTypeOverride = null ) : array`

Provides pre-processing for HTTP requests to APP services.

Inherited from: \Zend_Gdata_App::prepareRequest()

1. Checks the $data element and, if it's an entry, extracts the XML, multipart data, edit link (PUT,DELETE), etc.
2. If $data is a string, sets the default content-type header as 'application/atom+xml' if it's not already been set.
3. Adds a x-http-method override header and changes the HTTP method to 'POST' if necessary as per getHttpMethodOverride()

Parameters

Name | Type | Description
--- | --- | ---
$method | string | The HTTP method for the request - 'GET', 'POST', 'PUT', 'DELETE'
$url | string | The URL to which this request is being performed, or null if found in $data
$headers | array | An associative array of HTTP headers for this request
$data | mixed | The Zend_Gdata_App_Entry or XML for the body of the request
$contentTypeOverride | string | The override value for the content type of the request body

Returns

Type | Description
--- | ---
array | An associative array containing the determined 'method', 'url', 'data', 'headers', 'contentType'

`put( mixed $data, string $uri = null, $remainingRedirects = null, string $contentType = null, array $extraHeaders = null ) : \Zend_Http_Response`

PUT data with client object

Inherited from: \Zend_Gdata_App::put()
Parameters

Name | Type | Description
--- | --- | ---
$data | mixed | The Zend_Gdata_App_Entry or XML to post
$uri | string | PUT URI
$remainingRedirects |  |
$contentType | string | Content-type of the data
$extraHeaders | array | Extra headers to add to the request, as an array of string-based key/value pairs.

Returns

Type | Description
--- | ---
\Zend_Http_Response |

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |
\Zend_Gdata_App_HttpException |
\Zend_Gdata_App_InvalidArgumentException |

`registerPackage( string $name ) : void`

Adds a Zend Framework package to the $_registeredPackages array.

Inherited from: \Zend_Gdata_App::registerPackage()

This array is searched when using the magic __call method below to instantiante new objects.

Parameters

Name | Type | Description
--- | --- | ---
$name | string | The name of the package (eg Zend_Gdata_App)

`setGzipEnabled( boolean $enabled = false ) : void`
static

Toggle requesting gzip encoded responses

Inherited from: \Zend_Gdata_App::setGzipEnabled()
Parameters

Name | Type | Description
--- | --- | ---
$enabled | boolean | Whether or not to enable gzipped responses

`setHttpClient( \Zend_Http_Client $client, $applicationId = MyCompany-MyApp-1.0 ) : \Zend_Gdata_App`

Set the Zend_Http_Client object used for communication

Inherited from: \Zend_Gdata_App::setHttpClient()
Parameters

Name | Type | Description
--- | --- | ---
$client | \Zend_Http_Client | The client to use for communication
$applicationId |  |

Returns

Type | Description
--- | ---
\Zend_Gdata_App | Provides a fluent interface

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_HttpException |

`setHttpMethodOverride( boolean $override = true ) : void`
static

Toggle using POST instead of PUT and DELETE HTTP methods

Inherited from: \Zend_Gdata_App::setHttpMethodOverride()

Some feed implementations do not accept PUT and DELETE HTTP methods, or they can't be used because of proxies or other measures. This allows turning on using POST where PUT and DELETE would normally be used; in addition, an X-Method-Override header will be sent with a value of PUT or DELETE as appropriate.

Parameters

Name | Type | Description
--- | --- | ---
$override | boolean | Whether to override PUT and DELETE with POST.

`setMajorProtocolVersion( int $value ) : void`

Set the major protocol version that should be used. Values < 1 will cause a Zend_Gdata_App_InvalidArgumentException to be thrown.

Inherited from: \Zend_Gdata_App::setMajorProtocolVersion()
Parameters

Name | Type | Description
--- | --- | ---
$value | int | The major protocol version to use.

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_InvalidArgumentException |

Details

see
  \_majorProtocolVersion

`setMaxRedirects( int $maxRedirects ) : void`
static

Set the maximum number of redirects to follow during HTTP operations

Inherited from: \Zend_Gdata_App::setMaxRedirects()
Parameters

Name | Type | Description
--- | --- | ---
$maxRedirects | int | Maximum number of redirects to follow

`setMinorProtocolVersion( \(int|\NULL) $value ) : void`

Set the minor protocol version that should be used. If set to NULL, no minor protocol version will be sent to the server. Values < 0 will cause a Zend_Gdata_App_InvalidArgumentException to be thrown.

Inherited from: \Zend_Gdata_App::setMinorProtocolVersion()
Parameters

Name | Type | Description
--- | --- | ---
$value | \(int|\NULL) | The minor protocol version to use.

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_InvalidArgumentException |

Details

see
  \_minorProtocolVersion

`setStaticHttpClient( \Zend_Http_Client $httpClient ) : void`
static

Set the static HTTP client instance

Inherited from: \Zend_Gdata_App::setStaticHttpClient()

Sets the static HTTP client object to use for retrieving the feed.

Parameters

Name | Type | Description
--- | --- | ---
$httpClient | \Zend_Http_Client |

`setVerboseExceptionMessages( boolean $verbose ) : void`
static

Set whether to use verbose exception messages

Inherited from: \Zend_Gdata_App::setVerboseExceptionMessages()

In the case of HTTP errors, use the body of the HTTP response in the exception message.

Parameters

Name | Type | Description
--- | --- | ---
$verbose | boolean | Whether to use verbose exception messages

`updateEntry( mixed $data, string|null $uri = null, string|null $className = null, array $extraHeaders = array ) : \Zend_Gdata_App_Entry`

Update an entry

Inherited from: \Zend_Gdata_App::updateEntry()
Parameters

Name | Type | Description
--- | --- | ---
$data | mixed | Zend_Gdata_App_Entry or XML (w/ID and link rel='edit')
$uri | string|null | The URI to send requests to, or null if $data contains the URI.
$className | string|null | The name of the class that should be deserialized from the server response. If null, then 'Zend_Gdata_App_Entry' will be used.
$extraHeaders | array | Extra headers to add to the request, as an array of string-based key/value pairs.

Returns

Type | Description
--- | ---
\Zend_Gdata_App_Entry | The entry returned from the server

Throws

Exception | Description
--- | ---
\Zend_Gdata_App_Exception |

`uploadFile( string $fileLocation, string $title = null, string $mimeType = null, string $uri = null ) : \Zend_Gdata_Docs_DocumentListEntry`

Upload a local file to create a new Google Document entry.

Parameters

Name | Type | Description
--- | --- | ---
$fileLocation | string | The full or relative path of the file to be uploaded.
$title | string | The name that this document should have on the server. If set, the title is used as the slug header in the POST request. If no title is provided, the location of the file will be used as the slug header in the request. If no mimeType is provided, this method attempts to determine the mime type based on the slugHeader by looking for .doc, .csv, .txt, etc. at the end of the file name. Example value: 'test.doc'.
$mimeType | string | Describes the type of data which is being sent to the server. This must be one of the accepted mime types which are enumerated in SUPPORTED_FILETYPES.
$uri | string | (optional) The URL to which the upload should be made. Example: 'https://docs.google.com/feeds/documents/private/full'.

Returns

Type | Description
--- | ---
\Zend_Gdata_Docs_DocumentListEntry | The entry for the newly created Google Document.

Documentation was generated by DocBlox 0.13.3.