| Top |
| void | (*flickcurl_message_handler) () |
| int | flickcurl_init () |
| void | flickcurl_finish () |
| flickcurl * | flickcurl_new () |
| flickcurl * | flickcurl_new_with_handle () |
| void | flickcurl_free () |
| int | flickcurl_get_current_request_wait () |
| int | flickcurl_get_extras_format_info () |
| int | flickcurl_get_feed_format_info () |
| void | (*flickcurl_curl_setopt_handler) () |
| void | flickcurl_set_curl_setopt_handler () |
| void | flickcurl_set_data () |
| void | flickcurl_set_error_handler () |
| void | flickcurl_set_http_accept () |
| void | flickcurl_set_proxy () |
| void | flickcurl_set_request_delay () |
| void | flickcurl_set_service_uri () |
| void | flickcurl_set_replace_service_uri () |
| void | flickcurl_set_upload_service_uri () |
| void | flickcurl_set_sign () |
| void | flickcurl_set_tag_handler () |
| void | flickcurl_set_user_agent () |
| void | flickcurl_set_write () |
| void | flickcurl_set_xml_data () |
| typedef | flickcurl |
| extern const char* const | flickcurl_version_string |
| extern const char* const | flickcurl_license_string |
| extern const char* const | flickcurl_copyright_string |
| extern const char* const | flickcurl_short_copyright_string |
| extern const char* const | flickcurl_home_url_string |
| extern const char* const | flickcurl_flickr_replace_service_uri |
| extern const char* const | flickcurl_flickr_service_uri |
| extern const char* const | flickcurl_flickr_upload_service_uri |
void (*flickcurl_message_handler) (void *user_data,const char *message);
Flickcurl Message handler callback.
flickcurl *
flickcurl_new_with_handle (void *curl_handle);
Create a Flickcurl sesssion from an existing CURL* handler
This allows setting up or re-using an existing CURL handle with
Flickcurl, however the library will call curl_easy_setopt to set
options based on the operation being performed. If these need to
be over-ridden, use flickcurl_set_curl_setopt_handler() to adjust
the options.
NOTE: The type of handle
is void* so that curl headers are
optional when compiling against flickcurl.
int
flickcurl_get_current_request_wait (flickcurl *fc);
Get current wait that would be applied for a web service request called now
Returns the wait time that would be applied in order to delay a web service request such that the web service rate limit is met.
See flickcurl_set_request_delay() which by default is set to 1000ms.
int flickcurl_get_extras_format_info (int extras_format,const char **name_p,const char **label_p);
Get APi extras format parameter value information
As described 2008-08-19 in http://code.flickr.com/blog/2008/08/19/standard-photos-response-apis-for-civilized-age/
int flickcurl_get_feed_format_info (int feed_format,const char **name_p,const char **label_p,const char **mime_type_p);
Get feed format parameter value information
As announced 2008-08-25 in http://code.flickr.com/blog/2008/08/25/api-responses-as-feeds/
void (*flickcurl_curl_setopt_handler) (void *user_data,void *curl_handle);
Flickcurl curl options handle callback.
For use with flickcurl_set_curl_setopt_handler() to set curl
handle options once Flickcurl has created the CURL* handle
internally.
NOTE: The type of curl_handle
is void* so that curl headers are
optional when compiling against flickcurl.
WARNING: This callback is called with two void args in the order curl handler user data, curl handle (CURL* pointer) - take care in getting them correct in implementation.
void flickcurl_set_curl_setopt_handler (flickcurl *fc,flickcurl_curl_setopt_handler curl_handler,void *curl_handler_data);
Set curl set option callback handler.
This handler is called for every curl request after all internal curl_easy_setopt calls are made on the internal CURL* handle and just before curl_easy_perform is invoked to start the retrieval. Thus, this callback can override any internal configuration.
If a simple once-only CURL configuration is needed, using
flickcurl_new_with_handle() may be easier.
WARNING: The curl_handler
callback is called with 2 void args in
the order user data (curl_handler_data
value), curl_handle (CURL*
pointer) - take care to use them correct in implementation.
void flickcurl_set_data (flickcurl *fc,void *data,size_t data_length);
Set web service request content data.
void flickcurl_set_error_handler (flickcurl *fc,flickcurl_message_handler error_handler,void *error_data);
Set Flickcurl error handler.
void flickcurl_set_http_accept (flickcurl *fc,const char *value);
Set HTTP accept header value for flickcurl requests
void flickcurl_set_proxy (flickcurl *fc,const char *proxy);
Set HTTP proxy for flickcurl requests
void flickcurl_set_request_delay (flickcurl *fc,long delay_msec Param2);
Set web service request delay
void flickcurl_set_service_uri (flickcurl *fc,const char *uri);
Set Web Service URI for flickcurl requests
Sets the service to the default (Flickr API web service) if uri
is NULL.
void flickcurl_set_replace_service_uri (flickcurl *fc,const char *uri);
Set Web Replace Service URI for flickcurl requests
Sets the replace service to the default (Flickr API web
replace_service) if uri
is NULL.
void flickcurl_set_upload_service_uri (flickcurl *fc,const char *uri);
Set Web Upload Service URI for flickcurl requests
Sets the upload service to the default (Flickr API web
upload_service) if uri
is NULL.
void flickcurl_set_tag_handler (flickcurl *fc,flickcurl_tag_handler tag_handler,void *tag_data);
Set Flickcurl tag handler.
void flickcurl_set_user_agent (flickcurl *fc,const char *user_agent);
Set Flickcurl HTTP user agent string
void flickcurl_set_xml_data (flickcurl *fc,xmlDocPtr doc);
Set web service request content data from XML DOM.
typedef struct flickcurl_s flickcurl;
Flickcurl session object created by flickcurl_new() and destroyed
by flickcurl_free()