javaextensions/pim/framework/inc.s60/cpimmanager.h
branchRCL_3
changeset 83 26b2b12093af
parent 77 7cee158cb8cd
equal deleted inserted replaced
77:7cee158cb8cd 83:26b2b12093af
    41 class CPIMItem;
    41 class CPIMItem;
    42 class CPIMContactValidator;
    42 class CPIMContactValidator;
    43 class CPIMEventValidator;
    43 class CPIMEventValidator;
    44 class CPIMToDoValidator;
    44 class CPIMToDoValidator;
    45 class MPIMAdapterAccess;
    45 class MPIMAdapterAccess;
    46 class CCalSession;
       
    47 
    46 
    48 // CLASS DECLARATION
    47 // CLASS DECLARATION
    49 
    48 
    50 /**
    49 /**
    51  *  PIM manager class. Provides access to PIM functionalities.
    50  *  PIM manager class. Provides access to PIM functionalities.
    76 
    75 
    77     /**
    76     /**
    78      * Destructor.
    77      * Destructor.
    79      */
    78      */
    80     virtual ~CPIMManager();
    79     virtual ~CPIMManager();
    81     void DeleteSessions();
       
    82 
    80 
    83 public: // New functions
    81 public: // New functions
    84 
    82 
    85     /**
    83     /**
    86      * LocalizationManager
    84      * LocalizationManager
   113      *
   111      *
   114      * @param aPimListType List type.
   112      * @param aPimListType List type.
   115      * @param aPimListName Name of the list. The name must be valid list
   113      * @param aPimListName Name of the list. The name must be valid list
   116      *        name. If not present, name is resolved to the default list
   114      *        name. If not present, name is resolved to the default list
   117      *        of the given type.
   115      *        of the given type.
   118      * @param aCalName Name of the Canlendar. The name must be valid Canlendar
       
   119      *        name. If not present, name is resolved to the default Canlendar.
       
   120      *
   116      *
   121      * @return PIM list. Type of the list corresponds to
   117      * @return PIM list. Type of the list corresponds to
   122      *         \a aPimListType argument.
   118      *         \a aPimListType argument.
   123      *
   119      *
   124      * @par Leaving:
   120      * @par Leaving:
   132      * @li Other - Internal error.
   128      * @li Other - Internal error.
   133      */
   129      */
   134     pimbaselist* openPimList(
   130     pimbaselist* openPimList(
   135         const TPIMListType& aPimListType,
   131         const TPIMListType& aPimListType,
   136         jstring aPimListName,
   132         jstring aPimListName,
   137         jstring aCalName,
       
   138         JNIEnv* aJniEnv);
   133         JNIEnv* aJniEnv);
   139 
   134 
   140     /**
   135     /**
   141      * Lists PIM lists of given type.
   136      * Lists PIM lists of given type.
   142      * The first entry in the list is the default list of the given type.
   137      * The first entry in the list is the default list of the given type.
   152 
   147 
   153     jobjectArray listPimLists(
   148     jobjectArray listPimLists(
   154         const TPIMListType& aPimListType,
   149         const TPIMListType& aPimListType,
   155         jintArray aError,
   150         jintArray aError,
   156         JNIEnv* aJniEnv);
   151         JNIEnv* aJniEnv);
   157     /**
       
   158      * Lists list of Calendars existsing the mobile database.
       
   159      *
       
   160      * @return Array of list names.
       
   161      *         Caller takes the ownership of the returned object.
       
   162      *
       
   163      */
       
   164     jobjectArray listCalendars(jintArray aError, JNIEnv* aJniEnv);
       
   165 
       
   166     /**
       
   167      * Lists list of Calendars names existsing the mobile database.
       
   168      *
       
   169      * @return Array of list names.
       
   170      *         Caller takes the ownership of the returned object.
       
   171      */
       
   172     jobjectArray listCalendarNames(jintArray aError, JNIEnv* aJniEnv);
       
   173 
       
   174     /**
       
   175      * create new calendar which you given name.
       
   176      *
       
   177      * @param calendar name Sting type this is used as filename.
       
   178      *
       
   179      * @param calendar name Sting type this is used as diaplay to the user.
       
   180      *
       
   181      * @return void.
       
   182      *
       
   183      * @par Leaving:
       
   184      * @li \c KErrArgument - \if name already exists
       
   185      */
       
   186     void createCalendar(jstring aCalName, jstring aDisplayName, JNIEnv* aJniEnv);
       
   187 
       
   188     /**
       
   189     * delete the calendar which you given name.
       
   190     *
       
   191     * @param calendar name Sting type this is used as canlader filename
       
   192     *        which it will delete.
       
   193     * @return void.
       
   194     *
       
   195     * @par Leaving:
       
   196     * @li \c KErrArgument - \a calendar name is not valid or not exists.
       
   197     */
       
   198     void deleteCalendar(jstring aCalName, JNIEnv* aJniEnv);
       
   199 
   152 
   200     /**
   153     /**
   201      * Provides a Contact validator.
   154      * Provides a Contact validator.
   202      */
   155      */
   203     const CPIMContactValidator& ContactValidator();
   156     const CPIMContactValidator& ContactValidator();
   232      *        default list.
   185      *        default list.
   233      *
   186      *
   234      * @return A new list or NULL if no matching list was found.
   187      * @return A new list or NULL if no matching list was found.
   235      */
   188      */
   236     CPIMEventList* DoOpenEventListL(
   189     CPIMEventList* DoOpenEventListL(
   237         const TDesC* aListName, const TDesC* aCalName);
   190         const TDesC* aListName);
   238 
   191 
   239     /**
   192     /**
   240      * Opens a to-do list.
   193      * Opens a to-do list.
   241      *
   194      *
   242      * @param aListName Name of the list or NULL to indicate
   195      * @param aListName Name of the list or NULL to indicate
   243      *        default list.
   196      *        default list.
   244      * @param aCalName Name of the calendar or NULL to indicate
   197      *
   245      *        default calendar.
   198      * @return A new list or NULL if no matching list was found.
   246      * @return A new list or NULL if no matching list and calendar was found.
   199      */
   247      */
   200     CPIMToDoList* DoOpenToDoListL(
   248     CPIMToDoList* DoOpenToDoListL(const TDesC* aListName, const TDesC* aCalName);
   201         const TDesC* aListName);
   249 
   202 
   250 
   203     CDesCArray* DoListPimListsL(
   251     /**
       
   252     * Opens a to-do list.
       
   253     *
       
   254     * @param aPimListType Name of the list or NULL to indicate
       
   255     *        default list.
       
   256     * @return A new list or NULL if no matching list and calendar was found.
       
   257     */
       
   258     CDesCArray* CPIMManager::DoListPimListsL(
       
   259         const TPIMListType& aPimListType);
   204         const TPIMListType& aPimListType);
   260 
   205 
   261     /**
   206     pimbaselist* DoOpenPimListL(
   262      * list all the calendars this function will call by ListCalendars function
       
   263      *
       
   264      * @return void.
       
   265      */
       
   266     void CPIMManager::DoListCalendarsL();
       
   267 
       
   268     /**
       
   269      * list all the calendars names this function will call by ListCalendatNames function
       
   270      *
       
   271      * @return void.
       
   272      */
       
   273     void CPIMManager::DoListCalendarNamesL();
       
   274 
       
   275 
       
   276     /**
       
   277      * creates the new calendar by given name.
       
   278      *
       
   279      * @param aFileName name of the calendar file this is string type.
       
   280      *
       
   281      * @param aDisplayName name of the calendar to display this is string type
       
   282      *
       
   283      * @return void.
       
   284      */
       
   285     void CPIMManager::DoCreateCalFileL(const TDesC &aFileName,const TDesC &aDisplayName);
       
   286 
       
   287     /**
       
   288      * delets the calendar by given name.
       
   289      *
       
   290      * @param aFileName name of the calendar file this is string type.
       
   291      *
       
   292      * @return void.
       
   293      */
       
   294     void CPIMManager::DoDeleteCalFileL(const TDesC& aFileName);
       
   295 
       
   296     /**
       
   297     * Opens a PIM list of given type.
       
   298     *
       
   299     * @param aPimListType List type.
       
   300     * @param aPimListName Name of the list. The name must be valid list
       
   301     *        name. If not present, name is resolved to the default list
       
   302     *        of the given type.
       
   303     * @param aCalName Name of the Canlendar. The name must be valid Canlendar
       
   304     *        name. If not present, name is resolved to the default Canlendar.
       
   305     *
       
   306     * @return PIM list. Type of the list corresponds to
       
   307     *         \a aPimListType argument.
       
   308     *
       
   309     * @par Leaving:
       
   310     * The method leaves on error. Error codes should be interpreted as
       
   311     * follows:
       
   312     * @li \c KErrArgument - \a aPimListType is invalid.
       
   313     * @li \c KErrNotSupported - \a aPimListType is not supported.
       
   314     * @li \c KErrNotFound - No list was found by \a aPimListName.
       
   315     * @li \c KErrAlreadyExists - The list was already opened and multiple
       
   316     *     instances of the list are not supported.
       
   317     * @li Other - Internal error.
       
   318     */
       
   319     pimbaselist* CPIMManager::DoOpenPimListL(
       
   320         const TPIMListType& aPimListType,
   207         const TPIMListType& aPimListType,
   321         const TDesC* aPimListName,
   208         const TDesC* aPimListName);
   322         const TDesC* aCalName);
       
   323     /**
       
   324      * this method will create the Sessions with every calendar using file server.
       
   325      *
       
   326      */
       
   327 
       
   328     void CPIMManager::createCalSessionL();
       
   329 
   209 
   330     void dispose();
   210     void dispose();
   331 
   211 
   332 
       
   333 private: // Constructors
   212 private: // Constructors
   334 
   213 
   335     /**
   214     /**
   336      * C++ default constructor.
   215      * C++ default constructor.
   337      */
   216      */
   358     /** Owned. */
   237     /** Owned. */
   359     CPIMEventValidator* iEventValidator;
   238     CPIMEventValidator* iEventValidator;
   360 
   239 
   361     /** Owned. */
   240     /** Owned. */
   362     CPIMToDoValidator* iToDoValidator;
   241     CPIMToDoValidator* iToDoValidator;
   363 
       
   364     /** (Owned.) */
       
   365     RLibrary iLocalizationLibrary;
       
   366 
       
   367     CDesCArray* iCalList;
       
   368     /** Session to calendar server. Owned. */
       
   369     //CCalSession* iCalSession;
       
   370 
       
   371     RPointerArray<CCalSession> iCalSessions;
       
   372 
       
   373     CDesCArray* iCalendarNamesDesCArray;
       
   374 
       
   375     CDesCArray* iCalSessionArray;
       
   376 
       
   377     CDesCArray* iCalListName;
       
   378     CDesCArrayFlat* iDesCArray;
       
   379     CCalSession* iCalSession;
       
   380 
   242 
   381 
   243 
   382 };
   244 };
   383 
   245 
   384 #endif // CPIMMANAGER_H
   246 #endif // CPIMMANAGER_H