コード例 #1
0
ファイル: movie_trailers.c プロジェクト: top4e/libtmdb
/*
	MOVIE / GET_TRAILERS
*/
tmdb_movie_trailers_t *tmdb_movie_trailers(const char *movie_id)
{
	int			result;
	char			*url_str;
	net_data_t		data;
	tmdb_request_ctx_t	ctx;
	tmdb_movie_trailers_t	*movie_trailers = NULL;

	init_data_chunk(&data);

	memset(&ctx, 0, sizeof(tmdb_request_ctx_t));
	tmdb_ctx_set(&ctx, API_URL_F, NULL);
	tmdb_ctx_set(&ctx, API_HEADER_F, NULL);
	tmdb_ctx_set(&ctx, API_KEY_F, NULL);
	ctx.request_type.type = MOVIE_TRAILERS;
	tmdb_ctx_set(&ctx, MOVIE_ID, movie_id);

	url_str = tmdb_get_url_from_ctx(&ctx);

	result = nethelper_get(url_str, API_HEADER, &data);

	free(url_str);
	free_ctx(&ctx);

	if (!result) {
		header_process(&data);
		body_process(&data, MOVIE_TRAILERS_NUM_TOKENS,
			     movie_trailers_parse, &movie_trailers);
	}
	free_data_chunk(&data);

	return movie_trailers;
}
コード例 #2
0
ファイル: movie_alt.c プロジェクト: top4e/libtmdb
/*
	MOVIE / ALTERNATIVE TITLES
*/
tmdb_movie_t *tmdb_movie_alt_titles(const char *movie_id, const char *country)
{
	int			result;
	char			*url_str;
	net_data_t		data;
	tmdb_request_ctx_t	ctx;
	tmdb_movie_t		*info = NULL;

	init_data_chunk(&data);

	memset(&ctx, 0, sizeof(tmdb_request_ctx_t));
	tmdb_ctx_set(&ctx, API_URL_F, NULL);
	tmdb_ctx_set(&ctx, API_HEADER_F, NULL);
	tmdb_ctx_set(&ctx, API_KEY_F, NULL);
	ctx.request_type.type = MOVIE_ALT_TITLES;
	tmdb_ctx_set(&ctx, MOVIE_ID, movie_id);
	if (country)
		tmdb_ctx_set(&ctx, COUNTRY, country);

	url_str = tmdb_get_url_from_ctx(&ctx);

	result = nethelper_get(url_str, API_HEADER, &data);

	free(url_str);
	free_ctx(&ctx);

	if (!result) {
		header_process(&data);
		body_process(&data, MOVIE_ALT_NUM_TOKENS,
			     movie_alt_parse, &info);
	}
	free_data_chunk(&data);

	return info;
}
コード例 #3
0
ファイル: genre_list.c プロジェクト: top4e/libtmdb
/*
	GENRE / LIST
*/
tmdb_genre_t *tmdb_genre_list(const char *language)
{
	int			result;
	char			*url_str;
	net_data_t		data;
	tmdb_request_ctx_t	ctx;
	tmdb_genre_t		*genres = NULL;

	init_data_chunk(&data);

	memset(&ctx, 0, sizeof(tmdb_request_ctx_t));
	tmdb_ctx_set(&ctx, API_URL_F, NULL);
	tmdb_ctx_set(&ctx, API_HEADER_F, NULL);
	tmdb_ctx_set(&ctx, API_KEY_F, NULL);
	ctx.request_type.type = GENRE_LIST;
	if (language)
		tmdb_ctx_set(&ctx, LANGUAGE, language);

	url_str = tmdb_get_url_from_ctx(&ctx);

	result = nethelper_get(url_str, API_HEADER, &data);

	free(url_str);
	free_ctx(&ctx);

	if (!result) {
		header_process(&data);
		body_process(&data, GENRE_LIST_NUM_TOKENS,
			     genre_list_parse, &genres);
	}
	free_data_chunk(&data);

	return genres;
}
コード例 #4
0
ファイル: space.c プロジェクト: Mulambev/Midterm
static void space_update(Space *space)
{
    GList *it;
    for (it = space->bodylist;it != NULL;it = g_list_next(it))
    {
        if (!it->data)continue;
        space_body_update(space,(Body*)it->data);
    }
    for (it = space->bodylist;it != NULL;it = g_list_next(it))
    {
        if (!it->data)continue;
        body_process((Body *)it->data);
    }
}
コード例 #5
0
ファイル: search_company.c プロジェクト: top4e/libtmdb
/*
	SEARCH / COMPANY
*/
tmdb_company_t *tmdb_search_company(const char *name)
{
	int			result;
	char			*url_str;
	char			*esc_name;
	net_data_t		data;
	tmdb_request_ctx_t	ctx;
	tmdb_company_t		*companies = NULL;

	init_data_chunk(&data);

	esc_name = escaped_string(name);

	memset(&ctx, 0, sizeof(tmdb_request_ctx_t));
	tmdb_ctx_set(&ctx, API_URL_F, NULL);
	tmdb_ctx_set(&ctx, API_HEADER_F, NULL);
	tmdb_ctx_set(&ctx, API_KEY_F, NULL);
	ctx.request_type.type = SEARCH_COMPANY;
	tmdb_ctx_set(&ctx, QUERY, esc_name);

	url_str = tmdb_get_url_from_ctx(&ctx);

	result = nethelper_get(url_str, API_HEADER, &data);

	free(url_str);
	free_ctx(&ctx);
	free(esc_name);

	if (!result) {
		header_process(&data);
		body_process(&data, SEARCH_COMPANY_NUM_TOKENS,
			     company_search_parse, &companies);
	}
	free_data_chunk(&data);

	return companies;
}
コード例 #6
0
ファイル: collection_info.c プロジェクト: top4e/libtmdb
/*
	COLLECTION / INFO
*/
tmdb_collection_t *tmdb_collection_info(const char *collection_id,
					const char *language)
{
	int			result;
	char			*url_str;
	net_data_t		data;
	tmdb_request_ctx_t	ctx;
	tmdb_collection_t	*collection_info = NULL;

	init_data_chunk(&data);

	memset(&ctx, 0, sizeof(tmdb_request_ctx_t));
	tmdb_ctx_set(&ctx, API_URL_F, NULL);
	tmdb_ctx_set(&ctx, API_HEADER_F, NULL);
	tmdb_ctx_set(&ctx, API_KEY_F, NULL);
	ctx.request_type.type = COLLECTION;
	tmdb_ctx_set(&ctx, COLLECTION_ID, collection_id);
	if (language)
		tmdb_ctx_set(&ctx, LANGUAGE, language);

	url_str = tmdb_get_url_from_ctx(&ctx);

	result = nethelper_get(url_str, API_HEADER, &data);

	free(url_str);
	free_ctx(&ctx);

	if (!result) {
		header_process(&data);
		body_process(&data, COLLECTION_INFO_NUM_TOKENS,
			     collection_info_parse, &collection_info);
	}
	free_data_chunk(&data);

	return collection_info;
}