QVimeo
A Qt/C++ library and QML module to access the Vimeo Data API.
 All Classes Functions Enumerations Properties Groups Pages
Public Slots | List of all members
QVimeo::ResourcesRequest Class Reference

Handles requests for Vimeo resources. More...

Inheritance diagram for QVimeo::ResourcesRequest:
QVimeo::Request

Public Slots

void list (const QString &resourcePath, const QVariantMap &filters=QVariantMap())
 Requests a list of Vimeo resources from resourcePath.
void get (const QString &resourcePath)
 Retrieves the Vimeo resource from resourcePath.
void insert (const QString &resourcePath)
 Inserts a Vimeo resource into resourcePath using a PUT request.
void insert (const QVariantMap &resource, const QString &resourcePath)
 Inserts a new Vimeo resource.
void update (const QString &resourcePath, const QVariantMap &resource)
 Updates the Vimeo resource at resourcePath.
void del (const QString &resourcePath)
 Deletes the Vimeo resource at resourcePath.
- Public Slots inherited from QVimeo::Request
void cancel ()
 Cancels the current HTTP request.

Additional Inherited Members

- Public Types inherited from QVimeo::Request
enum  Operation
 The operation type of the last HTTP request. More...
enum  Status
 The status of the last HTTP request. More...
enum  Error
 The error resulting from the last HTTP request. More...
- Signals inherited from QVimeo::Request
void clientIdChanged ()
 Emitted when the clientId changes.
void clientSecretChanged ()
 Emitted when the clientSecret changes.
void accessTokenChanged (const QString &token)
 Emitted when the accessToken changes.
void urlChanged ()
 Emitted when the url changes.
void dataChanged ()
 Emitted when the data changes.
void headersChanged ()
 Emitted when the headers change.
void operationChanged ()
 Emitted when the operation changes.
void statusChanged (Status s)
 Emitted when the status changes.
void finished ()
 Emitted when the request is completed.
- Public Member Functions inherited from QVimeo::Request
void setNetworkAccessManager (QNetworkAccessManager *manager)
 Sets the QNetworkAccessManager instance to be used when making requests to the Vimeo API.
- Protected Slots inherited from QVimeo::Request
void head (bool authRequired=true)
 Performs a HTTP HEAD request.
void get (bool authRequired=true)
 Performs a HTTP GET request.
void post (bool authRequired=true)
 Performs a HTTP POST request.
void put (bool authRequired=true)
 Performs a HTTP PUT request.
void patch (bool authRequired=true)
 Performs a HTTP PATCH request.
void deleteResource (bool authRequired=true)
 Performs a HTTP DELETE request.
- Properties inherited from QVimeo::Request
QString clientId
 The client id used when making requests to the Vimeo Data API.
QString clientSecret
 The api key used when making requests to the Vimeo Data API.
QString accessToken
 The access token used when making requests to the Vimeo Data API.
QUrl url
 The url used when making requests to the Vimeo Data API.
QVariantMap headers
 The headers used when making requests to the Vimeo Data API.
QVariant data
 The data used when making HTTP PATCH/POST requests to the Vimeo Data API.
Operation operation
 The last HTTP operation type.
Status status
 The status of the last request.
QVariant result
 The result of the last HTTP request.
Error error
 The error resulting from the last HTTP request.
QString errorString
 A description of the error resulting from the last HTTP request.

Detailed Description

Handles requests for Vimeo resources.

The ResourcesRequest class is used for making requests to the Vimeo Data API that concern Vimeo resources.

Example usage:

C++

using namespace QVimeo;
...
ResourcesRequest request;
request.get("/videos/VIDEO_ID");
connect(&request, SIGNAL(finished()), this, SLOT(onRequestFinished()));
...
void MyClass::onRequestFinished() {
if (request.status() == ResourcesRequest::Ready) {
QMapIterator<QString, QVariant> iterator(request.result().toMap());
while (iterator.hasNext()) {
iterator.next();
qDebug() << iterator.key() << "=" << iterator.value();
}
}
else {
qDebug() << request.errorString();
}
}

QML

import QtQuick 1.0
import QVimeo 1.0
ResourcesRequest {
id: request
onFinished: {
if (status == ResourcesRequest.Ready) {
for (var k in result) {
console.log(att + " = " + result[k]);
}
}
else {
console.log(errorString);
}
}
Component.onCompleted: get("/videos/VIDEO_ID")
}

For more details about Vimeo resources, see the Vimeo reference documentation here.

Member Function Documentation

void QVimeo::ResourcesRequest::del ( const QString &  resourcePath)
slot

Deletes the Vimeo resource at resourcePath.

For example, to 'unlike' a video on behalf of the authenticated user:

ResourcesRequest request;
request.del("/me/likes/VIDEO_ID");
void QVimeo::ResourcesRequest::get ( const QString &  resourcePath)
slot

Retrieves the Vimeo resource from resourcePath.

For example, to retrieve a video:

ResourcesRequest request;
request.get("/videos/VIDEO_ID");
void QVimeo::ResourcesRequest::insert ( const QString &  resourcePath)
slot

Inserts a Vimeo resource into resourcePath using a PUT request.

For example, to 'like' a video on behalf of the authenticated user:

ResourcesRequest request;
request.insert("/me/likes/VIDEO_ID");
void QVimeo::ResourcesRequest::insert ( const QVariantMap &  resource,
const QString &  resourcePath 
)
slot

Inserts a new Vimeo resource.

For example, to insert a new album on behalf of the authenticated user:

ResourcesRequest request;
QVariantMap album;
album["name"] = "My album";
album["description"] = "Album inserted using QVimeo";
album["privacy"] = "anybody";
album["sort"] = "newest";
request.insert(album, "/me/albums");
void QVimeo::ResourcesRequest::list ( const QString &  resourcePath,
const QVariantMap &  filters = QVariantMap() 
)
slot

Requests a list of Vimeo resources from resourcePath.

For example, to search videos:

ResourcesRequest request;
QVariantMap filters;
filters["per_page"] = 10;
filters["sort"] = "date";
filters["query"] = "Qt";
request.list("/videos", filters);
void QVimeo::ResourcesRequest::update ( const QString &  resourcePath,
const QVariantMap &  resource 
)
slot

Updates the Vimeo resource at resourcePath.

For example, to update an existing album on behalf of the authenticated user:

ResourcesRequest request;
QVariantMap album;
album["name"] = "My new album name";
album["description"] = "My new album description";
request.update("/me/albums/ALBUM_ID", album);