if (pinyin_support) {
/*Check Language Setting*/
lang = vconf_get_str(VCONFKEY_LANGSET);
- media_content_retvm_if(lang == NULL, ret, "Fail to get string of language set");
+ content_retvm_if(lang == NULL, ret, "Fail to get string of language set");
if ((strncmp(china, lang, strlen(china)) == 0) ||
(strncmp(hongkong, lang, strlen(hongkong)) == 0)) {
}
}
+static bool __check_order_type(media_content_order_e order)
+{
+ switch (order) {
+ case MEDIA_CONTENT_ORDER_ASC:
+ case MEDIA_CONTENT_ORDER_DESC:
+ case MEDIA_CONTENT_ORDER_OTHER:
+ return true;
+ default:
+ return false;
+ }
+}
+
int _media_filter_build_condition(bool is_full, const char *condition, media_content_collation_e collate_type, char **result)
{
- media_content_retvm_if(result == NULL, MEDIA_CONTENT_ERROR_INVALID_PARAMETER, "invalid out param");
- media_content_retvm_if(!STRING_VALID(condition), MEDIA_CONTENT_ERROR_INVALID_PARAMETER, "invalid condition");
- media_content_retvm_if(!__check_collate_type(collate_type), MEDIA_CONTENT_ERROR_INVALID_PARAMETER, "invalid condition collate");
+ content_retip_if_fail(condition);
+ content_retip_if_fail(__check_collate_type(collate_type));
+ content_retip_if_fail(result);
if (is_full)
*result = g_strdup_printf("(%s)", condition);
else
*result = g_strdup_printf("(%s%s)", condition, __get_collate_str(collate_type));
- media_content_sec_debug("Condition : %s", *result);
+ content_sec_debug("Condition : %s", *result);
return MEDIA_CONTENT_ERROR_NONE;
}
{
filter_s *_filter = (filter_s *)filter;
- media_content_retvm_if(!_filter, MEDIA_CONTENT_ERROR_INVALID_PARAMETER, "invalid filter");
- media_content_retvm_if(!result, MEDIA_CONTENT_ERROR_INVALID_PARAMETER, "invalid out param");
+ content_retip_if_fail(filter);
+ content_retip_if_fail(result);
if (!STRING_VALID(_filter->order_keyword)) {
*result = g_strdup_printf(" LIMIT %d, %d", _filter->offset, _filter->count);
_filter->offset,
_filter->count);
} else {
+#ifdef _USE_TVPD_MODE
*result = g_strdup_printf("%s LIMIT %d, %d", _filter->order_keyword, _filter->offset, _filter->count);
+#else
+ *result = g_strdup_printf("ORDER BY %s LIMIT %d, %d", _filter->order_keyword, _filter->offset, _filter->count);
+#endif
}
return MEDIA_CONTENT_ERROR_NONE;
{
int ret = MEDIA_CONTENT_ERROR_NONE;
- media_content_retvm_if(filter == NULL, MEDIA_CONTENT_ERROR_INVALID_PARAMETER, "invalid filter");
+ content_retip_if_fail(filter);
- filter_s *_filter = (filter_s *)calloc(1, sizeof(filter_s));
- media_content_retvm_if(_filter == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
+ filter_s *_filter = g_new0(filter_s, 1);
_filter->storage_id = NULL;
_filter->condition = NULL;
int media_filter_destroy(filter_h filter)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- SAFE_FREE(_filter->storage_id);
- SAFE_FREE(_filter->condition);
- SAFE_FREE(_filter->order_keyword);
- SAFE_FREE(_filter);
+ content_retip_if_fail(filter);
- ret = MEDIA_CONTENT_ERROR_NONE;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ g_free(_filter->storage_id);
+ g_free(_filter->condition);
+ g_free(_filter->order_keyword);
+ g_free(_filter);
- return ret;
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_set_offset(filter_h filter, int offset, int count)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter != NULL) {
- _filter->offset = offset;
- _filter->count = count;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ content_retip_if_fail(filter);
- return ret;
+ _filter->offset = offset;
+ _filter->count = count;
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_set_condition(filter_h filter, const char *condition, media_content_collation_e collate_type)
int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if ((_filter != NULL) && STRING_VALID(condition)
- && ((collate_type >= MEDIA_CONTENT_COLLATE_DEFAULT) && (collate_type <= MEDIA_CONTENT_COLLATE_LOCALIZED))) {
+ content_retip_if_fail(filter);
+ content_retip_if_fail(STRING_VALID(condition));
+ content_retip_if_fail(__check_collate_type(collate_type));
- _filter->is_full_condition = false;
+ _filter->is_full_condition = false;
+ g_free(_filter->condition);
- if (STRING_VALID(_filter->condition))
- SAFE_FREE(_filter->condition);
+ _filter->condition = g_strdup(condition);
- _filter->condition = _media_content_replace_path_in_condition(condition);
- media_content_retvm_if(_filter->condition == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "Fail to _media_content_replace_path_in_condition");
+ content_sec_debug("Condition string : %s", _filter->condition);
- media_content_sec_debug("Condition string : %s", _filter->condition);
-
- _filter->condition_collate_type = collate_type;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ _filter->condition_collate_type = collate_type;
return ret;
}
int media_filter_set_order(filter_h filter, media_content_order_e order_type, const char *order_keyword, media_content_collation_e collate_type)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if ((_filter != NULL) && STRING_VALID(order_keyword)
- && ((order_type == MEDIA_CONTENT_ORDER_ASC) || (order_type == MEDIA_CONTENT_ORDER_DESC))
- && ((collate_type >= MEDIA_CONTENT_COLLATE_DEFAULT) && (collate_type <= MEDIA_CONTENT_COLLATE_LOCALIZED))) {
+ content_retip_if_fail(filter);
+ content_retip_if_fail(STRING_VALID(order_keyword));
+ content_retip_if_fail(__check_order_type(order_type));
+ content_retip_if_fail(__check_collate_type(collate_type));
- _filter->is_full_order = false;
+ _filter->is_full_order = false;
- SAFE_FREE(_filter->order_keyword);
+ g_free(_filter->order_keyword);
- _filter->order_keyword = strdup(order_keyword);
- media_content_retvm_if(_filter->order_keyword == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
+ _filter->order_keyword = g_strdup(order_keyword);
+ _filter->order_type = order_type;
+ _filter->order_collate_type = collate_type;
- _filter->order_type = order_type;
- _filter->order_collate_type = collate_type;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
-
- return ret;
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_set_storage(filter_h filter, const char *storage_id)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
- media_content_warn("DEPRECATION WARNING: media_filter_set_storage() is deprecated and will be removed from next release. Use media_filter_set_condition() with MEDIA_PATH keyword instead.");
+ content_warn("DEPRECATION WARNING: media_filter_set_storage() is deprecated and will be removed from next release. Use media_filter_set_condition() with MEDIA_PATH keyword instead.");
filter_s *_filter = (filter_s *)filter;
- if ((_filter != NULL) && STRING_VALID(storage_id)) {
- if (STRING_VALID(_filter->storage_id))
- SAFE_FREE(_filter->storage_id);
+ content_retip_if_fail(filter);
+ content_retip_if_fail(STRING_VALID(storage_id));
- _filter->storage_id = strdup(storage_id);
- media_content_retvm_if(_filter->storage_id == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
+ g_free(_filter->storage_id);
+ _filter->storage_id = g_strdup(storage_id);
- media_content_sec_debug("storage_id : %s", _filter->storage_id);
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ content_sec_debug("storage_id : %s", _filter->storage_id);
- return ret;
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_get_offset(filter_h filter, int *offset, int *count)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- *offset = _filter->offset;
- *count = _filter->count;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ content_retip_if_fail(filter);
+ content_retip_if_fail(offset);
+ content_retip_if_fail(count);
- return ret;
+ *offset = _filter->offset;
+ *count = _filter->count;
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_get_condition(filter_h filter, char **condition, media_content_collation_e *collate_type)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- if (STRING_VALID(_filter->condition) && _filter->is_full_condition == false) {
- *condition = strdup(_filter->condition);
- media_content_retvm_if(*condition == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
- } else {
- *condition = NULL;
- }
+ content_retip_if_fail(filter);
+ content_retip_if_fail(condition);
+ content_retip_if_fail(collate_type);
- *collate_type = _filter->condition_collate_type;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ if (!_filter->is_full_condition)
+ *condition = g_strdup(_filter->condition);
- return ret;
+ *collate_type = _filter->condition_collate_type;
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
-int media_filter_get_order(filter_h filter, media_content_order_e* order_type, char **order_keyword, media_content_collation_e *collate_type)
+int media_filter_get_order(filter_h filter, media_content_order_e *order_type, char **order_keyword, media_content_collation_e *collate_type)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- if (STRING_VALID(_filter->order_keyword) && _filter->is_full_order == false) {
- *order_keyword = strdup(_filter->order_keyword);
- media_content_retvm_if(*order_keyword == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
- } else {
- *order_keyword = NULL;
- }
+ content_retip_if_fail(filter);
+ content_retip_if_fail(order_type);
+ content_retip_if_fail(order_keyword);
+ content_retip_if_fail(collate_type);
- *order_type = _filter->order_type;
- *collate_type = _filter->order_collate_type;
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ if (!_filter->is_full_order)
+ *order_keyword = g_strdup(_filter->order_keyword);
- return ret;
+ *order_type = _filter->order_type;
+ *collate_type = _filter->order_collate_type;
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_get_storage(filter_h filter, char **storage_id)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
- media_content_warn("DEPRECATION WARNING: media_filter_get_storage() is deprecated and will be removed from next release.");
+ content_warn("DEPRECATION WARNING: media_filter_get_storage() is deprecated and will be removed from next release.");
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- if (STRING_VALID(_filter->storage_id)) {
- *storage_id = strdup(_filter->storage_id);
- media_content_retvm_if(*storage_id == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
- } else {
- *storage_id = NULL;
- }
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ content_retip_if_fail(filter);
+ content_retip_if_fail(storage_id);
- return ret;
+ *storage_id = g_strdup(_filter->storage_id);
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_set_condition_v2(filter_h filter, const char *condition)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if ((_filter != NULL) && STRING_VALID(condition)) {
- _filter->is_full_condition = true;
+ content_retip_if_fail(filter);
+ content_retip_if_fail(STRING_VALID(condition));
- if (STRING_VALID(_filter->condition))
- SAFE_FREE(_filter->condition);
+ _filter->is_full_condition = true;
- _filter->condition = _media_content_replace_path_in_condition(condition);
- media_content_retvm_if(_filter->condition == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "Fail to _media_content_replace_path_in_condition");
+ g_free(_filter->condition);
- media_content_sec_debug("Condition string : %s", _filter->condition);
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ _filter->condition = g_strdup(condition);
- return ret;
+ content_sec_debug("Condition string : %s", _filter->condition);
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_get_condition_v2(filter_h filter, char **condition)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- if (STRING_VALID(_filter->condition) && _filter->is_full_condition == true) {
- *condition = strdup(_filter->condition);
- media_content_retvm_if(*condition == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
- } else {
- *condition = NULL;
- }
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ content_retip_if_fail(filter);
+ content_retip_if_fail(condition);
- return ret;
+ if (_filter->is_full_condition)
+ *condition = g_strdup(_filter->condition);
+
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_set_order_v2(filter_h filter, const char *order)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if ((_filter != NULL) && STRING_VALID(order)) {
- _filter->is_full_order = true;
+ content_retip_if_fail(filter);
+ content_retip_if_fail(STRING_VALID(order));
- SAFE_FREE(_filter->order_keyword);
+ _filter->is_full_order = true;
- _filter->order_keyword = strdup(order);
- media_content_retvm_if(_filter->order_keyword == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ g_free(_filter->order_keyword);
+ _filter->order_keyword = g_strdup(order);
- return ret;
+ return MEDIA_CONTENT_ERROR_NONE;
}
int media_filter_get_order_v2(filter_h filter, char **order)
{
- int ret = MEDIA_CONTENT_ERROR_NONE;
filter_s *_filter = (filter_s *)filter;
- if (_filter) {
- if (STRING_VALID(_filter->order_keyword) && _filter->is_full_order == true) {
- *order = strdup(_filter->order_keyword);
- media_content_retvm_if(*order == NULL, MEDIA_CONTENT_ERROR_OUT_OF_MEMORY, "OUT_OF_MEMORY");
- } else {
- *order = NULL;
- }
- } else {
- media_content_error("INVALID_PARAMETER(0x%08x)", MEDIA_CONTENT_ERROR_INVALID_PARAMETER);
- ret = MEDIA_CONTENT_ERROR_INVALID_PARAMETER;
- }
+ content_retip_if_fail(filter);
+ content_retip_if_fail(order);
- return ret;
+ if (_filter->is_full_order)
+ *order = g_strdup(_filter->order_keyword);
+
+ return MEDIA_CONTENT_ERROR_NONE;
}