/** * flickcurl_people_getInfo - * @fc: flickcurl context * @user_id: user NSID * * Get information about a person * * Implements flickr.people.getInfo (0.6) * * NSID can be found by flickcurl_people_findByEmail() or * flickcurl_people_findByUsername(). * * Return value: #flickcurl_person object or NULL on failure **/ flickcurl_person* flickcurl_people_getInfo(flickcurl* fc, const char* user_id) { const char * parameters[6][2]; int count=0; xmlDocPtr doc=NULL; xmlXPathContextPtr xpathCtx=NULL; flickcurl_person* person=NULL; parameters[count][0] = "user_id"; parameters[count++][1]= user_id; parameters[count][0] = NULL; if(flickcurl_prepare(fc, "flickr.people.getInfo", parameters, count)) goto tidy; doc=flickcurl_invoke(fc); if(!doc) goto tidy; xpathCtx = xmlXPathNewContext(doc); if(!xpathCtx) { flickcurl_error(fc, "Failed to create XPath context for document"); fc->failed=1; goto tidy; } person=flickcurl_build_person(fc, xpathCtx, (const xmlChar*)"/rsp/person"); tidy: if(xpathCtx) xmlXPathFreeContext(xpathCtx); if(fc->failed) person=NULL; return person; }
/** * flickcurl_people_getInfo: * @fc: flickcurl context * @user_id: user NSID * * Get information about a person * * Implements flickr.people.getInfo (0.6) * * NSID can be found by flickcurl_people_findByEmail() or * flickcurl_people_findByUsername(). * * Return value: #flickcurl_person object or NULL on failure **/ flickcurl_person* flickcurl_people_getInfo(flickcurl* fc, const char* user_id) { xmlDocPtr doc = NULL; xmlXPathContextPtr xpathCtx = NULL; flickcurl_person* person = NULL; flickcurl_init_params(fc, 0); flickcurl_add_param(fc, "user_id", user_id); flickcurl_end_params(fc); if(flickcurl_prepare(fc, "flickr.people.getInfo")) goto tidy; doc = flickcurl_invoke(fc); if(!doc) goto tidy; xpathCtx = xmlXPathNewContext(doc); if(!xpathCtx) { flickcurl_error(fc, "Failed to create XPath context for document"); fc->failed = 1; goto tidy; } person = flickcurl_build_person(fc, xpathCtx, (const xmlChar*)"/rsp/person"); tidy: if(xpathCtx) xmlXPathFreeContext(xpathCtx); if(fc->failed) person = NULL; return person; }