//
-// Open Service Platform
// Copyright (c) 2012 Samsung Electronics Co., Ltd.
//
// Licensed under the Apache License, Version 2.0 (the License);
#include <FSclRecord.h>
#include <FSclTypes.h>
+namespace Tizen { namespace Base { namespace Collection
+{
+class IMap;
+}}};
+
namespace Tizen { namespace Social
{
*
* @since 2.0
*
- * @param [in] rhs An instance of %Category
+ * @param [in] rhs An instance of %Category to copy
*/
Category(const Category& rhs);
* @since 2.0
*
* @return An error code
- * @param [in] contactId The contact ID
- * @exception E_SUCCESS The method is successful.
+ * @param [in] contactId The contact ID
+ * @exception E_SUCCESS The method is successful.
* @exception E_OBJ_ALREADY_EXIST The specified @c contactId is already a member of this category.
* @exception E_INVALID_ARG The specified @c contactId is invalid.
- * @exception E_SYSTEM A system error has occurred.
+ * @exception E_SYSTEM The method cannot proceed due to a severe system error.
* @endif
*/
result AddMember(RecordId contactId);
* @deprecated This method is deprecated. Instead of using this method, use Addressbook::GetCategoriesByContactN().
* @since 2.0
*
- * @return @c true if the category contains the specified contact, @n
+ * @return @c true if the category contains the specified contact, @n
* else @c false
* @param [in] contactId The contact ID
* @exception E_SUCCESS The method is successful.
* @exception E_INVALID_ARG The specified @c contactId is invalid.
- * @exception E_SYSTEM A system error has occurred.
+ * @exception E_SYSTEM The method cannot proceed due to a severe system error.
* @remarks The specific error code can be accessed using the GetLastResult() method.
* @endif
*/
* @since 2.0
*
* @return An error code
- * @param [in] contactId The contact ID
+ * @param [in] contactId The contact ID
* @exception E_SUCCESS The method is successful.
* @exception E_INVALID_ARG The specified @c contactId is invalid.
- * @exception E_SYSTEM A system error has occurred.
+ * @exception E_SYSTEM The method cannot proceed due to a severe system error.
* @endif
*/
result RemoveMember(RecordId contactId);
/**
- * Sets the specified name for the category.
+ * Sets the specified @c name for the category.
*
* @if OSPCOMPAT
* @brief <i> [Compatibility] </i>
* For more information, see @ref CompCategorySetNamePage "here".
* @endif
*
- * @return An error code
- * @param [in] name The category name
- * @exception E_SUCCESS The method is successful.
- * @exception E_INVALID_ARG The specified @c name is an empty string.
- * @exception E_INVALID_OPERATION This category is a default category.
- * @remarks It is not allowed to change the name of a default category.
+ * @return An error code
+ * @param [in] name The category name
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_INVALID_ARG The specified @c name is an empty string.
+ * @exception E_INVALID_OPERATION This category is a read-only category.
+ * @remarks It is not allowed to change the name of a read-only category.
* @see GetName()
- * @see IsDefault()
+ * @see IsReadOnly()
*/
result SetName(const Tizen::Base::String& name);
* @if OSPCOMPAT
* @page CompCategorySetNamePage Compatibility for SetName()
* @section CompCategorySetNamePageIssueSection Issues
- * Implementing this method in OSP compatible applications has the following issue: @n
- * -# If the length of the category name to be set is greater than 100 characters, E_INVALID_ARG is returned.
- * -# if the category is a default category, E_INVALID_ARG is returned.
+ * Implementing this method in OSP compatible applications has the following issue: @n
+ * -# If the length of the category name to be set is greater than 100 characters, @c E_INVALID_ARG is returned.
+ * -# if the category is a default category, @c E_INVALID_ARG is returned.
*
* @section CompCategorySetNamePageSolutionSection Resolutions
- * The issue mentioned above has been resolved in Tizen.
+ * The issue mentioned above has been resolved in Tizen.
* @endif
*/
* @since 2.0
*
* @return An error code
- * @param [in] filePath The file path of the ringtone
- * @exception E_SUCCESS The method is successful.
- * @exception E_INVALID_ARG The specified @c filePath is an empty string.
+ * @param [in] filePath The file path of the ringtone
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_INVALID_ARG The length of the specified @c filePath exceeds system limitations.
* @exception E_FILE_NOT_FOUND The specified file cannot be found or accessed.
* @see GetRingtonePath()
*/
Tizen::Base::String GetRingtonePath(void) const;
/**
- * Checks whether this category is a default category or not. @n
- * If a category is default, it is not possible to update the category’s name and delete the category.
- * However it is still possible to add or remove contacts and change thumbnail and ringtone.
- *
- * @since 2.0
+ * Checks whether this category is a default category . @n
+ *
+ * @since 2.0
*
* @return @c true if this is a default category, @n
* else @c false
*/
- bool IsDefault(void) const;
+ bool IsDefault(void) const;
+
+ /**
+ * Checks whether this category is read-only. @n
+ * If a category is default, it is not possible to update the category name and delete the category.
+ * However it is possible to add or remove contacts and change the thumbnail and ringtone.
+ *
+ * @since 2.1
+ *
+ * @return @c true if this is a default category, @n
+ * else @c false
+ */
+ bool IsReadOnly(void) const;
+
+ /**
+ * Gets the extra data.
+ *
+ * @since 2.2
+ *
+ * @return The key-value map of the extended data where the key and value are of type Tizen::Base::String, @n
+ * else an empty map if there is no extra data, or @c null if an exception occurs
+ * @remarks The specific error code can be accessed using the GetLastResult() method.
+ */
+ Tizen::Base::Collection::IMap* GetExtraDataN(void) const;
/**
* Sets the thumbnail image. @n
* @exception E_SUCCESS The method is successful.
* @exception E_INVALID_ARG The length of the specified @c filePath exceeds system limitations.
* @exception E_FILE_NOT_FOUND The specified file cannot be found or accessed.
- * @exception E_SYSTEM A system error has occurred.
+ * @exception E_SYSTEM The method cannot proceed due to a severe system error.
* @see GetThumbnailPath()
*/
result SetThumbnail(const Tizen::Base::String& filePath);
/**
- * Gets the thumbnail path
+ * Gets the thumbnail path.
*
* @since 2.0
*
*
* @since 2.0
*
- * @param [in] rhs An instance of %Category
+ * @param [in] rhs An instance of %Category to copy
*/
Category& operator =(const Category& rhs);