jrt_plat/java_registry_api/inc/javaregistryapplicationentry.h
changeset 1 53c80e845d7c
equal deleted inserted replaced
0:3fd91c96c86c 1:53c80e845d7c
       
     1 /*
       
     2 * Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description: Java Registy API header file
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef JAVAREGISTRYAPPLICATIONENTRY_H
       
    20 #define JAVAREGISTRYAPPLICATIONENTRY_H
       
    21 
       
    22 #include <e32base.h>
       
    23 #include <e32cmn.h>
       
    24 #include <f32file.h>
       
    25 #include "javaregistryentry.h"
       
    26 #include "javaregistryentrytype.h"
       
    27 
       
    28 namespace Java
       
    29 {
       
    30 namespace Manager
       
    31 {
       
    32 namespace Registry
       
    33 {
       
    34 
       
    35 // FORWARD DECLARATION
       
    36 class CWriteableJavaRegistryApplicationEntry;
       
    37 
       
    38 }// namespace Registry
       
    39 }// namespace Manager
       
    40 
       
    41 // FORWARD DECLARATION
       
    42 class CJavaRegistryPackageEntry;
       
    43 
       
    44 /**
       
    45  * This subclass of CJavaRegistryEntry supports attributes
       
    46  * for single application, that can't contain embedded entries.
       
    47  *
       
    48  * @lib javaregistryclient.lib
       
    49  * @since S60 v3.2
       
    50  */
       
    51 class CJavaRegistryApplicationEntry : public CJavaRegistryEntry
       
    52 {
       
    53 public:
       
    54 
       
    55 
       
    56     /**
       
    57      * CJavaRegistryApplicationEntry::CJavaRegistryApplicationEntry
       
    58      * constructor
       
    59      *
       
    60      * @since S60 v3.2
       
    61      * @param aWritableEntry Pointer to a writable entry, to delegate
       
    62      *          getter methods. Pointer ownership taken.
       
    63      */
       
    64     CJavaRegistryApplicationEntry(Java::Manager::Registry::
       
    65                                   CWriteableJavaRegistryApplicationEntry* aWritableEntry);
       
    66 
       
    67     /**
       
    68      * Tells if this application is startable.
       
    69      *
       
    70      * @since S60 v3.2
       
    71      * @return ETrue if the application is startable, EFalse otherwise.
       
    72      *         Default value if not set: ETrue.
       
    73      */
       
    74     IMPORT_C TBool IsStartable() const;
       
    75 
       
    76     /**
       
    77      * Tells if this application must be shown in Application Shell or
       
    78      * it must rather be hidden.
       
    79      *
       
    80      * @since S60 v3.2
       
    81      * @return ETrue if the application is shown in Application Shell,
       
    82      *         EFalse otherwise.
       
    83      *         Default value if not set: ETrue.
       
    84      */
       
    85     IMPORT_C TBool IsVisible() const;
       
    86 
       
    87     /**
       
    88      * Tells if the end user can not uninstall this application.
       
    89      *
       
    90      * @since S60 v3.2
       
    91      * @return ETrue if the application is resident, EFalse otherwise.
       
    92      *         Default value if not set: EFalse.
       
    93      */
       
    94     IMPORT_C TBool IsResident() const;
       
    95 
       
    96     /**
       
    97      * Gets the group name of this application. This property tells in
       
    98      * which folder the application icon shall appear. It can be a
       
    99      * null-string: in that case the Installed folder will be hosting
       
   100      * midlet icons.
       
   101      *
       
   102      * @since S60 v3.2
       
   103      * @return Group name of this application.
       
   104      *         Default value if not set:
       
   105      */
       
   106     IMPORT_C const TDesC& GroupName() const;
       
   107 
       
   108     /**
       
   109      * Gets a reference to the install package entry, which is the parent
       
   110      * of this application. E.g. if this entry represents a MIDlet this
       
   111      * method returns a reference to the corresponding MIDlet Suite entry.
       
   112      * The function may leave with one of the system-wide error codes.
       
   113      *
       
   114      * @since S60 v3.2
       
   115      * @return a CJavaRegistryEntry object. Caller takes over the
       
   116      *         ownership of the object being transferred.
       
   117      */
       
   118     IMPORT_C CJavaRegistryPackageEntry* PackageEntryL() const;
       
   119 
       
   120 protected:
       
   121 
       
   122     /**
       
   123      * CJavaRegistryApplicationEntry::WritableEntry method returns the member
       
   124      * of the parent class, but first casts it to
       
   125      * CWriteableJavaRegistryApplicationEntry.
       
   126      *
       
   127      * @since S60 v3.2
       
   128      * @return Returns the member of this class.
       
   129      */
       
   130     Java::Manager::Registry::
       
   131     CWriteableJavaRegistryApplicationEntry* WritableEntry() const;
       
   132 
       
   133 };
       
   134 
       
   135 } // namespace Java
       
   136 
       
   137 #endif // JAVAREGISTRYAPPLICATIONENTRY_H