Revision: 201007 RCL_3 PDK_3.0.h
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Mon, 22 Feb 2010 17:55:27 +0200
branchRCL_3
changeset 8 014f8c42e1d4
parent 7 9d598f7f02da
child 11 0fdfe802150c
child 12 7dc132eccdd0
Revision: 201007
Makefile
bld.inf
group/bld.inf
java_stubs/group/bld.inf
java_stubs/javadebugapi/build/bld.inf
java_stubs/javadebugapi/build/javadebugapi.mmp
java_stubs/javadebugapi/bwins/javadebugapiu.def
java_stubs/javadebugapi/eabi/javadebugapiu.def
java_stubs/javadebugapi/src/javadebugapi.cpp
java_stubs/javaenvinfo/build/bld.inf
java_stubs/javaenvinfo/build/javaenvinfo.mmp
java_stubs/javaenvinfo/bwins/javaenvinfou.def
java_stubs/javaenvinfo/eabi/javaenvinfou.def
java_stubs/javaenvinfo/src/javaenvinfo.cpp
java_stubs/javaregistry/clientserver/client/build/bld.inf
java_stubs/javaregistry/clientserver/client/build/javaregclient.mmp
java_stubs/javaregistry/clientserver/client/bwins/javaregistryclientu.def
java_stubs/javaregistry/clientserver/client/eabi/javaregistryclientu.def
java_stubs/javaregistry/clientserver/client/inc/javaattributes.h
java_stubs/javaregistry/clientserver/client/inc/javaregclient.h
java_stubs/javaregistry/clientserver/client/inc/javaregconverter.h
java_stubs/javaregistry/clientserver/client/inc/javaregistrybackupsupport.h
java_stubs/javaregistry/clientserver/client/inc/javaregistrypropertyids.h
java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistry.h
java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistryapplicationentry.h
java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistryentry.h
java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistrypackageentry.h
java_stubs/javaregistry/clientserver/client/src/javaregconverter.cpp
java_stubs/javaregistry/clientserver/client/src/javaregistry.cpp
java_stubs/javaregistry/clientserver/client/src/javaregistryapplicationentry.cpp
java_stubs/javaregistry/clientserver/client/src/javaregistrybackupsupport.cpp
java_stubs/javaregistry/clientserver/client/src/javaregistryentry.cpp
java_stubs/javaregistry/clientserver/client/src/javaregistrypackageentry.cpp
java_stubs/javaregistry/clientserver/client/src/writeablejavaregistry.cpp
java_stubs/javaregistry/clientserver/client/src/writeablejavaregistryapplicationentry.cpp
java_stubs/javaregistry/clientserver/client/src/writeablejavaregistryentry.cpp
java_stubs/javaregistry/clientserver/client/src/writeablejavaregistrypackageentry.cpp
java_stubs/javaregistry/clientserver/common/inc/javapropertyarray.h
java_stubs/javaregistry/clientserver/common/inc/javaregburstates.h
java_stubs/javaregistry/clientserver/common/inc/javaregdef.h
java_stubs/javaregistry/clientserver/common/inc/javaregproperty.h
java_stubs/javaregistry/clientserver/common/inc/javareguidarrayconv.h
java_stubs/javaregistry/clientserver/common/src/javapropertyarray.cpp
java_stubs/javaregistry/clientserver/common/src/javaregproperty.cpp
java_stubs/rom/javastubs.iby
jrt_plat/group/bld.inf
jrt_plat/java_debug_api/build/bld.inf
jrt_plat/java_debug_api/inc/javadebugapi.h
jrt_plat/java_debug_api/inc/javadiagnostic.h
jrt_plat/java_env_info_api/build/bld.inf
jrt_plat/java_env_info_api/inc/javadomainpskeys.h
jrt_plat/java_env_info_api/inc/javaenvinfo.h
jrt_plat/java_registry_api/build/bld.inf
jrt_plat/java_registry_api/inc/appversion.h
jrt_plat/java_registry_api/inc/appversion.inl
jrt_plat/java_registry_api/inc/javaattribute.h
jrt_plat/java_registry_api/inc/javaregistry.h
jrt_plat/java_registry_api/inc/javaregistryapplicationentry.h
jrt_plat/java_registry_api/inc/javaregistryentry.h
jrt_plat/java_registry_api/inc/javaregistryentrytype.h
jrt_plat/java_registry_api/inc/javaregistryincludes.h
jrt_plat/java_registry_api/inc/javaregistrypackageentry.h
jrt_plat/java_registry_api/inc/mjavaattribute.h
layers.sysdef.xml
sysdef_1_4_0.dtd
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Makefile	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,20 @@
+#
+# Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+# All rights reserved.
+# This component and the accompanying materials are made available
+# under the terms of "Eclipse Public License v1.0"
+# which accompanies this distribution, and is available
+# at the URL "http://www.eclipse.org/legal/epl-v10.html".
+#
+# Initial Contributors:
+# Nokia Corporation - initial contribution.
+#
+# Contributors:
+#
+# Description: Main makefile of Java, run when building app layer
+#
+
+override JAVA_SRC_ROOT = $(CURDIR)
+export JAVA_SRC_ROOT
+
+include $(JAVA_SRC_ROOT)/build/makefile
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,29 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Generated bld.inf -file
+*
+*/
+
+PRJ_PLATFORMS
+default
+
+#include "javacommons/bld.inf"    
+#include "javaruntimes/bld.inf"    
+#include "javauis/bld.inf"    
+#include "javamanager/bld.inf"    
+#include "javatools/bld.inf"    
+#include "javaextensions/bld.inf"    
+#include "jrt_plat/group/bld.inf"    
+#include "build/bld.inf"    
+#include "build/stubsis/bld.inf"  
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/group/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,27 @@
+/*
+* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: The main build file for Java Package
+*
+*/
+
+#include <platform_paths.hrh>
+
+// bld.inf of subprojects
+#ifdef __JAVA_STUBS
+#include "../java_stubs/group/bld.inf"
+#include "../jrt_plat/group/bld.inf"
+#else
+#include "../build/bldjava.inf"
+#include "../bld.inf"
+#endif // __JAVA_STUBS
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/group/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,27 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+*
+*/
+
+
+// bld.inf of subprojects
+#include "../javaenvinfo/build/bld.inf"
+#include "../javaregistry/clientserver/client/build/bld.inf"
+#include "../javadebugapi/build/bld.inf"
+
+PRJ_EXPORTS
+../rom/javastubs.iby    CORE_APP_LAYER_IBY_EXPORT_PATH(javastubs.iby)
+
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javadebugapi/build/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,25 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Java Debug API build info file
+*
+*/
+
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+
+PRJ_MMPFILES
+javadebugapi.mmp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javadebugapi/build/javadebugapi.mmp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,32 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Java Debug API build file
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+TARGET        javadebugapi.dll
+TARGETTYPE    dll
+CAPABILITY    CAP_GENERAL_DLL
+VENDORID      VID_DEFAULT
+
+PAGED
+APP_LAYER_SYSTEMINCLUDE
+
+SOURCEPATH    ../src
+SOURCE        javadebugapi.cpp
+
+LIBRARY       euser.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javadebugapi/bwins/javadebugapiu.def	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,7 @@
+EXPORTS
+	?installApp@debug@java@@YAHAAVHBufC16@@AAVTUid@@AAV?$RArray@VTUid@@@@@Z @ 1 NONAME ; int java::debug::installApp(class HBufC16 &, class TUid &, class RArray<class TUid> &)
+	?startApp@debug@java@@YAHVTUid@@AAVHBufC16@@@Z @ 2 NONAME ; int java::debug::startApp(class TUid, class HBufC16 &)
+	?stopApp@debug@java@@YAHVTUid@@@Z @ 3 NONAME ; int java::debug::stopApp(class TUid)
+	?uninstallApp@debug@java@@YAHVTUid@@@Z @ 4 NONAME ; int java::debug::uninstallApp(class TUid)
+	?createInstance@JavaDiagnostic@debug@java@@SAPAV123@XZ @ 5 NONAME ; class java::debug::JavaDiagnostic * java::debug::JavaDiagnostic::createInstance(void)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javadebugapi/eabi/javadebugapiu.def	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,7 @@
+EXPORTS
+	_ZN4java5debug10installAppER7HBufC16R4TUidR6RArrayIS3_E @ 1 NONAME
+	_ZN4java5debug12uninstallAppE4TUid @ 2 NONAME
+	_ZN4java5debug7stopAppE4TUid @ 3 NONAME
+	_ZN4java5debug8startAppE4TUidR7HBufC16 @ 4 NONAME
+	_ZN4java5debug14JavaDiagnostic14createInstanceEv @ 5 NONAME
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javadebugapi/src/javadebugapi.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,53 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Java Debug API stub implementation.
+*
+*/
+
+
+#include <e32base.h>
+#include <javadebugapi.h>
+#include <javadiagnostic.h>
+
+EXPORT_C
+TBool java::debug::installApp(HBufC& /*aFilename*/,
+                              TUid& /*aSuiteUid*/,
+                              RArray<TUid>& /*aApplicationUid*/)
+{
+    return EFalse;
+}
+
+EXPORT_C
+TBool java::debug::uninstallApp(TUid /*aSuiteUid*/)
+{
+    return EFalse;
+}
+
+EXPORT_C
+TBool java::debug::startApp(TUid /*aApplicationUid*/, HBufC& /*aUeiParameters*/)
+{
+    return EFalse;
+}
+
+EXPORT_C
+TBool java::debug::stopApp(TUid /*aApplicationUid*/)
+{
+    return EFalse;
+}
+
+EXPORT_C
+java::debug::JavaDiagnostic* java::debug::JavaDiagnostic::createInstance()
+{
+    return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaenvinfo/build/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,26 @@
+/*
+* Copyright (c) 2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Java Environment Info build info file
+*
+*/
+
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+
+PRJ_MMPFILES
+
+javaenvinfo.mmp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaenvinfo/build/javaenvinfo.mmp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,36 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  JavaEnvInfo build file
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+TARGET        javaenvinfo.dll
+TARGETTYPE    dll
+CAPABILITY    CAP_GENERAL_DLL
+UID	          0x1000008d 0x2001B2A5
+VENDORID      VID_DEFAULT
+
+PAGED
+
+APP_LAYER_SYSTEMINCLUDE
+
+SOURCEPATH    ../src
+
+SOURCE        javaenvinfo.cpp
+
+
+LIBRARY       euser.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaenvinfo/bwins/javaenvinfou.def	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,5 @@
+EXPORTS
+	?GetUserAgentHeaderL@JavaEnvInfo@Java@@SAPAVHBufC16@@XZ @ 1 NONAME ; class HBufC16 * Java::JavaEnvInfo::GetUserAgentHeaderL(void)
+	?Version@JavaEnvInfo@Java@@SA?AVTVersion@@XZ @ 2 NONAME ; class TVersion Java::JavaEnvInfo::Version(void)
+	?GetPlatformInfoL@JavaEnvInfo@Java@@SAPAVHBufC16@@XZ @ 3 NONAME ; class HBufC16 * Java::JavaEnvInfo::GetPlatformInfoL(void)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaenvinfo/eabi/javaenvinfou.def	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,5 @@
+EXPORTS
+	_ZN4Java11JavaEnvInfo16GetPlatformInfoLEv @ 1 NONAME
+	_ZN4Java11JavaEnvInfo19GetUserAgentHeaderLEv @ 2 NONAME
+	_ZN4Java11JavaEnvInfo7VersionEv @ 3 NONAME
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaenvinfo/src/javaenvinfo.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,61 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  CJavaEnvInfo implementation.
+*
+*/
+
+
+#include <e32base.h>
+
+#include <javaenvinfo.h>
+
+namespace Java
+{
+// ======== MEMBER FUNCTIONS ========
+
+// ---------------------------------------------------------------------------
+// JavaEnvInfo::Version()
+// @return Java environment version
+// ---------------------------------------------------------------------------
+EXPORT_C TVersion JavaEnvInfo::Version()
+{
+    TVersion version(0, 0, 0);
+    return version;
+}
+
+// ---------------------------------------------------------------------------
+// JavaEnvInfo::GetUserAgentHeaderL
+// ---------------------------------------------------------------------------
+EXPORT_C HBufC* JavaEnvInfo::GetUserAgentHeaderL()
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// JavaEnvInfo::GetUserAgentHeaderL
+// ---------------------------------------------------------------------------
+EXPORT_C HBufC* JavaEnvInfo::GetPlatformInfoL()
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// JavaEnvInfo::GetJavaVersionL()
+// ---------------------------------------------------------------------------
+TVersion JavaEnvInfo::GetJavaVersionL()
+{
+    TVersion version(0, 0, 0);
+    return version;
+}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/build/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,23 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Build information file for project javaregclient
+*
+*/
+
+#include <platform_paths.hrh>
+
+PRJ_MMPFILES
+javaregclient.mmp
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/build/javaregclient.mmp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,53 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Project definition file for project javaregistryclient.dll
+*
+*/
+
+#include <platform_paths.hrh>
+
+TARGET          javaregistryclient.dll
+TARGETTYPE      DLL
+UID             0x1000008d 0x10282476
+
+// CAPABILITY 
+CAPABILITY      CAP_CLIENT_DLL
+VENDORID        VID_DEFAULT
+
+PAGED
+
+USERINCLUDE     ../inc
+USERINCLUDE     ../../common/inc
+
+SOURCEPATH      ../src
+SOURCE          javaregistry.cpp
+SOURCE          javaregistryentry.cpp
+SOURCE          javaregistryapplicationentry.cpp
+SOURCE          javaregistrypackageentry.cpp
+SOURCE          writeablejavaregistrypackageentry.cpp
+SOURCE          writeablejavaregistryentry.cpp
+SOURCE          writeablejavaregistryapplicationentry.cpp
+SOURCE          writeablejavaregistry.cpp 
+SOURCE          javaregistrybackupsupport.cpp
+SOURCE          javaregconverter.cpp
+
+SOURCEPATH      ../../common/src
+SOURCE          javaregproperty.cpp
+SOURCE          javapropertyarray.cpp
+
+APP_LAYER_SYSTEMINCLUDE
+
+LIBRARY         euser.lib
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/bwins/javaregistryclientu.def	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,180 @@
+EXPORTS
+	??0CWriteableJavaRegistry@Registry@Manager@Java@@IAE@XZ @ 1 NONAME ; Java::Manager::Registry::CWriteableJavaRegistry::CWriteableJavaRegistry(void)
+	??0CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@IAE@ABVTUid@@@Z @ 2 NONAME ; Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::CWriteableJavaRegistryApplicationEntry(class TUid const &)
+	??0CWriteableJavaRegistryEntry@Registry@Manager@Java@@IAE@ABVTUid@@@Z @ 3 NONAME ; Java::Manager::Registry::CWriteableJavaRegistryEntry::CWriteableJavaRegistryEntry(class TUid const &)
+	??0CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@IAE@ABVTUid@@@Z @ 4 NONAME ; Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::CWriteableJavaRegistryPackageEntry(class TUid const &)
+	??1CJavaProperty@Registry@Manager@Java@@UAE@XZ @ 5 NONAME ; Java::Manager::Registry::CJavaProperty::~CJavaProperty(void)
+	??1CJavaRegistryBackupSupport@Registry@Manager@Java@@UAE@XZ @ 6 NONAME ; Java::Manager::Registry::CJavaRegistryBackupSupport::~CJavaRegistryBackupSupport(void)
+	??1CJavaRegistryEntry@Java@@UAE@XZ @ 7 NONAME ; Java::CJavaRegistryEntry::~CJavaRegistryEntry(void)
+	??1CWriteableJavaRegistry@Registry@Manager@Java@@UAE@XZ @ 8 NONAME ; Java::Manager::Registry::CWriteableJavaRegistry::~CWriteableJavaRegistry(void)
+	??1CWriteableJavaRegistryEntry@Registry@Manager@Java@@UAE@XZ @ 9 NONAME ; Java::Manager::Registry::CWriteableJavaRegistryEntry::~CWriteableJavaRegistryEntry(void)
+	??1CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UAE@XZ @ 10 NONAME ; Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::~CWriteableJavaRegistryPackageEntry(void)
+	??8CJavaProperty@Registry@Manager@Java@@QAEHABV0123@@Z @ 11 NONAME ; int Java::Manager::Registry::CJavaProperty::operator==(class Java::Manager::Registry::CJavaProperty const &)
+	?AddCertificateChainL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QAEXABVTDesC8@@@Z @ 12 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::AddCertificateChainL(class TDesC8 const &)
+	?AddEmbeddedEntryL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTUid@@@Z @ 13 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::AddEmbeddedEntryL(class TUid const &)
+	?BooleanProperty@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IBEHJH@Z @ 14 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryEntry::BooleanProperty(long, int) const
+	?CertificateChain@CJavaRegistryEntry@Java@@QBEABVTDesC8@@H@Z @ 15 NONAME ; class TDesC8 const & Java::CJavaRegistryEntry::CertificateChain(int) const
+	?CertificateChain@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBEABVTDesC8@@H@Z @ 16 NONAME ; class TDesC8 const & Java::Manager::Registry::CWriteableJavaRegistryEntry::CertificateChain(int) const
+	?ChangeBURState@CJavaRegistryBackupSupport@Registry@Manager@Java@@QBEHABW4TBackupState@234@@Z @ 17 NONAME ; int Java::Manager::Registry::CJavaRegistryBackupSupport::ChangeBURState(enum Java::Manager::Registry::TBackupState const &) const
+	?ConstructL@CWriteableJavaRegistry@Registry@Manager@Java@@IAEXHH@Z @ 18 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistry::ConstructL(int, int)
+	?ConstructL@CWriteableJavaRegistry@Registry@Manager@Java@@IAEX_J@Z @ 19 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistry::ConstructL(long long)
+	?ConstructL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IAEXW4TJavaRegistryEntryType@4@@Z @ 20 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::ConstructL(enum Java::TJavaRegistryEntryType)
+	?DecideEntryTypeAndCreateL@CWriteableJavaRegistry@Registry@Manager@Java@@MBEPAVCWriteableJavaRegistryEntry@234@ABVTUid@@PAVCJavaPropertyArray@234@@Z @ 21 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryEntry * Java::Manager::Registry::CWriteableJavaRegistry::DecideEntryTypeAndCreateL(class TUid const &, class Java::Manager::Registry::CJavaPropertyArray *) const
+	?DeleteProperty@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IAEXH@Z @ 22 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::DeleteProperty(int)
+	?DownloadPlugin@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEABVTDesC8@@XZ @ 23 NONAME ; class TDesC8 const & Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::DownloadPlugin(void) const
+	?Drive@CJavaRegistryEntry@Java@@QBE?AW4TDriveNumber@@XZ @ 24 NONAME ; enum TDriveNumber Java::CJavaRegistryEntry::Drive(void) const
+	?Drive@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBE?AW4TDriveNumber@@XZ @ 25 NONAME ; enum TDriveNumber Java::Manager::Registry::CWriteableJavaRegistryEntry::Drive(void) const
+	?EmbeddedEntryByNumberL@CJavaRegistryPackageEntry@Java@@QBEPAVCJavaRegistryEntry@2@H@Z @ 26 NONAME ; class Java::CJavaRegistryEntry * Java::CJavaRegistryPackageEntry::EmbeddedEntryByNumberL(int) const
+	?EmbeddedEntryByNumberL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEPAVCWriteableJavaRegistryEntry@234@H@Z @ 27 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryEntry * Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::EmbeddedEntryByNumberL(int) const
+	?EmbeddedEntryByUidL@CJavaRegistryPackageEntry@Java@@QBEPAVCJavaRegistryEntry@2@ABVTUid@@@Z @ 28 NONAME ; class Java::CJavaRegistryEntry * Java::CJavaRegistryPackageEntry::EmbeddedEntryByUidL(class TUid const &) const
+	?EmbeddedEntryByUidL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEPAVCWriteableJavaRegistryEntry@234@ABVTUid@@@Z @ 29 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryEntry * Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::EmbeddedEntryByUidL(class TUid const &) const
+	?EntriesExistForDriveL@CJavaRegistryBackupSupport@Registry@Manager@Java@@QBEHABW4TDriveNumber@@@Z @ 30 NONAME ; int Java::Manager::Registry::CJavaRegistryBackupSupport::EntriesExistForDriveL(enum TDriveNumber const &) const
+	?GenerateUidsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXAAV?$RArray@VTUid@@@@H@Z @ 31 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistry::GenerateUidsL(class RArray<class TUid> &, int) const
+	?GetCertificateChainsL@JavaRegConverter@Registry@Manager@Java@@SAXABVTDesC16@@AAV?$RPointerArray@VHBufC8@@@@@Z @ 32 NONAME ; void Java::Manager::Registry::JavaRegConverter::GetCertificateChainsL(class TDesC16 const &, class RPointerArray<class HBufC8> &)
+	?GetEmbeddedEntries@CJavaRegistryPackageEntry@Java@@QBEXAAV?$RArray@VTUid@@@@@Z @ 33 NONAME ; void Java::CJavaRegistryPackageEntry::GetEmbeddedEntries(class RArray<class TUid> &) const
+	?GetEmbeddedEntries@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEXAAV?$RArray@VTUid@@@@@Z @ 34 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::GetEmbeddedEntries(class RArray<class TUid> &) const
+	?GetPropertyIndex@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IBEHJ@Z @ 35 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryEntry::GetPropertyIndex(long) const
+	?GetRegistryEntryUidsL@CJavaRegistry@Java@@QBEXAAV?$RArray@VTUid@@@@@Z @ 36 NONAME ; void Java::CJavaRegistry::GetRegistryEntryUidsL(class RArray<class TUid> &) const
+	?GetRegistryEntryUidsL@CJavaRegistry@Java@@QBEXW4TJavaRegistryEntryType@2@AAV?$RArray@VTUid@@@@@Z @ 37 NONAME ; void Java::CJavaRegistry::GetRegistryEntryUidsL(enum Java::TJavaRegistryEntryType, class RArray<class TUid> &) const
+	?GetRegistryEntryUidsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXAAV?$RArray@VTUid@@@@@Z @ 38 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistry::GetRegistryEntryUidsL(class RArray<class TUid> &) const
+	?GetRegistryEntryUidsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXABV?$RPointerArray@VCJavaProperty@Registry@Manager@Java@@@@AAV?$RArray@VTUid@@@@@Z @ 39 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistry::GetRegistryEntryUidsL(class RPointerArray<class Java::Manager::Registry::CJavaProperty> const &, class RArray<class TUid> &) const
+	?GetRegistryEntryUidsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXW4TJavaRegistryEntryType@4@AAV?$RArray@VTUid@@@@@Z @ 40 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistry::GetRegistryEntryUidsL(enum Java::TJavaRegistryEntryType, class RArray<class TUid> &) const
+	?GetTAppVersion@JavaRegConverter@Registry@Manager@Java@@SA?AVTAppVersion@@ABVTDesC16@@V5@@Z @ 41 NONAME ; class TAppVersion Java::Manager::Registry::JavaRegConverter::GetTAppVersion(class TDesC16 const &, class TAppVersion)
+	?GetTAppVersionL@JavaRegConverter@Registry@Manager@Java@@SA?AVTAppVersion@@ABVTDesC16@@@Z @ 42 NONAME ; class TAppVersion Java::Manager::Registry::JavaRegConverter::GetTAppVersionL(class TDesC16 const &)
+	?GetTBool@JavaRegConverter@Registry@Manager@Java@@SAHABVTDesC16@@H@Z @ 43 NONAME ; int Java::Manager::Registry::JavaRegConverter::GetTBool(class TDesC16 const &, int)
+	?GetTBoolL@JavaRegConverter@Registry@Manager@Java@@SAHABVTDesC16@@@Z @ 44 NONAME ; int Java::Manager::Registry::JavaRegConverter::GetTBoolL(class TDesC16 const &)
+	?GetTInt@JavaRegConverter@Registry@Manager@Java@@SAJABVTDesC16@@J@Z @ 45 NONAME ; long Java::Manager::Registry::JavaRegConverter::GetTInt(class TDesC16 const &, long)
+	?GetTIntL@JavaRegConverter@Registry@Manager@Java@@SAJABVTDesC16@@@Z @ 46 NONAME ; long Java::Manager::Registry::JavaRegConverter::GetTIntL(class TDesC16 const &)
+	?GetUnicodeDescriptorsL@JavaRegConverter@Registry@Manager@Java@@SAXABVTDesC16@@AAV?$RPointerArray@VHBufC16@@@@@Z @ 47 NONAME ; void Java::Manager::Registry::JavaRegConverter::GetUnicodeDescriptorsL(class TDesC16 const &, class RPointerArray<class HBufC16> &)
+	?GroupName@CJavaRegistryApplicationEntry@Java@@QBEABVTDesC16@@XZ @ 48 NONAME ; class TDesC16 const & Java::CJavaRegistryApplicationEntry::GroupName(void) const
+	?GroupName@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QBEABVTDesC16@@XZ @ 49 NONAME ; class TDesC16 const & Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::GroupName(void) const
+	?Id@CJavaProperty@Registry@Manager@Java@@QBEJXZ @ 50 NONAME ; long Java::Manager::Registry::CJavaProperty::Id(void) const
+	?InstallPackageUid@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QBE?AVTUid@@XZ @ 51 NONAME ; class TUid Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::InstallPackageUid(void) const
+	?InstallPlugin@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEABVTDesC8@@XZ @ 52 NONAME ; class TDesC8 const & Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::InstallPlugin(void) const
+	?IntegerProperty@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IBEJJJ@Z @ 53 NONAME ; long Java::Manager::Registry::CWriteableJavaRegistryEntry::IntegerProperty(long, long) const
+	?IsResident@CJavaRegistryApplicationEntry@Java@@QBEHXZ @ 54 NONAME ; int Java::CJavaRegistryApplicationEntry::IsResident(void) const
+	?IsResident@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QBEHXZ @ 55 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::IsResident(void) const
+	?IsStartable@CJavaRegistryApplicationEntry@Java@@QBEHXZ @ 56 NONAME ; int Java::CJavaRegistryApplicationEntry::IsStartable(void) const
+	?IsStartable@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QBEHXZ @ 57 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::IsStartable(void) const
+	?IsUninstallable@CJavaRegistryPackageEntry@Java@@QBEHXZ @ 58 NONAME ; int Java::CJavaRegistryPackageEntry::IsUninstallable(void) const
+	?IsUninstallable@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEHXZ @ 59 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::IsUninstallable(void) const
+	?IsVisible@CJavaRegistryApplicationEntry@Java@@QBEHXZ @ 60 NONAME ; int Java::CJavaRegistryApplicationEntry::IsVisible(void) const
+	?IsVisible@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QBEHXZ @ 61 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::IsVisible(void) const
+	?Name@CJavaRegistryEntry@Java@@QBEABVTDesC16@@XZ @ 62 NONAME ; class TDesC16 const & Java::CJavaRegistryEntry::Name(void) const
+	?Name@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBEABVTDesC16@@XZ @ 63 NONAME ; class TDesC16 const & Java::Manager::Registry::CWriteableJavaRegistryEntry::Name(void) const
+	?NewL@CJavaProperty@Registry@Manager@Java@@SAPAV1234@JABVTDesC16@@@Z @ 64 NONAME ; class Java::Manager::Registry::CJavaProperty * Java::Manager::Registry::CJavaProperty::NewL(long, class TDesC16 const &)
+	?NewL@CJavaRegistry@Java@@SAPAV12@XZ @ 65 NONAME ; class Java::CJavaRegistry * Java::CJavaRegistry::NewL(void)
+	?NewL@CJavaRegistryBackupSupport@Registry@Manager@Java@@SAPAV1234@XZ @ 66 NONAME ; class Java::Manager::Registry::CJavaRegistryBackupSupport * Java::Manager::Registry::CJavaRegistryBackupSupport::NewL(void)
+	?NewL@CWriteableJavaRegistry@Registry@Manager@Java@@SAPAV1234@H@Z @ 67 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistry * Java::Manager::Registry::CWriteableJavaRegistry::NewL(int)
+	?NewL@CWriteableJavaRegistry@Registry@Manager@Java@@SAPAV1234@_J@Z @ 68 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistry * Java::Manager::Registry::CWriteableJavaRegistry::NewL(long long)
+	?NewL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@SAPAV1234@ABVTUid@@@Z @ 69 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry * Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::NewL(class TUid const &)
+	?NewL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@SAPAV1234@ABVTUid@@@Z @ 70 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryPackageEntry * Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::NewL(class TUid const &)
+	?NewLC@CJavaProperty@Registry@Manager@Java@@SAPAV1234@JABVTDesC16@@@Z @ 71 NONAME ; class Java::Manager::Registry::CJavaProperty * Java::Manager::Registry::CJavaProperty::NewLC(long, class TDesC16 const &)
+	?NewLC@CJavaRegistry@Java@@SAPAV12@XZ @ 72 NONAME ; class Java::CJavaRegistry * Java::CJavaRegistry::NewLC(void)
+	?NewLC@CJavaRegistryBackupSupport@Registry@Manager@Java@@SAPAV1234@XZ @ 73 NONAME ; class Java::Manager::Registry::CJavaRegistryBackupSupport * Java::Manager::Registry::CJavaRegistryBackupSupport::NewLC(void)
+	?NewLC@CWriteableJavaRegistry@Registry@Manager@Java@@SAPAV1234@H@Z @ 74 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistry * Java::Manager::Registry::CWriteableJavaRegistry::NewLC(int)
+	?NewLC@CWriteableJavaRegistry@Registry@Manager@Java@@SAPAV1234@_J@Z @ 75 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistry * Java::Manager::Registry::CWriteableJavaRegistry::NewLC(long long)
+	?NewLC@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@SAPAV1234@ABVTUid@@@Z @ 76 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry * Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::NewLC(class TUid const &)
+	?NewLC@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@SAPAV1234@ABVTUid@@@Z @ 77 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryPackageEntry * Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::NewLC(class TUid const &)
+	?NumberOfCertificateChains@CJavaRegistryEntry@Java@@QBEHXZ @ 78 NONAME ; int Java::CJavaRegistryEntry::NumberOfCertificateChains(void) const
+	?NumberOfCertificateChains@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBEHXZ @ 79 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryEntry::NumberOfCertificateChains(void) const
+	?NumberOfEmbeddedEntries@CJavaRegistryPackageEntry@Java@@QBEHXZ @ 80 NONAME ; int Java::CJavaRegistryPackageEntry::NumberOfEmbeddedEntries(void) const
+	?NumberOfEmbeddedEntries@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEHXZ @ 81 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::NumberOfEmbeddedEntries(void) const
+	?PackageEntryL@CJavaRegistryApplicationEntry@Java@@QBEPAVCJavaRegistryPackageEntry@2@XZ @ 82 NONAME ; class Java::CJavaRegistryPackageEntry * Java::CJavaRegistryApplicationEntry::PackageEntryL(void) const
+	?PackageEntryL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QBEPAVCWriteableJavaRegistryPackageEntry@234@XZ @ 83 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryPackageEntry * Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::PackageEntryL(void) const
+	?Property@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBEPBVCJavaProperty@234@J@Z @ 84 NONAME ; class Java::Manager::Registry::CJavaProperty const * Java::Manager::Registry::CWriteableJavaRegistryEntry::Property(long) const
+	?RegistryEntryExistsL@CJavaRegistry@Java@@QBEHABVTUid@@@Z @ 85 NONAME ; int Java::CJavaRegistry::RegistryEntryExistsL(class TUid const &) const
+	?RegistryEntryExistsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEHABVTUid@@@Z @ 86 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistry::RegistryEntryExistsL(class TUid const &) const
+	?RegistryEntryL@CJavaRegistry@Java@@QBEPAVCJavaRegistryEntry@2@ABVTUid@@@Z @ 87 NONAME ; class Java::CJavaRegistryEntry * Java::CJavaRegistry::RegistryEntryL(class TUid const &) const
+	?RegistryEntryL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEPAVCWriteableJavaRegistryEntry@234@ABVTUid@@@Z @ 88 NONAME ABSENT ; class Java::Manager::Registry::CWriteableJavaRegistryEntry * Java::Manager::Registry::CWriteableJavaRegistry::RegistryEntryL(class TUid const &) const
+	?RemoveEmbeddedEntryL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTUid@@@Z @ 89 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::RemoveEmbeddedEntryL(class TUid const &)
+	?RemoveRegistryEntryL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXABVTUid@@H@Z @ 90 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistry::RemoveRegistryEntryL(class TUid const &, int) const
+	?SetBooleanPropertyL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IAEXJH@Z @ 91 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetBooleanPropertyL(long, int)
+	?SetDescriptorPropertyL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IAEXJABVTDesC16@@@Z @ 92 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetDescriptorPropertyL(long, class TDesC16 const &)
+	?SetDownloadPluginL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTDesC8@@@Z @ 93 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetDownloadPluginL(class TDesC8 const &)
+	?SetDriveL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QAEXABW4TDriveNumber@@@Z @ 94 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetDriveL(enum TDriveNumber const &)
+	?SetGroupNameL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QAEXABVTDesC16@@@Z @ 95 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::SetGroupNameL(class TDesC16 const &)
+	?SetInstallPackageUidL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QAEXABVTUid@@@Z @ 96 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::SetInstallPackageUidL(class TUid const &)
+	?SetInstallPluginL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTDesC8@@@Z @ 97 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetInstallPluginL(class TDesC8 const &)
+	?SetIntegerPropertyL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@IAEXJJ@Z @ 98 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetIntegerPropertyL(long, long)
+	?SetNameL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QAEXABVTDesC16@@@Z @ 99 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetNameL(class TDesC16 const &)
+	?SetPropertyL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QAEXJABVTDesC16@@@Z @ 100 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetPropertyL(long, class TDesC16 const &)
+	?SetPropertyL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@UAEXPAVCJavaProperty@234@@Z @ 101 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetPropertyL(class Java::Manager::Registry::CJavaProperty *)
+	?SetPropertyL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UAEXPAVCJavaProperty@234@@Z @ 102 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetPropertyL(class Java::Manager::Registry::CJavaProperty *)
+	?SetRegistryEntryL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXABVCWriteableJavaRegistryEntry@234@@Z @ 103 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistry::SetRegistryEntryL(class Java::Manager::Registry::CWriteableJavaRegistryEntry const &) const
+	?SetResidentL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QAEXH@Z @ 104 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::SetResidentL(int)
+	?SetSizeL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXH@Z @ 105 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetSizeL(int)
+	?SetStartableL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QAEXH@Z @ 106 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::SetStartableL(int)
+	?SetTypeL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QAEXW4TJavaRegistryEntryType@4@@Z @ 107 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetTypeL(enum Java::TJavaRegistryEntryType)
+	?SetUninstallableL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXH@Z @ 108 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetUninstallableL(int)
+	?SetVendorL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTDesC16@@@Z @ 109 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetVendorL(class TDesC16 const &)
+	?SetVersionL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTAppVersion@@@Z @ 110 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetVersionL(class TAppVersion const &)
+	?SetVisibleL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@QAEXH@Z @ 111 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::SetVisibleL(int)
+	?Size@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEHXZ @ 112 NONAME ; int Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::Size(void) const
+	?StoreCertificateChainsL@JavaRegConverter@Registry@Manager@Java@@SAXABV?$RPointerArray@VHBufC8@@@@AAPAVHBufC16@@@Z @ 113 NONAME ; void Java::Manager::Registry::JavaRegConverter::StoreCertificateChainsL(class RPointerArray<class HBufC8> const &, class HBufC16 * &)
+	?StoreTAppVersionL@JavaRegConverter@Registry@Manager@Java@@SAXABVTAppVersion@@AAPAVHBufC16@@@Z @ 114 NONAME ; void Java::Manager::Registry::JavaRegConverter::StoreTAppVersionL(class TAppVersion const &, class HBufC16 * &)
+	?StoreTBoolL@JavaRegConverter@Registry@Manager@Java@@SAXHAAPAVHBufC16@@@Z @ 115 NONAME ; void Java::Manager::Registry::JavaRegConverter::StoreTBoolL(int, class HBufC16 * &)
+	?StoreTIntL@JavaRegConverter@Registry@Manager@Java@@SAXJAAPAVHBufC16@@@Z @ 116 NONAME ; void Java::Manager::Registry::JavaRegConverter::StoreTIntL(long, class HBufC16 * &)
+	?StoreUnicodeDescriptorsL@JavaRegConverter@Registry@Manager@Java@@SAXABV?$RPointerArray@VHBufC16@@@@AAPAVHBufC16@@@Z @ 117 NONAME ; void Java::Manager::Registry::JavaRegConverter::StoreUnicodeDescriptorsL(class RPointerArray<class HBufC16> const &, class HBufC16 * &)
+	?Type@CJavaRegistryEntry@Java@@QBE?AW4TJavaRegistryEntryType@2@XZ @ 118 NONAME ; enum Java::TJavaRegistryEntryType Java::CJavaRegistryEntry::Type(void) const
+	?Type@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBE?AW4TJavaRegistryEntryType@4@XZ @ 119 NONAME ; enum Java::TJavaRegistryEntryType Java::Manager::Registry::CWriteableJavaRegistryEntry::Type(void) const
+	?Uid@CJavaRegistryEntry@Java@@QBE?AVTUid@@XZ @ 120 NONAME ; class TUid Java::CJavaRegistryEntry::Uid(void) const
+	?Uid@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBE?AVTUid@@XZ @ 121 NONAME ; class TUid Java::Manager::Registry::CWriteableJavaRegistryEntry::Uid(void) const
+	?Value@CJavaProperty@Registry@Manager@Java@@QBEABVTDesC16@@XZ @ 122 NONAME ; class TDesC16 const & Java::Manager::Registry::CJavaProperty::Value(void) const
+	?Vendor@CJavaRegistryPackageEntry@Java@@QBEABVTDesC16@@XZ @ 123 NONAME ; class TDesC16 const & Java::CJavaRegistryPackageEntry::Vendor(void) const
+	?Vendor@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBEABVTDesC16@@XZ @ 124 NONAME ; class TDesC16 const & Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::Vendor(void) const
+	?Version@CJavaRegistryPackageEntry@Java@@QBE?AVTAppVersion@@XZ @ 125 NONAME ; class TAppVersion Java::CJavaRegistryPackageEntry::Version(void) const
+	?Version@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QBE?AVTAppVersion@@XZ @ 126 NONAME ; class TAppVersion Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::Version(void) const
+	?SetPropertyL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@UAEXPAVCJavaProperty@234@@Z @ 127 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::SetPropertyL(class Java::Manager::Registry::CJavaProperty *)
+	?DrmContentId@CJavaRegistryEntry@Java@@QBEABVTDesC16@@XZ @ 128 NONAME ; class TDesC16 const & Java::CJavaRegistryEntry::DrmContentId(void) const
+	?DrmContentId@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QBEABVTDesC16@@XZ @ 129 NONAME ; class TDesC16 const & Java::Manager::Registry::CWriteableJavaRegistryEntry::DrmContentId(void) const
+	?SetDrmContentIdL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@QAEXABVTDesC16@@@Z @ 130 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SetDrmContentIdL(class TDesC16 const &)
+	??1CJavaAttribute@Registry@Manager@Java@@UAE@XZ @ 131 NONAME ABSENT ; Java::Manager::Registry::CJavaAttribute::~CJavaAttribute(void)
+	??1CJavaAttributes@Registry@Manager@Java@@UAE@XZ @ 132 NONAME ABSENT ; Java::Manager::Registry::CJavaAttributes::~CJavaAttributes(void)
+	??1CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@UAE@XZ @ 133 NONAME ; Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::~CWriteableJavaRegistryApplicationEntry(void)
+	?AddAttributeL@CJavaAttributes@Registry@Manager@Java@@QAEXABVTDesC16@@0H@Z @ 134 NONAME ABSENT ; void Java::Manager::Registry::CJavaAttributes::AddAttributeL(class TDesC16 const &, class TDesC16 const &, int)
+	?AddAttributeL@CJavaAttributes@Registry@Manager@Java@@QAEXPAVMJavaAttribute@234@@Z @ 135 NONAME ABSENT ; void Java::Manager::Registry::CJavaAttributes::AddAttributeL(class Java::Manager::Registry::MJavaAttribute *)
+	?Attribute@CJavaAttributes@Registry@Manager@Java@@QBEPBVMJavaAttribute@234@ABVTDesC16@@@Z @ 136 NONAME ABSENT ; class Java::Manager::Registry::MJavaAttribute const * Java::Manager::Registry::CJavaAttributes::Attribute(class TDesC16 const &) const
+	?AttributeL@CJavaRegistryEntry@Java@@QBEPBVMJavaAttribute@Registry@Manager@2@ABVTDesC16@@@Z @ 137 NONAME ABSENT ; class Java::Manager::Registry::MJavaAttribute const * Java::CJavaRegistryEntry::AttributeL(class TDesC16 const &) const
+	?AttributeL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@UAEPBVMJavaAttribute@234@ABVTDesC16@@@Z @ 138 NONAME ABSENT ; class Java::Manager::Registry::MJavaAttribute const * Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::AttributeL(class TDesC16 const &) const
+	?AttributeL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@UAEPBVMJavaAttribute@234@ABVTDesC16@@@Z @ 139 NONAME ABSENT ; class Java::Manager::Registry::MJavaAttribute const * Java::Manager::Registry::CWriteableJavaRegistryEntry::AttributeL(class TDesC16 const &) const
+	?AttributeL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UAEPBVMJavaAttribute@234@ABVTDesC16@@@Z @ 140 NONAME ABSENT ; class Java::Manager::Registry::MJavaAttribute const * Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::AttributeL(class TDesC16 const &) const
+	?Attributes@CJavaAttributes@Registry@Manager@Java@@QBEABV?$RPointerArray@VMJavaAttribute@Registry@Manager@Java@@@@XZ @ 141 NONAME ABSENT ; class RPointerArray<class Java::Manager::Registry::MJavaAttribute> const & Java::Manager::Registry::CJavaAttributes::Attributes(void) const
+	?AttributesL@CJavaRegistryEntry@Java@@QBEABV?$RPointerArray@VMJavaAttribute@Registry@Manager@Java@@@@XZ @ 142 NONAME ABSENT ; class RPointerArray<class Java::Manager::Registry::MJavaAttribute> const & Java::CJavaRegistryEntry::AttributesL(void) const
+	?AttributesL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@UAEABV?$RPointerArray@VMJavaAttribute@Registry@Manager@Java@@@@XZ @ 143 NONAME ABSENT ; class RPointerArray<class Java::Manager::Registry::MJavaAttribute> const & Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::AttributesL(void) const
+	?AttributesL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@UAEABV?$RPointerArray@VMJavaAttribute@Registry@Manager@Java@@@@XZ @ 144 NONAME ABSENT ; class RPointerArray<class Java::Manager::Registry::MJavaAttribute> const & Java::Manager::Registry::CWriteableJavaRegistryEntry::AttributesL(void) const
+	?AttributesL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UAEABV?$RPointerArray@VMJavaAttribute@Registry@Manager@Java@@@@XZ @ 145 NONAME ABSENT ; class RPointerArray<class Java::Manager::Registry::MJavaAttribute> const & Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::AttributesL(void) const
+	?Count@CJavaAttributes@Registry@Manager@Java@@QBEHXZ @ 146 NONAME ABSENT ; int Java::Manager::Registry::CJavaAttributes::Count(void) const
+	?DeleteAttributes@CJavaAttributes@Registry@Manager@Java@@QAEXXZ @ 147 NONAME ABSENT ; void Java::Manager::Registry::CJavaAttributes::DeleteAttributes(void)
+	?NewL@CJavaAttribute@Registry@Manager@Java@@SAPAV1234@ABVTDesC16@@0H@Z @ 148 NONAME ABSENT ; class Java::Manager::Registry::CJavaAttribute * Java::Manager::Registry::CJavaAttribute::NewL(class TDesC16 const &, class TDesC16 const &, int)
+	?NewL@CJavaAttributes@Registry@Manager@Java@@SAPAV1234@PAVTDesC8@@@Z @ 149 NONAME ABSENT ; class Java::Manager::Registry::CJavaAttributes * Java::Manager::Registry::CJavaAttributes::NewL(class TDesC8 *)
+	?NewL@CJavaAttributes@Registry@Manager@Java@@SAPAV1234@XZ @ 150 NONAME ABSENT ; class Java::Manager::Registry::CJavaAttributes * Java::Manager::Registry::CJavaAttributes::NewL(void)
+	?NewLC@CJavaAttribute@Registry@Manager@Java@@SAPAV1234@ABVTDesC16@@0H@Z @ 151 NONAME ABSENT ; class Java::Manager::Registry::CJavaAttribute * Java::Manager::Registry::CJavaAttribute::NewLC(class TDesC16 const &, class TDesC16 const &, int)
+	?NewLC@CJavaAttributes@Registry@Manager@Java@@SAPAV1234@PAVTDesC8@@@Z @ 152 NONAME ABSENT ; class Java::Manager::Registry::CJavaAttributes * Java::Manager::Registry::CJavaAttributes::NewLC(class TDesC8 *)
+	?NewLC@CJavaAttributes@Registry@Manager@Java@@SAPAV1234@XZ @ 153 NONAME ABSENT ; class Java::Manager::Registry::CJavaAttributes * Java::Manager::Registry::CJavaAttributes::NewLC(void)
+	?SerializeAttributesL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@UAEXXZ @ 154 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryEntry::SerializeAttributesL(void)
+	?SerializeAttributesL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UAEXXZ @ 155 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SerializeAttributesL(void)
+	?SerializedAttributesL@CJavaAttributes@Registry@Manager@Java@@QBEPAVHBufC8@@XZ @ 156 NONAME ABSENT ; class HBufC8 * Java::Manager::Registry::CJavaAttributes::SerializedAttributesL(void) const
+	?SetAttributeL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@QAEXABVTDesC16@@0H@Z @ 157 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::SetAttributeL(class TDesC16 const &, class TDesC16 const &, int)
+	?SetRegistryEntryL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXAAVCWriteableJavaRegistryEntry@234@@Z @ 158 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistry::SetRegistryEntryL(class Java::Manager::Registry::CWriteableJavaRegistryEntry &) const
+	?Size@CJavaAttributes@Registry@Manager@Java@@QBEHXZ @ 159 NONAME ABSENT ; int Java::Manager::Registry::CJavaAttributes::Size(void) const
+	??1CJavaAttribute@Java@@UAE@XZ @ 160 NONAME ABSENT ; Java::CJavaAttribute::~CJavaAttribute(void)
+	?AddAttributeL@CJavaAttributes@Registry@Manager@Java@@QAEXPAVMJavaAttribute@4@@Z @ 161 NONAME ABSENT ; void Java::Manager::Registry::CJavaAttributes::AddAttributeL(class Java::MJavaAttribute *)
+	?Attribute@CJavaAttributes@Registry@Manager@Java@@QBEPBVMJavaAttribute@4@ABVTDesC16@@@Z @ 162 NONAME ABSENT ; class Java::MJavaAttribute const * Java::Manager::Registry::CJavaAttributes::Attribute(class TDesC16 const &) const
+	?AttributeL@CJavaRegistryEntry@Java@@QBEPBVMJavaAttribute@2@ABVTDesC16@@@Z @ 163 NONAME ; class Java::MJavaAttribute const * Java::CJavaRegistryEntry::AttributeL(class TDesC16 const &) const
+	?AttributeL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@UBEPBVMJavaAttribute@4@ABVTDesC16@@@Z @ 164 NONAME ; class Java::MJavaAttribute const * Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::AttributeL(class TDesC16 const &) const
+	?AttributeL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@UBEPBVMJavaAttribute@4@ABVTDesC16@@@Z @ 165 NONAME ; class Java::MJavaAttribute const * Java::Manager::Registry::CWriteableJavaRegistryEntry::AttributeL(class TDesC16 const &) const
+	?AttributeL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UBEPBVMJavaAttribute@4@ABVTDesC16@@@Z @ 166 NONAME ; class Java::MJavaAttribute const * Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::AttributeL(class TDesC16 const &) const
+	?Attributes@CJavaAttributes@Registry@Manager@Java@@QBEABV?$RPointerArray@VMJavaAttribute@Java@@@@XZ @ 167 NONAME ABSENT ; class RPointerArray<class Java::MJavaAttribute> const & Java::Manager::Registry::CJavaAttributes::Attributes(void) const
+	?AttributesL@CJavaRegistryEntry@Java@@QBEABV?$RPointerArray@VMJavaAttribute@Java@@@@XZ @ 168 NONAME ; class RPointerArray<class Java::MJavaAttribute> const & Java::CJavaRegistryEntry::AttributesL(void) const
+	?AttributesL@CWriteableJavaRegistryApplicationEntry@Registry@Manager@Java@@UBEABV?$RPointerArray@VMJavaAttribute@Java@@@@XZ @ 169 NONAME ; class RPointerArray<class Java::MJavaAttribute> const & Java::Manager::Registry::CWriteableJavaRegistryApplicationEntry::AttributesL(void) const
+	?AttributesL@CWriteableJavaRegistryEntry@Registry@Manager@Java@@UBEABV?$RPointerArray@VMJavaAttribute@Java@@@@XZ @ 170 NONAME ; class RPointerArray<class Java::MJavaAttribute> const & Java::Manager::Registry::CWriteableJavaRegistryEntry::AttributesL(void) const
+	?AttributesL@CWriteableJavaRegistryPackageEntry@Registry@Manager@Java@@UBEABV?$RPointerArray@VMJavaAttribute@Java@@@@XZ @ 171 NONAME ; class RPointerArray<class Java::MJavaAttribute> const & Java::Manager::Registry::CWriteableJavaRegistryPackageEntry::AttributesL(void) const
+	?NewL@CJavaAttribute@Java@@SAPAV12@ABVTDesC16@@0H@Z @ 172 NONAME ABSENT ; class Java::CJavaAttribute * Java::CJavaAttribute::NewL(class TDesC16 const &, class TDesC16 const &, int)
+	?NewLC@CJavaAttribute@Java@@SAPAV12@ABVTDesC16@@0H@Z @ 173 NONAME ABSENT ; class Java::CJavaAttribute * Java::CJavaAttribute::NewLC(class TDesC16 const &, class TDesC16 const &, int)
+	?GetRegistryEntryUidsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXABV?$RPointerArray@VCJavaProperty@Registry@Manager@Java@@@@AAV?$RArray@VTUid@@@@H@Z @ 174 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistry::GetRegistryEntryUidsL(class RPointerArray<class Java::Manager::Registry::CJavaProperty> const &, class RArray<class TUid> &, int) const
+	?GetRegistryEntryUidsL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXW4TJavaRegistryEntryType@4@AAV?$RArray@VTUid@@@@H@Z @ 175 NONAME ; void Java::Manager::Registry::CWriteableJavaRegistry::GetRegistryEntryUidsL(enum Java::TJavaRegistryEntryType, class RArray<class TUid> &, int) const
+	?RegistryEntryL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEPAVCWriteableJavaRegistryEntry@234@ABVTUid@@H@Z @ 176 NONAME ; class Java::Manager::Registry::CWriteableJavaRegistryEntry * Java::Manager::Registry::CWriteableJavaRegistry::RegistryEntryL(class TUid const &, int) const
+	?RemoveRegistryEntryL@CWriteableJavaRegistry@Registry@Manager@Java@@QBEXABVTUid@@HH@Z @ 177 NONAME ABSENT ; void Java::Manager::Registry::CWriteableJavaRegistry::RemoveRegistryEntryL(class TUid const &, int, int) const
+	?UsedUserDiskSpace@CJavaRegistryPackageEntry@Java@@QBE_JXZ @ 178 NONAME ; long long Java::CJavaRegistryPackageEntry::UsedUserDiskSpace(void) const
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/eabi/javaregistryclientu.def	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,209 @@
+EXPORTS
+	_ZN4Java13CJavaRegistry4NewLEv @ 1 NONAME
+	_ZN4Java13CJavaRegistry5NewLCEv @ 2 NONAME
+	_ZN4Java7Manager8Registry13CJavaProperty4NewLElRK7TDesC16 @ 3 NONAME
+	_ZN4Java7Manager8Registry13CJavaProperty5NewLCElRK7TDesC16 @ 4 NONAME
+	_ZN4Java7Manager8Registry13CJavaPropertyD0Ev @ 5 NONAME
+	_ZN4Java7Manager8Registry13CJavaPropertyD1Ev @ 6 NONAME
+	_ZN4Java7Manager8Registry13CJavaPropertyD2Ev @ 7 NONAME
+	_ZN4Java7Manager8Registry13CJavaPropertyeqERKS2_ @ 8 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter10StoreTIntLElRP7HBufC16 @ 9 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter11StoreTBoolLEiRP7HBufC16 @ 10 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter14GetTAppVersionERK7TDesC1611TAppVersion @ 11 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter15GetTAppVersionLERK7TDesC16 @ 12 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter17StoreTAppVersionLERK11TAppVersionRP7HBufC16 @ 13 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter21GetCertificateChainsLERK7TDesC16R13RPointerArrayI6HBufC8E @ 14 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter22GetUnicodeDescriptorsLERK7TDesC16R13RPointerArrayI7HBufC16E @ 15 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter23StoreCertificateChainsLERK13RPointerArrayI6HBufC8ERP7HBufC16 @ 16 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter24StoreUnicodeDescriptorsLERK13RPointerArrayI7HBufC16ERPS4_ @ 17 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter7GetTIntERK7TDesC16l @ 18 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter8GetTBoolERK7TDesC16i @ 19 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter8GetTIntLERK7TDesC16 @ 20 NONAME
+	_ZN4Java7Manager8Registry16JavaRegConverter9GetTBoolLERK7TDesC16 @ 21 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistry10ConstructLEii @ 22 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistry10ConstructLEx @ 23 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistry4NewLEi @ 24 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistry4NewLEx @ 25 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistry5NewLCEi @ 26 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistry5NewLCEx @ 27 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistryC1Ev @ 28 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistryC2Ev @ 29 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistryD0Ev @ 30 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistryD1Ev @ 31 NONAME
+	_ZN4Java7Manager8Registry22CWriteableJavaRegistryD2Ev @ 32 NONAME
+	_ZN4Java7Manager8Registry26CJavaRegistryBackupSupport4NewLEv @ 33 NONAME
+	_ZN4Java7Manager8Registry26CJavaRegistryBackupSupport5NewLCEv @ 34 NONAME
+	_ZN4Java7Manager8Registry26CJavaRegistryBackupSupportD0Ev @ 35 NONAME
+	_ZN4Java7Manager8Registry26CJavaRegistryBackupSupportD1Ev @ 36 NONAME
+	_ZN4Java7Manager8Registry26CJavaRegistryBackupSupportD2Ev @ 37 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry10ConstructLENS_22TJavaRegistryEntryTypeE @ 38 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry12SetPropertyLEPNS1_13CJavaPropertyE @ 39 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry12SetPropertyLElRK7TDesC16 @ 40 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry14DeletePropertyEi @ 41 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry19SetBooleanPropertyLEli @ 42 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry19SetIntegerPropertyLEll @ 43 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry20AddCertificateChainLERK6TDesC8 @ 44 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry22SetDescriptorPropertyLElRK7TDesC16 @ 45 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry8SetNameLERK7TDesC16 @ 46 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry8SetTypeLENS_22TJavaRegistryEntryTypeE @ 47 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry9SetDriveLERK12TDriveNumber @ 48 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntryC1ERK4TUid @ 49 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntryC2ERK4TUid @ 50 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntryD0Ev @ 51 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntryD1Ev @ 52 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntryD2Ev @ 53 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry10SetVendorLERK7TDesC16 @ 54 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry11SetVersionLERK11TAppVersion @ 55 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry12SetPropertyLEPNS1_13CJavaPropertyE @ 56 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry17AddEmbeddedEntryLERK4TUid @ 57 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry17SetInstallPluginLERK6TDesC8 @ 58 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry17SetUninstallableLEi @ 59 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry18SetDownloadPluginLERK6TDesC8 @ 60 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry20RemoveEmbeddedEntryLERK4TUid @ 61 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry4NewLERK4TUid @ 62 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry5NewLCERK4TUid @ 63 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry8SetSizeLEi @ 64 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryC1ERK4TUid @ 65 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryC2ERK4TUid @ 66 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryD0Ev @ 67 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryD1Ev @ 68 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryD2Ev @ 69 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry11SetVisibleLEi @ 70 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry12SetResidentLEi @ 71 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry13SetGroupNameLERK7TDesC16 @ 72 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry13SetStartableLEi @ 73 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry21SetInstallPackageUidLERK4TUid @ 74 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry4NewLERK4TUid @ 75 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry5NewLCERK4TUid @ 76 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryC1ERK4TUid @ 77 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryC2ERK4TUid @ 78 NONAME
+	_ZNK4Java13CJavaRegistry14RegistryEntryLERK4TUid @ 79 NONAME
+	_ZNK4Java13CJavaRegistry20RegistryEntryExistsLERK4TUid @ 80 NONAME
+	_ZNK4Java13CJavaRegistry21GetRegistryEntryUidsLENS_22TJavaRegistryEntryTypeER6RArrayI4TUidE @ 81 NONAME
+	_ZNK4Java13CJavaRegistry21GetRegistryEntryUidsLER6RArrayI4TUidE @ 82 NONAME
+	_ZNK4Java18CJavaRegistryEntry16CertificateChainEi @ 83 NONAME
+	_ZNK4Java18CJavaRegistryEntry25NumberOfCertificateChainsEv @ 84 NONAME
+	_ZNK4Java18CJavaRegistryEntry3UidEv @ 85 NONAME
+	_ZNK4Java18CJavaRegistryEntry4NameEv @ 86 NONAME
+	_ZNK4Java18CJavaRegistryEntry4TypeEv @ 87 NONAME
+	_ZNK4Java18CJavaRegistryEntry5DriveEv @ 88 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry15IsUninstallableEv @ 89 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry18GetEmbeddedEntriesER6RArrayI4TUidE @ 90 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry19EmbeddedEntryByUidLERK4TUid @ 91 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry22EmbeddedEntryByNumberLEi @ 92 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry23NumberOfEmbeddedEntriesEv @ 93 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry6VendorEv @ 94 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry7VersionEv @ 95 NONAME
+	_ZNK4Java29CJavaRegistryApplicationEntry10IsResidentEv @ 96 NONAME
+	_ZNK4Java29CJavaRegistryApplicationEntry11IsStartableEv @ 97 NONAME
+	_ZNK4Java29CJavaRegistryApplicationEntry13PackageEntryLEv @ 98 NONAME
+	_ZNK4Java29CJavaRegistryApplicationEntry9GroupNameEv @ 99 NONAME
+	_ZNK4Java29CJavaRegistryApplicationEntry9IsVisibleEv @ 100 NONAME
+	_ZNK4Java7Manager8Registry13CJavaProperty2IdEv @ 101 NONAME
+	_ZNK4Java7Manager8Registry13CJavaProperty5ValueEv @ 102 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry13GenerateUidsLER6RArrayI4TUidEi @ 103 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry14RegistryEntryLERK4TUid @ 104 NONAME ABSENT
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry17SetRegistryEntryLERKNS1_27CWriteableJavaRegistryEntryE @ 105 NONAME ABSENT
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry20RegistryEntryExistsLERK4TUid @ 106 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry20RemoveRegistryEntryLERK4TUidi @ 107 NONAME ABSENT
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry21GetRegistryEntryUidsLENS_22TJavaRegistryEntryTypeER6RArrayI4TUidE @ 108 NONAME ABSENT
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry21GetRegistryEntryUidsLER6RArrayI4TUidE @ 109 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry21GetRegistryEntryUidsLERK13RPointerArrayINS1_13CJavaPropertyEER6RArrayI4TUidE @ 110 NONAME ABSENT
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry25DecideEntryTypeAndCreateLERK4TUidPNS1_18CJavaPropertyArrayE @ 111 NONAME
+	_ZNK4Java7Manager8Registry26CJavaRegistryBackupSupport14ChangeBURStateERKNS1_12TBackupStateE @ 112 NONAME
+	_ZNK4Java7Manager8Registry26CJavaRegistryBackupSupport21EntriesExistForDriveLERK12TDriveNumber @ 113 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry15BooleanPropertyEli @ 114 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry15IntegerPropertyEll @ 115 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry16CertificateChainEi @ 116 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry16GetPropertyIndexEl @ 117 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry25NumberOfCertificateChainsEv @ 118 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry3UidEv @ 119 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry4NameEv @ 120 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry4TypeEv @ 121 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry5DriveEv @ 122 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry8PropertyEl @ 123 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry13InstallPluginEv @ 124 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry14DownloadPluginEv @ 125 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry15IsUninstallableEv @ 126 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry18GetEmbeddedEntriesER6RArrayI4TUidE @ 127 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry19EmbeddedEntryByUidLERK4TUid @ 128 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry22EmbeddedEntryByNumberLEi @ 129 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry23NumberOfEmbeddedEntriesEv @ 130 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry4SizeEv @ 131 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry6VendorEv @ 132 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry7VersionEv @ 133 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry10IsResidentEv @ 134 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry11IsStartableEv @ 135 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry13PackageEntryLEv @ 136 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry17InstallPackageUidEv @ 137 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry9GroupNameEv @ 138 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry9IsVisibleEv @ 139 NONAME
+	_ZTIN4Java13CJavaRegistryE @ 140 NONAME ; #<TI>#
+	_ZTIN4Java18CJavaRegistryEntryE @ 141 NONAME ; #<TI>#
+	_ZTIN4Java7Manager8Registry13CJavaPropertyE @ 142 NONAME ; #<TI>#
+	_ZTIN4Java7Manager8Registry18CJavaPropertyArrayE @ 143 NONAME ; #<TI>#
+	_ZTIN4Java7Manager8Registry22CWriteableJavaRegistryE @ 144 NONAME ; #<TI>#
+	_ZTIN4Java7Manager8Registry26CJavaRegistryBackupSupportE @ 145 NONAME ; #<TI>#
+	_ZTIN4Java7Manager8Registry27CWriteableJavaRegistryEntryE @ 146 NONAME ; #<TI>#
+	_ZTIN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryE @ 147 NONAME ; #<TI>#
+	_ZTVN4Java13CJavaRegistryE @ 148 NONAME ; #<VT>#
+	_ZTVN4Java18CJavaRegistryEntryE @ 149 NONAME ; #<VT>#
+	_ZTVN4Java7Manager8Registry13CJavaPropertyE @ 150 NONAME ; #<VT>#
+	_ZTVN4Java7Manager8Registry18CJavaPropertyArrayE @ 151 NONAME ; #<VT>#
+	_ZTVN4Java7Manager8Registry22CWriteableJavaRegistryE @ 152 NONAME ; #<VT>#
+	_ZTVN4Java7Manager8Registry26CJavaRegistryBackupSupportE @ 153 NONAME ; #<VT>#
+	_ZTVN4Java7Manager8Registry27CWriteableJavaRegistryEntryE @ 154 NONAME ; #<VT>#
+	_ZTVN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntryE @ 155 NONAME ; #<VT>#
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry12SetPropertyLEPNS1_13CJavaPropertyE @ 156 NONAME
+	_ZTIN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryE @ 157 NONAME ; #<TI>#
+	_ZTVN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryE @ 158 NONAME ; #<VT>#
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry16SetDrmContentIdLERK7TDesC16 @ 159 NONAME
+	_ZNK4Java18CJavaRegistryEntry12DrmContentIdEv @ 160 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry12DrmContentIdEv @ 161 NONAME
+	_ZN4Java7Manager8Registry14CJavaAttribute4NewLERK7TDesC16S5_i @ 162 NONAME ABSENT
+	_ZN4Java7Manager8Registry14CJavaAttribute5NewLCERK7TDesC16S5_i @ 163 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes13AddAttributeLEPNS1_14MJavaAttributeE @ 164 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes13AddAttributeLERK7TDesC16S5_i @ 165 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes16DeleteAttributesEv @ 166 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes4NewLEP6TDesC8 @ 167 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes4NewLEv @ 168 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes5NewLCEP6TDesC8 @ 169 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes5NewLCEv @ 170 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributesD0Ev @ 171 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributesD1Ev @ 172 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributesD2Ev @ 173 NONAME ABSENT
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry10AttributeLERK7TDesC16 @ 174 NONAME
+	_ZNK4Java7Manager8Registry27CWriteableJavaRegistryEntry11AttributesLEv @ 175 NONAME
+	_ZN4Java7Manager8Registry27CWriteableJavaRegistryEntry20SerializeAttributesLEv @ 176 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry10AttributeLERK7TDesC16 @ 177 NONAME
+	_ZNK4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry11AttributesLEv @ 178 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry13SetAttributeLERK7TDesC16S5_i @ 179 NONAME
+	_ZN4Java7Manager8Registry34CWriteableJavaRegistryPackageEntry20SerializeAttributesLEv @ 180 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry10AttributeLERK7TDesC16 @ 181 NONAME
+	_ZNK4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntry11AttributesLEv @ 182 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryD0Ev @ 183 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryD1Ev @ 184 NONAME
+	_ZN4Java7Manager8Registry38CWriteableJavaRegistryApplicationEntryD2Ev @ 185 NONAME
+	_ZNK4Java18CJavaRegistryEntry10AttributeLERK7TDesC16 @ 186 NONAME
+	_ZNK4Java18CJavaRegistryEntry11AttributesLEv @ 187 NONAME
+	_ZNK4Java7Manager8Registry15CJavaAttributes10AttributesEv @ 188 NONAME ABSENT
+	_ZNK4Java7Manager8Registry15CJavaAttributes21SerializedAttributesLEv @ 189 NONAME ABSENT
+	_ZNK4Java7Manager8Registry15CJavaAttributes4SizeEv @ 190 NONAME ABSENT
+	_ZNK4Java7Manager8Registry15CJavaAttributes5CountEv @ 191 NONAME ABSENT
+	_ZNK4Java7Manager8Registry15CJavaAttributes9AttributeERK7TDesC16 @ 192 NONAME ABSENT
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry17SetRegistryEntryLERNS1_27CWriteableJavaRegistryEntryE @ 193 NONAME
+	_ZTIN4Java7Manager8Registry14CJavaAttributeE @ 194 NONAME ABSENT ; #<TI>#
+	_ZTIN4Java7Manager8Registry15CJavaAttributesE @ 195 NONAME ABSENT ; #<TI>#
+	_ZTVN4Java7Manager8Registry14CJavaAttributeE @ 196 NONAME ABSENT ; #<VT>#
+	_ZTVN4Java7Manager8Registry15CJavaAttributesE @ 197 NONAME ABSENT ; #<VT>#
+	_ZN4Java14CJavaAttribute4NewLERK7TDesC16S3_i @ 198 NONAME ABSENT
+	_ZN4Java14CJavaAttribute5NewLCERK7TDesC16S3_i @ 199 NONAME ABSENT
+	_ZN4Java7Manager8Registry15CJavaAttributes13AddAttributeLEPNS_14MJavaAttributeE @ 200 NONAME ABSENT
+	_ZTIN4Java14CJavaAttributeE @ 201 NONAME ABSENT ; #<TI>#
+	_ZTVN4Java14CJavaAttributeE @ 202 NONAME ABSENT ; #<VT>#
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry14RegistryEntryLERK4TUidi @ 203 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry20RemoveRegistryEntryLERK4TUidii @ 204 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry21GetRegistryEntryUidsLENS_22TJavaRegistryEntryTypeER6RArrayI4TUidEi @ 205 NONAME
+	_ZNK4Java7Manager8Registry22CWriteableJavaRegistry21GetRegistryEntryUidsLERK13RPointerArrayINS1_13CJavaPropertyEER6RArrayI4TUidEi @ 206 NONAME
+	_ZNK4Java25CJavaRegistryPackageEntry17UsedUserDiskSpaceEv @ 207 NONAME
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/javaattributes.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,208 @@
+/*
+* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  CJavaAttributes header file
+*
+*/
+
+
+#ifndef JAVAATTRIBUTES_H
+#define JAVAATTRIBUTES_H
+
+
+#include <e32base.h>
+#include <s32strm.h>
+
+#include "javaattribute.h"
+
+using namespace Java;
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+class CJavaAttributes: public CBase
+{
+public:
+    /**
+     * Construct a new attributes array object
+     * @since S60 v5.0
+     *
+     *
+     * @return a new CJavaAttribute object
+     */
+    IMPORT_C static CJavaAttributes* NewL();
+
+    /**
+     * Construct a new attributes array object and fill array form serialized
+     * buffer
+     * @since S60 v5.0
+     *
+     * @param aBuffer with serialized CJavaAttributes object
+     * @return a new CJavaAttribute object
+     */
+    IMPORT_C static CJavaAttributes* NewL(TDesC8* aBuffer);
+
+    /**
+     * Construct a new attributes array object and leaves the object on
+     * the cleanupstack
+     * @since S60 v5.0
+     *
+     *
+     * @return a new CJavaAttribute object
+     */
+    IMPORT_C static CJavaAttributes* NewLC();
+
+    /**
+     * Construct a new attributes array object, fill array form serialized
+     * buffer and leaves the object on the cleanupstack
+     * @since S60 v5.0
+     *
+     *
+     * @param aBuffer with serialized CJavaAttributes object
+     * @return a new CJavaAttribute object
+     */
+    IMPORT_C static CJavaAttributes* NewLC(TDesC8* aBuffer);
+
+    /**
+     * Destructor deletes all attributes stored in iAttributes
+     * @since S60 v5.0
+     *
+     */
+    virtual ~CJavaAttributes();
+
+    /**
+     * Returns number of stored attributes
+     * @since S60 v5.0
+     *
+     *
+     * @return number of attributes in array
+     */
+    IMPORT_C TInt Count() const;
+
+    /**
+     * Returns reference to object with requested Attribute.
+     * @since S60 v5.0
+     *
+     *
+     * @param aName: name of attribute
+     * @return MJavaAttribute&; Ownership handed over
+     */
+    IMPORT_C const MJavaAttribute* Attribute(const TDesC& aName) const;
+
+    /**
+     * Returns copy of attributes storage
+     * @since S60 v5.0
+     *
+     *
+     * @return RPointerArray<MJavaAttributes>
+     */
+    IMPORT_C  const RPointerArray< MJavaAttribute >& Attributes() const;
+
+    /**
+     * Add attribute to array.
+     * @since S60 v5.0
+     *
+     *
+     * @param MJavaAttribute*, Ownership gotten.
+     * @return position of added attribute in array
+     */
+    IMPORT_C void AddAttributeL(MJavaAttribute* aAttribute);
+
+    /**
+     * Store attribute to MJavaAttribute and add to array.
+     * @since S60 v5.0
+     *
+     *
+     * @param aName
+     * @param aValue
+     * @param aTrusted
+     * @return position of added attribute in array
+     */
+    IMPORT_C void AddAttributeL(const TDesC& aName, const TDesC& aValue, TBool aTrusted);
+
+    /**
+    * Delete all attributes
+    *
+    * @since S60 v5.0
+    */
+    IMPORT_C void DeleteAttributes();
+
+    /**
+    * Returns the size needed for serialization.
+    * @since S60 v5.0
+    *
+    * @return size needed for serialization
+    * @see SerializedPropertiesL
+    */
+    IMPORT_C TInt Size() const;
+
+    /**
+     * Returns serialized CJavaAttributes object
+     * @since S60 v5.0
+     *
+     *
+     * @param aName
+     * @param aValue
+     * @param aTrusted
+     * @return HBufC8* with serialized object, ownership handed over.
+     */
+    IMPORT_C HBufC8* SerializedAttributesL() const;
+
+public:
+    /**
+    * Externalizes the attribete objects. It is used by "<<" operator.
+     * @since S60 v5.0
+     *
+    *
+    * @param aStream externalization happens in this stream
+    */
+    virtual void ExternalizeL(RWriteStream& aStream) const;
+
+    /**
+    * Internalizes the attribute objects. It is used by ">>" operator.
+    * @since S60 v5.0
+    *
+    * @param aStream internalization happens from this stream
+    */
+    virtual void InternalizeL(RReadStream& aStream);
+
+private:
+    /**
+     * ConstructL does deserialize attributes, if a buffer exists
+     * @since S60 v5.0
+     *
+     *
+     * @param aBuffer with serialized CJavaAttributes object
+     */
+    void ConstructL(TDesC8* aBuffer);
+
+private:
+    /**
+     * Array of atributes objects
+     * @since S60 v5.0
+     *
+     */
+    RPointerArray< MJavaAttribute > iAttributes;
+
+};
+} // namespace Registry
+} // namespace Manager
+} // namespace Java
+
+#endif // JAVAATTRIBUTES_H
+
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/javaregclient.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,281 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregclient definition
+*
+*/
+
+
+#ifndef JAVAREGCLIENT_H
+#define JAVAREGCLIENT_H
+
+#include "javaregdef.h"
+#include "javaregburstates.h"
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+// FORWARD DECLARATIONS
+class CJavaPropertyArray;
+
+/**
+ * RJavaRegSession class makes it possible to access java registry server
+ * services like adding, getting and removing entries.
+ * The class implements the client side of java registry
+ * client-server communication.
+ *
+ * @since S60 v3.2
+ */
+class RJavaRegSession : public RSessionBase
+{
+
+public:
+
+    /**
+     * Constructor
+     *
+     * @since S60 v3.2
+     */
+    RJavaRegSession();
+
+    /**
+     * Connects to registry server and sets integrity service's
+     * transaction id.
+     *
+     * @since S60 v3.2
+     * @param aTransactionId transaction id of integrity service
+     * @param aLegacy legacy flag, must be set to true if
+     *          legacy api wants to use server services
+     * @return KErrNone if connection was successful or an error code
+     */
+    TInt Connect(TInt64 aTransactionId, TBool aLegacy = EFalse);
+
+    /**
+     * Connects to registry server and sets if integrity service
+     * is required or not to be created in registry.
+     *
+     * @since S60 v3.2
+     * @param aUseIntegrity true if registry should create an
+     *          interior integrity session
+     * @param aLegacy if true legacy api uses server services
+     * @return KErrNone if connection was successful or an error code
+     */
+    TInt Connect(TBool aUseIntegrity, TBool aLegacy = EFalse);
+
+    /**
+     * Checks if an entry with specified uid exist or not
+     * in the registry.
+     *
+     * @since S60 v3.2
+     * @param aUid uid of the entry to be checked if exists
+     * @return true if the entry exists and false if not
+     */
+    TBool EntryExistsL(TUid aUid) const;
+
+    /**
+     * Gets uids of entries stored in registry.
+     *
+     * @since S60 v3.2
+     * @param[out] aUids reference to an array where stored uids
+     *          are returned
+     */
+    void GetEntryUidsL(RArray<TUid>& aUids) const;
+
+    /**
+     * Gets uids of entries stored in registry and belonging to
+     * the given drive.
+     *
+     * @since S60 v3.2
+     * @param[out] aUids reference to an array where stored uids
+     *          are returned
+     * @param aDrive drive whose entry uids must be returned
+     */
+    void GetEntryUidsL(RArray<TUid>& aUids, TInt aDrive) const;
+
+    /**
+     * Gets the entry belonging to the given uid.
+     * The entry is represented as a set of properties.
+     * If no entry found for the given uid aProperties is null else
+     * it is allocated a new CJavaPropertyArray object containing the read
+     * entry.
+     *
+     * @since S60 v3.2
+     * @param aUid the uid of entry we are interested in
+     * @param[out] aProperties entry is read in this parameter
+     * @param aAllEntries decision if we want to read entry from not
+     *                    presented MMC
+     */
+    void GetEntryL(TUid aUid,
+                   CJavaPropertyArray*& aProperties,
+                   TBool aAllEntries = EFalse) const;
+
+    /**
+     * Adds a new entry or updates an existent one with the given uid.
+     * The entry is represented as a set of properties.
+     *
+     * @since S60 v3.2
+     * @param aUid the uid of the entry to be added or updated
+     * @param aProperties the entry to be added or updated
+     * @param aDrive the drive to which the set entry belongs
+     */
+    void SetEntryL(TUid aUid,
+                   const CJavaPropertyArray& aProperties,
+                   TInt aDrive) const;
+
+    /**
+     * Returns a set of uids whose entries contains the properties (and
+     * has the same values) given in the aProperties parameter.
+     *
+     * @since S60 v3.2
+     * @param aProperties the set of properties which must exists
+     *          (and must have the same values) in the looked entries
+     * @param[out] aUids uids of the found entries are returned
+     *          in this parameter
+     * @param aAllEntries means, that method give all entries including
+     *          entries, which regards with midlets stored in not presented
+     *          media. EFalse means entries with regarding not presented
+     *          media will not return.
+     */
+    void FindEntriesL(const CJavaPropertyArray& aProperties,
+                      RArray<TUid>& aUids, TBool aAllEntries = EFalse) const;
+
+    /**
+     * Removes the entry belonging to the given uid.
+     *
+     * @since S60 v3.2
+     * @param aUid uid of entry which must be deleted
+     * @param aAllEntries means, that method give all entries including
+     *          entries, which regards with midlets stored in not presented
+     *          media. EFalse means entries with regarding not presented
+     *          media will not return.
+     */
+    void RemoveEntryL(TUid aUid, TBool aAllEntries = EFalse) const;
+
+    /**
+     * Allocates a range of new uids.
+     *
+     * @since S60 v3.2
+     * @param[out] aUids array reference where the allocated uids
+     *          will be returned
+     * @param aUidCount number of uids to be allocated
+     */
+    void AllocateUidsL(RArray<TUid>& aUids,
+                       TInt aUidCount = 1) const;
+
+    /**
+     * Sets the backup state of registry.
+     * If the registry is in backing up or restoring state
+     * the client requests will not be executed.
+     *
+     * @since S60 v3.2
+     * @param aBackupState the requested backup state
+     */
+    void SetBackupStateL(TBackupState aBackupState) const;
+
+private:
+
+    /**
+     * Initializes server with integrity service transaction id
+     * and the legacy api flag.
+     *
+     * @since S60 v3.2
+     * @param aTransactionId integrity service transaction id
+     * @param aLegacy legacy flag, must be set to true if
+     *          legacy api wants to use server services
+     * @return KErrNone if no error or the appropriate error code
+     */
+    TInt InitializeServer(TInt64 aTransactionId, TBool aLegacy) const;
+
+    /**
+     * Initializes server with use integrity session flag,
+     * and the legacy api flag.
+     *
+     * @since S60 v3.2
+     * @param aUseIntegrity true if registry should create an interior
+     *          integrity session
+     * @param aLegacy legacy flag, must be set to true if
+     *          legacy api wants to use server services
+     * @return KErrNone if no error or the appropriate error code
+     */
+    TInt InitializeServer(TBool aUseIntegrity, TBool aLegacy) const;
+
+    /**
+     * Sends to server a message containing the function id and the
+     * arguments given in TIpcArgs argument.
+     * The first and second arguments of TIpcArgs are reserved.
+     *
+     * @since S60 v3.2
+     * @param aFunction funtion id
+     * @param[out] aBuffer the received buffer is returned
+     *          in this parameter
+     * @param aArgs arguments to be sent for server, first and second
+     *          argument must be left empty
+     */
+    void GetBuffer8FromServerL(TInt aFunction,
+                               HBufC8*& aBuffer,
+                               TIpcArgs& aArgs) const;
+
+    /**
+     * Sends to server a message containing the function id and the
+     * arguments given in TIpcArgs argument.
+     * The first and second arguments of TIpcArgs are reserved.
+     *
+     * @since S60 v3.2
+     * @param aFunction funtion id
+     * @param[out] aBuffer the received buffer is returned
+     *          in this parameter
+     * @param aArgs arguments to be sent for server, first and second
+     *          argument must be left empty
+     */
+    void GetBuffer16FromServerL(TInt aFunction,
+                                HBufC16*& aBuffer,
+                                TIpcArgs& aArgs) const;
+
+    /**
+     * Sends to server a message containing the function id and the
+     * arguments given in TIpcArgs argument.
+     * The first and second arguments of TIpcArgs are reserved.
+     *
+     * @since S60 v3.2
+     * @param aFunction funtion id
+     * @param[out] aBuffer the received buffer is returned
+     *          in this parameter
+     * @param aArgs arguments to be sent for server, first and second
+     *          argument must be left empty
+     * @param a8BitDesc if true a 8 bit descriptor must be allocated
+     *          in other case a 16 bit descriptor must be allocated
+     */
+    void GetBufferFromServerL(TInt aFunction,
+                              TAny** aBuffer,
+                              TIpcArgs& aArgs,
+                              TBool a8BitDesc) const;
+    /**
+     * Connects to server.
+     *
+     * @since S60 v3.2
+     * @return KErrNone if connection was successful or an error code
+     */
+    TInt Connect();
+
+private:
+
+};
+
+}//namespace Registry
+}//namespace Manager
+}//namespace Java
+
+#endif // JAVAREGCLIENT_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/javaregconverter.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,238 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregconverter definition
+*
+*/
+
+
+#ifndef JAVAREGCONVERTER_H
+#define JAVAREGCONVERTER_H
+
+// INCLUDES
+#include <e32std.h>
+
+// FORWARD DECLARATION
+class TAppVersion;
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+// FORWARD DECLARATION
+class CJavaProperty;
+
+// CLASS DECLARATION
+/**
+ * This class has only static methods, that help to store some types,
+ * and structures in descriptors, and to retrieve them. It is mainly used
+ * by the javaregistry internal API.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class JavaRegConverter
+{
+public:
+
+    /**
+     * JavaRegConverter::GetTAppVersion method converts the descriptor
+     * parameter to a TAppVersion.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing a TAppVersion.
+     * @param aDefault The value to be returned if aValue does'nt contain
+     *                 valid data.
+     * @return A TAppVersion stored in the descriptor parameter.
+     */
+    IMPORT_C static TAppVersion GetTAppVersion(
+        const TDesC& aValue,
+        TAppVersion aDefault);
+
+    /**
+     * JavaRegConverter::GetTAppVersionL method converts the descriptor
+     * parameter to a TAppVersion.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing a TAppVersion.
+     * @return A TAppVersion stored in the descriptor parameter.
+     */
+    IMPORT_C static TAppVersion GetTAppVersionL(const TDesC& aValue);
+
+    /**
+     * JavaRegConverter::StoreTAppVersionL method stores the TAppVersion
+     * parameter into the descriptor paramameter, that is instantiated by
+     * this method.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue The TAppVersion value to be stored.
+     * @param aDes [out] Descriptor parameter, storing, and the returning
+     * the TAppVersion value.
+     */
+    IMPORT_C static void StoreTAppVersionL(
+        const TAppVersion& aValue,
+        HBufC*& aDes);
+
+
+    /**
+     * JavaRegConverter::GetTInt method converts the descriptor
+     * parameter to a TInt32.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing a TInt32.
+     * @param aDefault The value to be returned if aValue does'nt contain
+     *                 valid data.
+     * @return A TInt32 stored in the descriptor parameter.
+     */
+    IMPORT_C static TInt32 GetTInt(const TDesC& aValue, TInt32 aDefault);
+
+    /**
+     * JavaRegConverter::GetTIntL method converts the descriptor
+     * parameter to a TInt32.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing a TInt32.
+     * @return A TInt32 stored in the descriptor parameter.
+     */
+    IMPORT_C static TInt32 GetTIntL(const TDesC& aValue);
+
+
+    /**
+     * JavaRegConverter::StoreTIntL method stores the TInt32
+     * parameter into the descriptor paramameter, that is instantiated by
+     * this method.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue The TInt32 value to be stored.
+     * @param aDes [out] Descriptor parameter, storing, and the returning
+     * the TInt32 value.
+     */
+    IMPORT_C static void StoreTIntL(const TInt32 aValue, HBufC*& aDes);
+
+    /**
+     * JavaRegConverter::GetTBool method converts the descriptor
+     * parameter to a TBool.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing a TBool.
+     * @param aDefault The value to be returned if aValue does'nt contain
+     *                 valid data.
+     * @return A TBool stored in the descriptor parameter.
+     */
+    IMPORT_C static TBool GetTBool(const TDesC& aValue, TBool aDefault);
+
+
+    /**
+     * JavaRegConverter::GetTBoolL method converts the descriptor
+     * parameter to a TBool.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing a TBool.
+     * @return A TBool stored in the descriptor parameter.
+     */
+    IMPORT_C static TBool GetTBoolL(const TDesC& aValue);
+
+
+    /**
+     * JavaRegConverter::StoreTBoolL method stores the TBool
+     * parameter into the descriptor paramameter, that is instantiated by
+     * this method.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue The TBool value to be stored.
+     * @param aDes [out] Descriptor parameter, storing, and the returning
+     * the TBool value.
+     */
+    IMPORT_C static void StoreTBoolL(const TBool aValue, HBufC*& aDes);
+
+
+
+    /**
+     * JavaRegConverter::GetCertificateChainsL method converts the
+     * descriptor parameter to a RPointerArray<HBufC8> storing
+     * certificate chains.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing certificate chains.
+     * @param aCertChains [out] The method converts the certificate chains
+     *                          into this RPointerArray<HBufC>.
+     */
+    IMPORT_C static void GetCertificateChainsL(
+        const TDesC& aValue,
+        RPointerArray<HBufC8>& aCertChains);
+
+
+    /**
+     * JavaRegConverter::StoreCertificateChainsL method stores the
+     * certificate chains ( given in the first parameter ),
+     * into the descriptor paramameter, that is instantiated by
+     * this method.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue The certificate chains to be stored.
+     * @param aDes [out] Descriptor parameter, storing, and the returning
+     * the certificate chains.
+     */
+    IMPORT_C static void StoreCertificateChainsL(
+        const RPointerArray<HBufC8>& aValue,
+        HBufC*& aDes);
+
+
+    /**
+     * JavaRegConverter::GetUnicodeDescriptorsL method converts the
+     * descriptor parameter to a RPointerArray<HBufC> storing
+     * unicode descriptors.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing unicode descriptors.
+     * @param aCertChains [out] The method converts the unicode descriptors
+     *                          into this RPointerArray<HBufC>.
+     */
+    IMPORT_C static void JavaRegConverter::GetUnicodeDescriptorsL(
+        const TDesC& aValue,
+        RPointerArray<HBufC>& aDescriptors);
+    /**
+     * JavaRegConverter::StoreUnicodeDescriptorsL method stores the
+     * unicode descriptors ( given in the first parameter ),
+     * into the descriptor paramameter, that is instantiated by
+     * this method.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue The certificate chains to be stored.
+     * @param aDes [out] Descriptor parameter, storing, and the returning
+     * the certificate chains.
+     */
+    IMPORT_C static void JavaRegConverter::StoreUnicodeDescriptorsL(
+        const RPointerArray<HBufC>& aValue,
+        HBufC*& aDes);
+};
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+#endif // JAVAREGCONVERTER_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/javaregistrybackupsupport.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,141 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistrybackupsupport definition
+*
+*/
+
+
+#ifndef JAVAREGISTRYBACKUPSUPPORT_H
+#define JAVAREGISTRYBACKUPSUPPORT_H
+
+// INCLUDES
+#include <e32base.h>
+#include <f32file.h>
+#include "javaregburstates.h"
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class RJavaRegSession;
+
+// CLASS DECLARATION
+/**
+ * This class is used to indicate the registry the phases of backup and
+ * restore. Mainly used by the Java Backup component.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CJavaRegistryBackupSupport :
+        public CBase
+{
+public:
+
+    // constructors
+
+    /**
+     * CJavaRegistryBackupSupport::NewL method creates a
+     * CJavaRegistryBackupSupport object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @return A pointer to a CJavaRegistryBackupSupport object.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CJavaRegistryBackupSupport* NewL();
+
+    /**
+     * CJavaRegistryBackupSupport::NewLC method creates a
+     * CJavaRegistryBackupSupport object, and puts it on the
+     * CleanupStack.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @return A pointer to a CJavaRegistryBackupSupport object.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CJavaRegistryBackupSupport* NewLC();
+
+    // destructor
+
+    /**
+     * ~CJavaRegistryBackupSupport::~CJavaRegistryBackupSupport
+     * Destructor
+     */
+    IMPORT_C ~CJavaRegistryBackupSupport();
+
+    // general methods
+
+    /**
+     * CJavaRegistryBackupSupport::EntriesExistForDriveL
+     * Returns whether registry entries on the specified drive exist.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aDrive The entries are searched for this drive.
+     * @return ETrue if registry entries on the specified drive exist,
+     *         EFalse otherwise.
+     */
+    IMPORT_C TBool EntriesExistForDriveL
+    (const TDriveNumber& aDrive) const;
+
+    /**
+     * CJavaRegistryBackupSupport::ChangeBURState method changes the
+     * registry BackUp and Restore state, according to the given
+     * TBackupState type param.
+     *
+     * @since S60 v3.2
+     * @param aState The state to be changed.
+     * @return KErrNone if successful, otherwise one of the
+     *         system-wide error codes.
+     */
+    IMPORT_C TInt ChangeBURState(const TBackupState& aState) const;
+
+private:
+
+    // 2nd phase constructor
+    /**
+     * CJavaRegistryBackupSupport::ConstructL method
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     */
+    void ConstructL();
+
+private: // Data
+
+    /**
+     * CJavaRegistryBackupSupport::iJavaRegSession member, the client class
+     * to the JavaRegistry Server.
+     *
+     * @since S60 v3.2
+     */
+    Java::Manager::Registry::RJavaRegSession* iJavaRegSession;
+
+};
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+#endif // JAVAREGISTRYBACKUPSUPPORT_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/javaregistrypropertyids.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,96 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistrypropertyids definition
+*
+*/
+
+#include <e32base.h>
+
+#ifndef JAVAREGISTRYPROPERTYIDS_H
+#define JAVAREGISTRYPROPERTYIDS_H
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+/**
+ * Common Id's of properties processed by
+ * CWriteableJavaRegistryEntry class.
+ *
+ * @since S60 v3.2
+ */
+enum TEntryIDs
+{
+    EPropType = 0,
+    EPropName,
+    EPropCertificateChains,
+    EPropDrive,
+    EPropDrmContentId
+};
+
+/**
+ * General package specific Id's of properties processed by
+ * CWriteableJavaRegistryPackageEntry class.
+ *
+ * @since S60 v3.2
+ */
+enum TPackageEntryIDs
+{
+    EPropVersion = 100,
+    EPropVendor,
+    EPropUninstallable,
+    EPropApplicationUids,
+    EPropDownloadPlugin,
+    EPropInstallPlugin,
+    EPropSize,
+    EPropSerializedAttributes
+};
+
+/**
+ * Application specific Id's of properties processed by
+ * CWriteableJavaRegistryApplicationEntry class.
+ *
+ * @since S60 v3.2
+ */
+enum TApplicationEntryIDs
+{
+    EPropStartable = 200,
+    EPropVisible,
+    EPropResident,
+    EPropGroupName,
+    EPropInstallPackage
+};
+
+/*
+ * MIDP Registry ID ranges
+ */
+const TInt KMidletSuiteRangeStart = 300;
+const TInt KMidletRangeStart = 400;
+
+/*
+ * OSGi Registry ID ranges
+ */
+const TInt KDPRangeStart = 500;
+const TInt KOAMSuiteRangeStart = 600;
+const TInt KOAMRangeStart = 700;
+const TInt KERCPRangeStart = 800;
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+
+#endif // JAVAREGISTRYPROPERTYIDS_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,326 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistry definition
+*
+*/
+
+
+#ifndef WRITEABLEJAVAREGISTRY_H
+#define WRITEABLEJAVAREGISTRY_H
+
+// INCLUDES
+#include <e32base.h>
+#include "javaregistryentrytype.h"
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class CWriteableJavaRegistryEntry;
+class CJavaProperty;
+class CJavaPropertyArray;
+class RJavaRegSession;
+
+// CLASS DECLARATION
+/**
+ * This class provides the Internal API for JavaRegistry.
+ * It allows for trusted clients to retrieve and set properties of
+ * Java install packages, applications, services etc.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CWriteableJavaRegistry :
+        public CBase
+{
+public:
+
+    // constructors
+    /**
+     * CWriteableJavaRegistry::NewL method creates a
+     * CWriteableJavaRegistry object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUseIntegrity ETrue if Integrity Server must be used during
+     *                      the lifetime of this object, EFalse if it's
+     *                      not required.
+     * @return A pointer to a CWriteableJavaRegistry object. Caller takes
+     *         over the ownership of the object being transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistry* NewL(TBool aUseIntegrity);
+
+    /**
+     * CWriteableJavaRegistry::NewLC method creates a
+     * CWriteableJavaRegistry object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUseIntegrity ETrue if Integrity Server must be used during
+     *                      the lifetime of this object, EFalse if it's
+     *                      not required.
+     * @return A pointer to a CWriteableJavaRegistry object. Caller takes
+     *         over the ownership of the object being transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistry* NewLC(TBool aUseIntegrity);
+
+    /**
+     * CWriteableJavaRegistry::NewL method creates a
+     * CWriteableJavaRegistry object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aIntegritySessionId A transaction Id, identifying an
+     *                              integrity session, the registry
+     *                               has to connect to.
+     * @return A pointer to a CWriteableJavaRegistry object. Caller takes
+     *         over the ownership of the object being transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistry*
+    NewL(TInt64 aIntegritySessionId);
+
+    /**
+     * CWriteableJavaRegistry::NewLC method creates a
+     * CWriteableJavaRegistry object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aIntegritySessionId A transaction Id, identifying an
+     *                              integrity session, the registry
+     *                               has to connect to.
+     * @return A pointer to a CWriteableJavaRegistry object. Caller takes
+     *         over the ownership of the object being transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistry*
+    NewLC(TInt64 aIntegritySessionId);
+
+    // destructor
+    /**
+     * CWriteableJavaRegistry::~CWriteableJavaRegistry destructor
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C ~CWriteableJavaRegistry();
+
+    // general methods
+    /**
+     * CWriteableJavaRegistry::GenerateUidL method allocates some uids for
+     * registry entries, specified the count in aNumber param, and returns
+     * the uids in the aUids param.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUids [out] Return the generated Uids.
+     * @param aNumber The number of the Uids to be created.
+     */
+    IMPORT_C void GenerateUidsL(RArray<TUid>& aUids, TInt aNumber) const;
+
+
+    /**
+     * CWriteableJavaRegistry::RegistryEntryExistsL method returns whether
+     * registry entry with the specified Uid exists.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid to be checked.
+     * @return ETrue if the registry entry exists, EFalse otherwise.
+     */
+    IMPORT_C TBool RegistryEntryExistsL(const TUid& aUid) const;
+
+
+    /**
+     * CWriteableJavaRegistry::GetRegistryEntryUidsL method returns
+     * an array of Uids of the registry entries, that are installed to
+     * the phone, or to the mmc drive currently plugged in.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUids [out] Uids of the registry entries.
+     */
+    IMPORT_C void GetRegistryEntryUidsL(RArray<TUid>& aUids) const;
+
+
+    /**
+     * CWriteableJavaRegistry::GetRegistryEntryUidsL method returns
+     * an array of Uids of the registry entries, that are installed to
+     * the phone, or to the mmc drive currently plugged in.
+     * Entries are searched by the specified type.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aType Type of registry entries whose Uids are to be returned.
+     * @param aUids [out] Uids of the matching registry entries.
+     * @param aAllEntries means, that method give all entries including
+     *          entries, which regards with midlets stored in not presented
+     *          media. EFalse means entries with regarding not presented
+     *          media will not return.
+     */
+    IMPORT_C void GetRegistryEntryUidsL(TJavaRegistryEntryType aType,
+                                        RArray<TUid>& aUids,
+                                        TBool aAllEntries = EFalse) const;
+
+
+    /**
+     * CWriteableJavaRegistry::GetRegistryEntryUidsL method returns
+     * an array of Uids of the registry entries, that are installed to
+     * the phone, or to the mmc drive currently plugged in.
+     * Entries are searched to match the specified properties.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aProperties The properties, to the returned entries have to
+     *          match.
+     * @param aUids [out] Uids of the matching registry entries, .
+     * @param aAllEntries means, that method give all entries including
+     *          entries, which regards with midlets stored in not presented
+     *          media. EFalse means entries with regarding not presented
+     *          media will not return.
+     */
+    IMPORT_C void GetRegistryEntryUidsL(
+        const RPointerArray<CJavaProperty>& aProperties,
+        RArray<TUid>& aUids,
+        TBool aAllEntries = EFalse) const;
+
+
+    /**
+     * CWriteableJavaRegistry::RegistryEntryL method returns the
+     * corresponding registry entry for a given Uid.
+     * The returned entry can be casted to the appropriate subclass
+     * according to the type property. If type is in the package range
+     * ( EGeneralPackage <= entryType < EGeneralApplication ), it can
+     * be casted to CWriteableJavaRegistryPackageEntry, and if type is
+     * in the application range ( EGeneralApplication <= entryType ),
+     * it can be casted to CWriteableJavaRegistryApplicationEntry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of the entry to be retrieved.
+     * @return The returned registry entry or null if registry entry not
+     *         found. Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C CWriteableJavaRegistryEntry* RegistryEntryL(
+        const TUid& aUid,
+        TBool aAllEntries = EFalse) const;
+
+
+    /**
+     * CWriteableJavaRegistry::SetRegistryEntryL method creates, or updates
+     * the given registry entry in the registry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aEntry The registry entry to be stored in the registry.
+     */
+    IMPORT_C void SetRegistryEntryL(CWriteableJavaRegistryEntry& aEntry) const;
+
+
+    /**
+     * CWriteableJavaRegistry::RemoveRegistryEntryL method removes the
+     * specified registry entry, and its embedded entries if requested.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of the entry to be removed.
+     * @param aEmbeddedEntries If aUid identifies a packageentry, this
+     *                         parameter indicates to remove its
+     *                         embedded entries as well.
+     * @param aAllEntries means, that method give all entries including
+     *          entries, which regards with midlets stored in not presented
+     *          media. EFalse means entries with regarding not presented
+     *          media will not return.
+     */
+    IMPORT_C void RemoveRegistryEntryL(
+        const TUid& aUid,
+        TBool aEmbeddedEntries = EFalse,
+        TBool aAllEntries = EFalse) const;
+
+protected:
+
+    // constructor
+    /**
+     * CWriteableJavaRegistry::CWriteableJavaRegistry constructor
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C CWriteableJavaRegistry();
+
+    // 2nd phase constructors
+    /**
+     * CWriteableJavaRegistry::ConstructL method
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUseIntegrity ETrue if Integrity Server must be used during
+     *                      the lifetime of this object, EFalse if it's
+     *                      not required.
+     * @param aLegacy Indicates, that the registry is used in legacy
+     *                mode.
+     */
+    IMPORT_C void ConstructL(TBool aUseIntegrity, TBool aLegacy = EFalse);
+
+
+    /**
+     * CWriteableJavaRegistry::ConstructL method
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aIntegritySessionId A transaction Id, identifying an
+     *                              integrity session, the registry
+     *                               has to connect to.
+     */
+    IMPORT_C void ConstructL(TInt64 aIntegritySessionId);
+
+    // general methods
+    /**
+     * CWriteableJavaRegistry::DecideEntryTypeAndCreateL method decides
+     * wich subclass of CWriteableJavaRegistryEntry represent the given
+     * array of properties, and creates it.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of the entry to be created with.
+     * @param aPropArray The method chooses wich subclass to create
+     *                      according to these properties.
+     * @return A pointer to a subclass of CWriteableJavaRegistryEntry,
+     *           or NULL if can't decide type. Caller takes over the
+     *         ownership of the object being transferred.
+     */
+    IMPORT_C virtual CWriteableJavaRegistryEntry* DecideEntryTypeAndCreateL
+    (const TUid& aUid,
+     CJavaPropertyArray* aPropArray) const;
+
+protected: // Data
+
+    /**
+     * CWriteableJavaRegistry::iJavaRegSession member, the client class
+     * to the javaregistry server.
+     *
+     * @since S60 v3.2
+     */
+    Java::Manager::Registry::RJavaRegSession* iJavaRegSession;
+
+};
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+#endif // WRITEABLEJAVAREGISTRY_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistryapplicationentry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,281 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistryapplicationentry definition
+*
+*/
+
+
+#ifndef WRITEABLEJAVAREGISTRYAPPLICATIONENTRY_H
+#define WRITEABLEJAVAREGISTRYAPPLICATIONENTRY_H
+
+// INCLUDES
+#include <e32cmn.h>
+#include "writeablejavaregistryentry.h"
+#include "javaattributes.h"
+
+using namespace Java;
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class CWriteableJavaRegistry;
+class CWriteableJavaRegistryPackageEntry;
+
+
+// CLASS DECLARATION
+/**
+ * This subclass of CWriteableJavaRegistryEntry supports attributes
+ * for single applications, that can't contain embedded entries.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CWriteableJavaRegistryApplicationEntry :
+        public CWriteableJavaRegistryEntry
+{
+public:
+
+    // constructors
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::NewL method creates a
+     * CWriteableJavaRegistryApplicationEntry object. This constructor
+     * sets the type-property to EGeneralApplication.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     * @return A pointer to a CWriteableJavaRegistryApplicationEntry
+     *         object. Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistryApplicationEntry*
+    NewL(const TUid& aUid);
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::NewLC method creates a
+     * CWriteableJavaRegistryApplicationEntry object. This constructor
+     * sets the type-property to EGeneralApplication.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     * @return A pointer to a CWriteableJavaRegistryApplicationEntry
+     *         object. Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistryApplicationEntry*
+    NewLC(const TUid& aUid);
+
+    // destructor
+    /**
+     * CWriteableJavaRegistryApplicationEntry::~CWriteableJavaRegistryApplicationEntry destructor
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C ~CWriteableJavaRegistryApplicationEntry();
+
+    // general methods
+    /**
+     * Tells if this application is startable.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the application is startable, EFalse otherwise.
+     *         Default value if not set: ETrue.
+     */
+    IMPORT_C TBool IsStartable() const;
+
+
+    /**
+     * Tells if this application must be shown in Application Shell or
+     * it must rather be hidden.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the application is shown in Application Shell,
+     *         EFalse otherwise.
+     *         Default value if not set: ETrue.
+     */
+    IMPORT_C TBool IsVisible() const;
+
+
+    /**
+     * Tells if this application is resident.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the application is resident, EFalse otherwise.
+     *         Default value if not set: EFalse.
+     */
+    IMPORT_C TBool IsResident() const;
+
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::GroupName method gets
+     * the group name of this application. This property tells in what
+     * folder should this application to be put.
+     *
+     * @since S60 v3.2
+     * @return Group name of this application.
+     *         Default value if not set: "Installed".
+     */
+    IMPORT_C const TDesC& GroupName() const;
+
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::InstallPackageUid method
+     * gets the Uid of the install package entry, which is the parent
+     * of this application.
+     *
+     * @since S60 v3.2
+     * @return The Uid of the parent package.
+     *         Default value if not set: TUid( 0 ).
+     */
+    IMPORT_C TUid InstallPackageUid() const;
+
+
+    /**
+     * Clients can set startability of an application, i.e. whether
+     * this application is startable or not.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aStartable ETrue if the application shall be startable,
+     *                   EFalse otherwise.
+     */
+    IMPORT_C void SetStartableL(TBool aStartable);
+
+
+    /**
+     * Clients can specify if this application is visible in Application
+     * Shell or not.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aVisible ETrue if the application shall be shown in
+     *                 Application Shell, EFalse otherwise.
+     */
+    IMPORT_C void SetVisibleL(TBool aVisible);
+
+
+    /**
+     * Clients can specify whether this application shall be resident or
+     * not.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aResident ETrue if the application shall be resident,
+     *                  EFalse otherwise.
+     */
+    IMPORT_C void SetResidentL(TBool aResident);
+
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::SetGroupNameL method sets
+     * the group name of this application. This property tells in what
+     * folder should this application to be put.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aGroupName Group name of this application.
+     */
+    IMPORT_C void SetGroupNameL(const TDesC& aGroupName);
+
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::SetInstallPackageL method
+     * sets the Uid of the install package entry, which is the parent
+     * of this application.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aInstallPackage The Uid of the parent package.
+     */
+    IMPORT_C void SetInstallPackageUidL(const TUid& aInstallPackage);
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::SetPropertyL method sets
+     * a new, or updtates a stored property if already exists.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aProperty Property to be setted. Pointer ownership taken.
+     */
+    IMPORT_C virtual void SetPropertyL(CJavaProperty* aProperty);
+
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::PackageEntryL method
+     * gets a reference to the install package entry, which is the parent
+     * of this application.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @return A pointer to a CJavaRegistryEntry object. Caller takes
+     *         over the ownership of the object being transferred.
+     */
+    IMPORT_C CWriteableJavaRegistryPackageEntry* PackageEntryL() const;
+
+    /**
+     * CWriteableJavaRegistryAplicationEntry::AttributeL method gets the
+     * additional attribute.
+     *
+     * @since S60 v5.0
+     * @param aName The name of the searched attribute.
+     * @return MJavaAttribute poiter to instance, which contain attribute.
+     * If attribute doesn't exist return NULL.
+     */
+    IMPORT_C virtual const MJavaAttribute* AttributeL(const TDesC& aName) const;
+
+    /**
+     * CWriteableJavaRegistryApplicationEntry::AttributesL method gets the
+     * additional attributes array.
+     *
+     * @since S60 v5.0
+     * @return RPointerArray& with all additional attributes.
+     */
+    IMPORT_C virtual const RPointerArray<MJavaAttribute>& AttributesL() const;
+
+
+
+protected:
+
+    // constructor
+    /**
+     * CWriteableJavaRegistryApplicationEntry::
+     *             CWriteableJavaRegistryApplicationEntry constructor
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     */
+    IMPORT_C CWriteableJavaRegistryApplicationEntry(const TUid& aUid);
+
+private: // Data
+
+    CWriteableJavaRegistryPackageEntry* iWriteablePackage;
+
+    RPointerArray<MJavaAttribute> iAttributes;
+
+};
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+#endif // WRITEABLEJAVAREGISTRYAPPLICATIONENTRY_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistryentry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,421 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistryentry definition
+*
+*/
+
+
+#ifndef WRITEABLEJAVAREGISTRYENTRY_H
+#define WRITEABLEJAVAREGISTRYENTRY_H
+
+// INCLUDES
+#include <e32base.h>
+#include <f32file.h>
+#include "javaregistryentrytype.h"
+#include "javaattributes.h"
+
+using namespace Java;
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+// FORWARD DECLARATION
+class CJavaProperty;
+
+// CLASS DECLARATION
+/**
+ * This class provides the Internal API for entries in JavaRegistry.
+ * It supports common attributes only.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CWriteableJavaRegistryEntry :
+        public CBase
+{
+public:
+
+    // destructor
+    /**
+     * CWriteableJavaRegistryEntry::~CWriteableJavaRegistryEntry destructor
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C virtual ~CWriteableJavaRegistryEntry();
+
+    // general methods
+    /**
+     * CWriteableJavaRegistryEntry::Properties method returns all the
+     * properties the entry has.
+     *
+     * @since S60 v3.2
+     * @return The properties stored in RPointerArray<CJavaProperty>.
+     *         The ownership of objects is NOT subject to change.
+     */
+    const RPointerArray<CJavaProperty>& Properties() const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::Uid method gets the Uid of
+     * this registry entry.
+     *
+     * @since S60 v3.2
+     * @return A TUid object.
+     */
+    IMPORT_C TUid Uid() const;
+
+
+    /**
+     * Gets the name of the entity (midlet, suite, etc.) this entry
+     * represents.
+     *
+     * @since S60 v3.2
+     * @return Name of the entity this entry represents.
+     *         Default value if not set: KNullDesC.
+     */
+    IMPORT_C const TDesC& Name() const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::Type method gets the type of this
+     * registry entry. Enumeration TJavaRegistryEntryType defines
+     * the currently possible options. Mandatory property.
+     *
+     * @since S60 v3.2
+     * @return Type of this registry entry.
+     */
+    IMPORT_C TJavaRegistryEntryType Type() const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::Drive method gets the letter
+     * of drive where the install package has been installed.
+     *
+     * @since S60 v3.2
+     * @return Letter of drive where the install package has been
+     *         installed.
+     *         Default value if not set: EDriveC.
+     */
+    IMPORT_C TDriveNumber Drive() const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::NumberOfCertificateChains method
+     * returns the number of certificate chains of this Java application.
+     *
+     * @since S60 v3.2
+     * @return Number of certificate chains.
+     */
+    IMPORT_C TInt NumberOfCertificateChains() const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::CertificateChain method returns the
+     * n-th certificate chain of this Java application.
+     *
+     * @since S60 v3.2
+     * @param aIndex Index of the certificate chain to be retrieved.
+     * @return N-th certificate chain
+     *         Default value if not set: KNullDesC.
+     */
+    IMPORT_C const TDesC8& CertificateChain(TInt aIndex) const;
+
+
+    /**
+     * Returns the content id of the entity this entry represents.
+     * The content id can be used to check if a DRM protected entity
+     * has enough right to be launched or not.
+     * The method can also be used to check if the entity is DRM
+     * protected or not.
+     *
+     * @since S60 v3.2
+     * @return Content id of the entity this entry represent or
+     *          KNullDesC if the entity is not DRM protected.
+     */
+    IMPORT_C const TDesC& DrmContentId() const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::SetNameL method sets the name of
+     * this registry entry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aName The name to be setted.
+     */
+    IMPORT_C void SetNameL(const TDesC& aName);
+
+    /**
+     * CWriteableJavaRegistryEntry::SetTypeL method sets the type of this
+     * registry entry. Enumeration TJavaRegistryEntryType defines
+     * the currently possible options.
+     * The function may leave with one of the system-wide error codes.
+     *
+     *
+     * @since S60 v3.2
+     * @param aType The type to be setted.
+     */
+    IMPORT_C void SetTypeL(TJavaRegistryEntryType aType);
+
+    /**
+     * CWriteableJavaRegistryEntry::SetDriveL method sets the letter
+     * of drive where the install package has been installed.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aDrive Letter of drive where the install package has been
+     *                  installed.
+     */
+    IMPORT_C void SetDriveL(const TDriveNumber& aDrive);
+
+
+    /**
+     * CWriteableJavaRegistryEntry::AddCertificateChainL method adds
+     * a certificate chain to this Java application.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aChain The new certificate chain.
+     */
+    IMPORT_C void AddCertificateChainL(const TDesC8& aChain);
+
+
+    /**
+     * CWriteableJavaRegistryEntry::SetDrmContentIdL sets DRM content
+     * id of this entry. If the entity represented by this entry is
+     * not DRM protected this content id should not be set
+     *
+     * @since S60 v3.2
+     * @param aDrmContentId DRM content id to be set
+     */
+    IMPORT_C void SetDrmContentIdL(const TDesC& aDrmContentId);
+
+
+    /**
+     * CWriteableJavaRegistryEntry::PropertyL method gets a property,
+     * specified by the Id parameter.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the property to be returned.
+     * @return The pointer of the property specified by the Id parameter,
+     *         or NULL if it is not set.
+     *         The ownership of the object being transferred is NOT
+     *         subject to change.
+     */
+    IMPORT_C const CJavaProperty* Property(TInt32 aId) const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::SetPropertyL method sets a new, or
+     * updtates a stored property if already exists.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aProperty Property to be setted. Pointer ownership taken.
+     */
+    IMPORT_C virtual void SetPropertyL(CJavaProperty* aProperty);
+
+
+    /**
+     * CWriteableJavaRegistryEntry::SetPropertyL method sets a new, or
+     * updtates a stored property if already exists.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the Property.
+     * @param aValue Value for the Property.
+     */
+    IMPORT_C void SetPropertyL(TInt32 aId, const TDesC& aValue);
+
+    /**
+     * CWriteableJavaRegistryEntry::Attribute method gets the
+     * additional attribute.
+     *
+     * @since S60 v5.0
+     * @param aName The name the searched attribute.
+     * @return MJavaAttribute poiter to instance, which contain attribute.
+     * If attribute doesn't exist return NULL.
+     */
+    IMPORT_C virtual const MJavaAttribute* AttributeL(const TDesC& aName) const;
+
+    /**
+     * CWriteableJavaRegistryEntry::Attributes method gets the
+     * additional attributes array.
+     *
+     * @since S60 v5.0
+     * @return RPointerArray& with all additional attributes.
+     */
+    IMPORT_C virtual const RPointerArray< MJavaAttribute >& AttributesL() const;
+
+    /**
+     * CWriteableJavaRegistryEntry::SerializeAttributes method gets the
+     * streamed attributes and store stream to CJavaProperty as
+     * special ESerializedAttribute
+     * If don't exists any attribute method do nothing
+     *
+     * @since S60 v5.0
+     *
+     */
+    IMPORT_C virtual void SerializeAttributesL();
+
+
+
+protected:
+
+    // constructors
+
+    /**
+     * CWriteableJavaRegistryEntry::CWriteableJavaRegistryEntry constructor
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     */
+    IMPORT_C CWriteableJavaRegistryEntry(const TUid& aUid);
+
+    /**
+     * 2nd phase constructor. Used by the subclasses.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aType The type to be setted.
+     */
+    IMPORT_C void ConstructL(TJavaRegistryEntryType aType);
+
+    // general methods
+
+    /**
+     * CWriteableJavaRegistryEntry::IntegerProperty method gets an
+     * integer propertyvalue, specified by the Id parameter.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the property to be returned.
+     * @param aDefault The value to be returned if aValue does'nt
+     *                 contain valid data.
+     * @return The integer value of the property.
+     */
+    IMPORT_C TInt32 IntegerProperty(TInt32 aId, TInt32 aDefault) const;
+
+    /**
+     * CWriteableJavaRegistryEntry::BooleanProperty method gets a
+     * boolean propertyvalue, specified by the Id parameter.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the property to be returned.
+     * @param aDefault The value to be returned if aValue does'nt
+     *                 contain valid data.
+     * @return The boolean value of the property.
+     */
+    IMPORT_C TBool BooleanProperty(TInt32 aId, TBool aDefault) const;
+
+
+    /**
+     * CWriteableJavaRegistryEntry::SetBooleanPropertyL method sets a new,
+     * or updtates a stored boolean property if already exists.
+     * Used by some specialized boolean property setter methods.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the Property.
+     * @param aBoolValue Boolean value for the Property.
+     */
+    IMPORT_C void SetBooleanPropertyL(TInt32 aId, TBool aBoolValue);
+
+    /**
+     * CWriteableJavaRegistryEntry::SetDescriptorPropertyL method sets
+     * a new, or updtates a stored descriptor property if already exists.
+     * Used by some specialized descriptor property setter methods.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the Property.
+     * @param aDescValue Descriptor value for the Property.
+     */
+    IMPORT_C void SetDescriptorPropertyL(TInt32 aId,
+                                         const TDesC& aDescValue);
+
+    /**
+     * CWriteableJavaRegistryEntry::SetIntegerPropertyL method sets a new,
+     * or updtates a stored integer property if already exists.
+     * Used by some specialized integer/Uid property setter methods.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aId The Id of the Property.
+     * @param aIntValue Value for the Property.
+     */
+    IMPORT_C void SetIntegerPropertyL(TInt32 aId, TInt32 aIntValue);
+
+    /**
+     * CWriteableJavaRegistryEntry::DeleteProperty method deletes
+     * a property, specified by the index parameter.
+     *
+     * @since S60 v3.2
+     * @param aIndex The index of the property to be deleted.
+     * @return
+     */
+    IMPORT_C void DeleteProperty(TInt aIndex);
+
+    /**
+     * CWriteableJavaRegistryEntry::GetPropertyIndex method gets the
+     * index of the property specified by the Id.
+     *
+     * @since S60 v3.2
+     * @param aId The id of the searched property.
+     * @return The index of the searched property. If not found, -1 is
+     *         returned.
+     */
+    IMPORT_C TInt GetPropertyIndex(TInt32 aId) const;
+
+
+
+protected: // Data
+
+
+    /**
+     * CWriteableJavaRegistryEntry::iProperties member stores all the
+     * properties, whether processed here or in subclasses.
+     */
+    RPointerArray<CJavaProperty> iProperties;
+
+    /**
+     * CWriteableJavaRegistryEntry::iCertificates member stores the
+     * certificate chains. The certificate chains are also stored in the
+     * iProperties, and are synchronised at every modification.
+     */
+    RPointerArray<HBufC8> iCertificates;
+
+
+
+private: // Data
+    /**
+     * CWriteableJavaRegistryEntry::iUid member, representing the Uid
+     * of this entry.
+     */
+    TUid iUid;
+
+    RPointerArray<MJavaAttribute> iAttributes;
+
+};
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+
+#endif // WRITEABLEJAVAREGISTRYENTRY_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/inc/writeablejavaregistrypackageentry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,421 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistrypackageentry definition
+*
+*/
+
+
+#ifndef WRITEABLEJAVAREGISTRYPACKAGEENTRY_H
+#define WRITEABLEJAVAREGISTRYPACKAGEENTRY_H
+
+// INCLUDES
+#include "writeablejavaregistryentry.h"
+#include "javaattributes.h"
+
+using namespace Java;
+
+// FORWARD DECLARATION
+class TAppVersion;
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// CLASS DECLARATION
+/**
+ * This subclass of CWriteableJavaRegistryEntry supports attributes
+ * for packages, that can contain embedded entries.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CWriteableJavaRegistryPackageEntry :
+        public CWriteableJavaRegistryEntry
+{
+public:
+
+    // constructors
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::NewL method creates a
+     * CWriteableJavaRegistryPackageEntry object. This constructor
+     * sets the type-property to EGeneralPackage.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     * @return A pointer to a CWriteableJavaRegistryPackageEntry
+     *         object. Caller takes over the ownership of the object
+     *         being transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistryPackageEntry*
+    NewL(const TUid& aUid);
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::NewLC method creates a
+     * CWriteableJavaRegistryPackageEntry object. This constructor
+     * sets the type-property to EGeneralPackage.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     * @return A pointer to a CWriteableJavaRegistryPackageEntry
+     *         object. Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CWriteableJavaRegistryPackageEntry*
+    NewLC(const TUid& aUid);
+
+    // destructor
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::
+     *                              ~CWriteableJavaRegistryPackageEntry
+     * Destructor
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C ~CWriteableJavaRegistryPackageEntry();
+
+    // general methods
+    /**
+     * CWriteableJavaRegistryPackageEntry::VersionL method gets the
+     * version of this install package suite.
+     *
+     * @since S60 v3.2
+     * @return A TAppVersion object that represents the version
+     *         of this install package suite.
+     *         Default value if not set: TAppVersion( 0, 0, 0 ).
+     */
+    IMPORT_C TAppVersion Version() const;
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::Vendor method gets the
+     * vendor name of this install package suite.
+     *
+     * @since S60 v3.2
+     * @return Vendor name of the installation package.
+     *         Default value if not set: KNullDesC.
+     */
+    IMPORT_C const TDesC& Vendor() const;
+
+
+    /**
+     * Tells if this package is uninstallable.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the package is uninstallable, EFalse otherwise.
+     *         Default value if not set: ETrue.
+     */
+    IMPORT_C TBool IsUninstallable() const;
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::GetEmbeddedEntries method
+     * returns an array of Uids associated with this install package.
+     * E.g. if this entry represents a MIDlet suite this method returns
+     * an array of MIDlet Uids.
+     *
+     * @since S60 v3.2
+     * @param aUids [out] Returns Uids of the embedded entries in this
+     *                    install package.
+     */
+    IMPORT_C void GetEmbeddedEntries(RArray<TUid>& aUids) const;
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::DownloadPlugin method gets
+     * the downloadplugin of this package.
+     *
+     * @since S60 v3.2
+     * @return Descriptor identifying the downloadplugin of this package.
+     *         Default value if not set: KNullDesC8.
+     */
+    IMPORT_C const TDesC8& DownloadPlugin() const;
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::InstallPlugin method gets
+     * the installplugin of this package.
+     *
+     * @since S60 v3.2
+     * @return Descriptor identifying the installplugin of this package.
+     *         Default value if not set: KNullDesC8.
+     */
+    IMPORT_C const TDesC8& InstallPlugin() const;
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::Size method gets the size of
+     * this package.
+     *
+     * @since S60 v3.2
+     * @return The size of this package.
+     *         Default value if not set: 0.
+     */
+    IMPORT_C TInt Size() const;
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetVersionL method sets the
+     * version of this install package suite.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aVersion the version of this install package suite.
+     */
+    IMPORT_C void SetVersionL(const TAppVersion& aVersion);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetVendorL method sets the
+     * vendor name of this install package suite.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aVendor Vendor name of the installation package.
+     */
+    IMPORT_C void SetVendorL(const TDesC& aVendor);
+
+
+    /**
+     * Tells if this package is uninstallable.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUninstallable ETrue if the package is uninstallable,
+     *                       EFalse otherwise.
+     */
+    IMPORT_C void SetUninstallableL(TBool aUninstallable);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetDownloadPluginL method sets
+     * the downloadplugin of this package.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aDownloadPlugin Descriptor identifying the downloadplugin of
+     *          this package.
+     */
+    IMPORT_C void SetDownloadPluginL(const TDesC8& aDownloadPlugin);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetInstallPluginL method sets
+     * the installplugin of this package.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aInstallPlugin Descriptor identifying the installplugin of
+     *           this package.
+     */
+    IMPORT_C void SetInstallPluginL(const TDesC8& aInstallPlugin);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetSizeL method sets the size of
+     * this package.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aSize The size of this package.
+     */
+    IMPORT_C void SetSizeL(TInt aSize);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::AddEmbeddedEntryL method adds
+     * the given Uid to the embedded entries.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid Adds the given Uid to the embedded entries.
+     */
+    IMPORT_C void AddEmbeddedEntryL(const TUid& aUid);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::NumberOfEmbeddedEntries method
+     * Gets the number of embedded entries in this install package.
+     *
+     * @since S60 v3.2
+     * @return The number of embedded entries.
+     */
+    IMPORT_C TInt NumberOfEmbeddedEntries() const;
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::RemoveEmbeddedEntryL method
+     * removes the embedded entry specified by the given Uid.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of the embedded entry to be removed.
+     */
+    IMPORT_C void RemoveEmbeddedEntryL(const TUid& aUid);
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::EmbeddedEntryByUidL method
+     * Returns the corresponding embedded entry for the given Uid.
+     * The returned entry can be casted to the appropriate subclass
+     * according to the type property. If type is in the package range
+     * ( EGeneralPackage <= entryType < EGeneralApplication ), it can
+     * be casted to CWriteableJavaRegistryPackageEntry, and if type is
+     * in the application range ( EGeneralApplication <= entryType ),
+     * it can be casted to CWriteableJavaRegistryApplicationEntry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aEntryUid The Uid of the embedded entry to be retrieved.
+     * @return The returned embedded entry or null if entry is not found.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C CWriteableJavaRegistryEntry* EmbeddedEntryByUidL(
+        const TUid& aEntryUid) const;
+
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::EmbeddedEntryByNumberL method
+     * Returns the corresponding embedded entry for the given application
+     * number.
+     * The returned entry can be casted to the appropriate subclass
+     * according to the type property. If type is in the package range
+     * ( EGeneralPackage <= entryType < EGeneralApplication ), it can
+     * be casted to CWriteableJavaRegistryPackageEntry, and if type is
+     * in the application range ( EGeneralApplication <= entryType ),
+     * it can be casted to CWriteableJavaRegistryApplicationEntry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aEntryNum Number of the embedded entry to be retrieved
+     *                  ( NOTE: Starting from 0 )
+     * @return The returned embedded entry or null if entry is not found.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C CWriteableJavaRegistryEntry* EmbeddedEntryByNumberL(
+        TInt aEntryNum) const;
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetPropertyL method sets a new,
+     * or updtates a stored property if already exists.
+     * This is a temporary overload of
+     * CWriteableJavaRegistryEntry::SetPropertyL
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aProperty Property to be setted. Pointer ownership taken.
+     */
+    IMPORT_C virtual void SetPropertyL(CJavaProperty* aProperty);
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SetAttribute method sets a new,
+     * or updtates a stored attribute if already exists.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v5.0
+     * @param aProperty Property to be setted. Pointer ownership taken.
+     */
+    IMPORT_C void SetAttributeL(const TDesC& aName, const TDesC& aValue, TBool aTrusted);
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::Attribute method gets the
+     * additional attribute.
+     *
+     * @since S60 v5.0
+     * @param aName The name the searched attribute.
+     * @return MJavaAttribute poiter to instance, which contain attribute.
+     * If attribute doesn't exist return NULL.
+     */
+    IMPORT_C virtual const MJavaAttribute* AttributeL(const TDesC& aName) const;
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::Attributes method gets the
+     * additional attributes array.
+     *
+     * @since S60 v5.0
+     * @return RPointerArray& with all additional attributes.
+     */
+    IMPORT_C virtual const RPointerArray<MJavaAttribute>& AttributesL() const;
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::SerializeAttributes method gets the
+     * streamed attributes and store stream to CJavaProperty as
+     * special ESerializedAttribute
+     * If don't exists any attribute method do nothing
+     *
+     * @since S60 v5.0
+     *
+     */
+    IMPORT_C virtual void SerializeAttributesL();
+
+
+
+protected:
+
+    // constructor
+    /**
+     * CWriteableJavaRegistryPackageEntry::
+     *                        CWriteableJavaRegistryPackageEntry constructor
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of this entry.
+     */
+    IMPORT_C CWriteableJavaRegistryPackageEntry(const TUid& aUid);
+
+    /**
+    * CWriteableJavaRegistryEntry::iAttributes member stores the
+    * additional attributes. The addtional attributes is also stored in the
+    * iProperties as BLOB, and are synchronised at every modification.
+    */
+    CJavaAttributes* iAttributes;
+
+private: // Data
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::iDownloadPlugin member
+     * stores the 8bit descriptor represented downloadplugin
+     * property. This property is stored also in the
+     * iProperties, and are synchronised at every modification.
+     *
+     * @since S60 v3.2
+     */
+    HBufC8* iDownloadPlugin;
+
+    /**
+     * CWriteableJavaRegistryPackageEntry::iInstallPlugin member
+     * stores the 8bit descriptor represented installplugin
+     * property. This property is stored also in the
+     * iProperties, and are synchronised at every modification.
+     *
+     * @since S60 v3.2
+     */
+    HBufC8* iInstallPlugin;
+
+    RPointerArray<MJavaAttribute> iAttrib;
+
+
+};
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+#endif // WRITEABLEJAVAREGISTRYPACKAGEENTRY_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/javaregconverter.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,164 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregconverter implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+// INCLUDES
+#include "javaregconverter.h"
+#include <appversion.h>
+
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetTAppVersion
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TAppVersion JavaRegConverter::
+GetTAppVersion(const TDesC& /* aValue */,
+               TAppVersion /* aDefault */)
+{
+    return TAppVersion();
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetTAppVersionL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TAppVersion JavaRegConverter::
+GetTAppVersionL(const TDesC& /* aValue */)
+{
+    User::Leave(KErrNotSupported);
+    return TAppVersion();
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::StoreTAppVersionL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::
+StoreTAppVersionL(const TAppVersion& /* aValue */,
+                  HBufC*& /* aDes */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetTInt
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt32 JavaRegConverter::
+GetTInt(const TDesC& /* aValue */, TInt32 /* aDefault */)
+{
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetTIntL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt32 JavaRegConverter::GetTIntL(const TDesC& /* aValue */)
+{
+    User::Leave(KErrNotSupported);
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::StoreTIntL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::
+StoreTIntL(const TInt32 /* aValue */, HBufC*& /* aDes */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetTBool
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool JavaRegConverter::
+GetTBool(const TDesC& /* aValue */, TBool /* aDefault */)
+{
+    return EFalse;
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetTBoolL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool JavaRegConverter::
+GetTBoolL(const TDesC& /* aValue */)
+{
+    User::Leave(KErrNotSupported);
+    return EFalse;
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::StoreTBoolL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::
+StoreTBoolL(const TBool /* aValue */, HBufC*& /* aDes */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetCertificateChainsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::
+GetCertificateChainsL(const TDesC& /* aValue */,
+                      RPointerArray<HBufC8>& /* aCertChains */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::StoreCertificateChainsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::StoreCertificateChainsL(
+    const RPointerArray<HBufC8>& /* aValue */,
+    HBufC*& /* aDes */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::GetUnicodeDescriptorsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::GetUnicodeDescriptorsL(
+    const TDesC& /* aValue */,
+    RPointerArray<HBufC>& /* aDescriptors */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// JavaRegConverter::StoreUnicodeDescriptorsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void JavaRegConverter::StoreUnicodeDescriptorsL(
+    const RPointerArray<HBufC>& /* aValue */,
+    HBufC*& /* aDes */)
+{
+    User::Leave(KErrNotSupported);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/javaregistry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,100 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistry implementation
+*
+*/
+
+
+#include "javaregistry.h"
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::NewL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistry* CJavaRegistry::NewL()
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::NewLC
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistry* CJavaRegistry::NewLC()
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::RegistryEntryExistsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CJavaRegistry::RegistryEntryExistsL(const TUid& /*aUid*/) const
+{
+    User::Leave(KErrNotSupported);
+    return EFalse;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::GetRegistryEntryUidsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CJavaRegistry::GetRegistryEntryUidsL(RArray<TUid>& /*aUids*/) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::GetRegistryEntryUidsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CJavaRegistry::GetRegistryEntryUidsL
+(TJavaRegistryEntryType /*aType*/, RArray<TUid>& /*aUids*/) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::RegistryEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryEntry* CJavaRegistry::
+RegistryEntryL(const TUid& /*aUid*/) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::~CJavaRegistry
+// ---------------------------------------------------------------------------
+//
+CJavaRegistry::~CJavaRegistry()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistry::CJavaRegistry
+// ---------------------------------------------------------------------------
+//
+CJavaRegistry::CJavaRegistry()
+{
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/javaregistryapplicationentry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,88 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistryapplicationentry implementation
+*
+*/
+
+
+#include "javaregistrypackageentry.h"
+#include "javaregistryapplicationentry.h"
+#include "writeablejavaregistryapplicationentry.h"
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryApplicationEntry::CJavaRegistryApplicationEntry
+// ---------------------------------------------------------------------------
+//
+CJavaRegistryApplicationEntry::CJavaRegistryApplicationEntry
+(CWriteableJavaRegistryApplicationEntry* aWritableEntry) :
+        CJavaRegistryEntry(aWritableEntry)
+{
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryApplicationEntry::IsStartable
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CJavaRegistryApplicationEntry::IsStartable() const
+{
+    return ETrue;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryApplicationEntry::IsVisible
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CJavaRegistryApplicationEntry::IsVisible() const
+{
+    return ETrue;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryApplicationEntry::IsResident
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CJavaRegistryApplicationEntry::IsResident() const
+{
+    return EFalse;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryApplicationEntry::GroupName
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CJavaRegistryApplicationEntry::GroupName() const
+{
+    return KNullDesC;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryApplicationEntry::PackageEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryPackageEntry* CJavaRegistryApplicationEntry::
+PackageEntryL() const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/javaregistrybackupsupport.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,74 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistrybackupsupport implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+// INCLUDES
+#include "javaregistrybackupsupport.h"
+
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryBackupSupport::NewL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryBackupSupport* CJavaRegistryBackupSupport::NewL()
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryBackupSupport::NewLC
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryBackupSupport* CJavaRegistryBackupSupport::NewLC()
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryBackupSupport::~CJavaRegistryBackupSupport
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryBackupSupport::~CJavaRegistryBackupSupport()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryBackupSupport::EntriesExistForDriveL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CJavaRegistryBackupSupport::
+EntriesExistForDriveL(const TDriveNumber& /* aDrive */) const
+{
+    User::Leave(KErrNotSupported);
+    return EFalse;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryBackupSupport::ChangeBURState
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CJavaRegistryBackupSupport::
+ChangeBURState(const TBackupState& /* aState */) const
+{
+    return KErrNotSupported;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/javaregistryentry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,139 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistryentry implementation
+*
+*/
+
+
+#include "javaregistryentry.h"
+#include "writeablejavaregistryentry.h"
+#include "javaattributes.h"
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::CJavaRegistryEntry
+// ---------------------------------------------------------------------------
+//
+CJavaRegistryEntry::CJavaRegistryEntry
+(CWriteableJavaRegistryEntry* /* aWritableEntry */)
+{
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::Uid
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TUid CJavaRegistryEntry::Uid() const
+{
+    return TUid::Null();
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::Name
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CJavaRegistryEntry::Name() const
+{
+    return KNullDesC;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::Type
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TJavaRegistryEntryType CJavaRegistryEntry::Type() const
+{
+    return EGeneralApplication;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::DriveL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TDriveNumber CJavaRegistryEntry::Drive() const
+{
+    return EDriveC;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::NumberOfCertificateChains
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CJavaRegistryEntry::NumberOfCertificateChains() const
+{
+    return 0;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::CertificateChain
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC8& CJavaRegistryEntry::
+CertificateChain(TInt /* aChain */) const
+{
+    return KNullDesC8;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::DrmContentId
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CJavaRegistryEntry::DrmContentId() const
+{
+    return KNullDesC;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::~CJavaRegistryEntry
+// ---------------------------------------------------------------------------
+//
+CJavaRegistryEntry::~CJavaRegistryEntry()
+{
+}
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::WritableEntry
+// ---------------------------------------------------------------------------
+//
+CWriteableJavaRegistryEntry* CJavaRegistryEntry::WritableEntry() const
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::AttributeL
+// ---------------------------------------------------------------------------
+//
+
+EXPORT_C const MJavaAttribute* CJavaRegistryEntry::AttributeL(const TDesC& /*aName*/) const
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryEntry::AttributesL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const RPointerArray<MJavaAttribute>& CJavaRegistryEntry::AttributesL() const
+{
+    return iAttributes;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/javaregistrypackageentry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,121 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregistrypackageentry implementation
+*
+*/
+
+
+#include "javaregistrypackageentry.h"
+#include "javaregistryapplicationentry.h"
+#include "writeablejavaregistrypackageentry.h"
+#include <appversion.h>
+
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::CJavaRegistryPackageEntry
+// ---------------------------------------------------------------------------
+//
+CJavaRegistryPackageEntry::CJavaRegistryPackageEntry
+(CWriteableJavaRegistryPackageEntry* aWritableEntry) :
+        CJavaRegistryEntry(aWritableEntry)
+{
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::Version
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TAppVersion CJavaRegistryPackageEntry::Version() const
+{
+    return TAppVersion(0, 0, 0);
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::Vendor
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CJavaRegistryPackageEntry::Vendor() const
+{
+    return KNullDesC;
+}
+
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::IsUninstallable
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CJavaRegistryPackageEntry::IsUninstallable() const
+{
+    return ETrue;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::GetEmbeddedEntries
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CJavaRegistryPackageEntry::GetEmbeddedEntries
+(RArray<TUid>& /*aUids*/) const
+{
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::NumberOfEmbeddedEntries
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CJavaRegistryPackageEntry::NumberOfEmbeddedEntries() const
+{
+    return 0;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::EmbeddedEntryByUidL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryEntry* CJavaRegistryPackageEntry::
+EmbeddedEntryByUidL(const TUid& /*aEntryUid*/) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::EmbeddedEntryByNumberL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CJavaRegistryEntry* CJavaRegistryPackageEntry::
+EmbeddedEntryByNumberL(TInt /*aEntryNum*/) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaRegistryPackageEntry::UsedUserDiskSpace
+// ---------------------------------------------------------------------------
+EXPORT_C TInt64 CJavaRegistryPackageEntry::UsedUserDiskSpace() const
+{
+    return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/writeablejavaregistry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,209 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistry implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+// INCLUDES
+#include "writeablejavaregistry.h"
+
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::NewL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistry* CWriteableJavaRegistry::
+NewL(TBool /* aUseIntegrity */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::NewLC
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistry* CWriteableJavaRegistry::
+NewLC(TBool /* aUseIntegrity */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::NewL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistry* CWriteableJavaRegistry::
+NewL(TInt64 /* aIntegritySessionId */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::NewLC
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistry* CWriteableJavaRegistry::
+NewLC(TInt64 /* aIntegritySessionId */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::~CWriteableJavaRegistry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistry::~CWriteableJavaRegistry()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::GenerateUidL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::GenerateUidsL(
+    RArray<TUid>& /* aUids */,
+    TInt /* aNumber */) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::RegistryEntryExistsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CWriteableJavaRegistry::
+RegistryEntryExistsL(const TUid& /* aUid */) const
+{
+    User::Leave(KErrNotSupported);
+    return EFalse;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::GetRegistryEntryUidsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::
+GetRegistryEntryUidsL(RArray<TUid>& /* aUids */) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::GetRegistryEntryUidsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::
+GetRegistryEntryUidsL(TJavaRegistryEntryType /* aType */,
+                      RArray<TUid>& /* aUids */,
+                      TBool /*aAllEntries*/) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::GetRegistryEntryUidsL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::GetRegistryEntryUidsL(
+    const RPointerArray<CJavaProperty>& /* aProperties */,
+    RArray<TUid>& /* aUids */, TBool /*aAllEntries*/) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::RegistryEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryEntry* CWriteableJavaRegistry::
+RegistryEntryL(const TUid& /* aUid */,
+               TBool /*aAllEntries*/) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::SetRegistryEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::
+SetRegistryEntryL(CWriteableJavaRegistryEntry& /* aEntry */) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::RemoveRegistryEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::
+RemoveRegistryEntryL(const TUid& /* aUid */,
+                     TBool /* aEmbeddedEntries */,
+                     TBool /* aAllEntries */) const
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::CWriteableJavaRegistry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistry::CWriteableJavaRegistry()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::ConstructL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::
+ConstructL(TBool /* aUseIntegrity */,
+           TBool /* aLegacy */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::ConstructL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistry::
+ConstructL(TInt64 /* aIntegritySessionId */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistry::DecideEntryTypeAndCreateL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryEntry*
+CWriteableJavaRegistry::DecideEntryTypeAndCreateL
+(const TUid& /* aUid */,
+ CJavaPropertyArray* /* aPropArray */) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/writeablejavaregistryapplicationentry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,207 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistryapplicationentry implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+// INCLUDES
+#include "writeablejavaregistryapplicationentry.h"
+#include "javaattributes.h"
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS =============================
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::~CWriteableJavaRegistryApplicationEntry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryApplicationEntry::~CWriteableJavaRegistryApplicationEntry()
+{
+}
+// CWriteableJavaRegistryApplicationEntry::NewL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryApplicationEntry*
+CWriteableJavaRegistryApplicationEntry::NewL(const TUid& /* aUid */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::NewLC
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryApplicationEntry*
+CWriteableJavaRegistryApplicationEntry::NewLC(const TUid& /* aUid */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::IsStartable
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CWriteableJavaRegistryApplicationEntry::IsStartable() const
+{
+    return EFalse; // ETrue ? regarding to the header file
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::IsVisible
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CWriteableJavaRegistryApplicationEntry::IsVisible() const
+{
+    return EFalse; // ETrue ? regarding to the header file
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::IsResident
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CWriteableJavaRegistryApplicationEntry::IsResident() const
+{
+    return EFalse;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::GroupName
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CWriteableJavaRegistryApplicationEntry::
+GroupName() const
+{
+    return KNullDesC;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::InstallPackageUid
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TUid CWriteableJavaRegistryApplicationEntry::InstallPackageUid() const
+{
+    return TUid::Null();
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::SetStartableL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryApplicationEntry::
+SetStartableL(TBool /* aStartable */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::SetVisibleL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryApplicationEntry::
+SetVisibleL(TBool /* aVisible */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::SetResidentL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryApplicationEntry::
+SetResidentL(TBool /* aResident */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::SetGroupNameL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryApplicationEntry::
+SetGroupNameL(const TDesC& /* aGroupName */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::SetInstallPackageUidL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryApplicationEntry::
+SetInstallPackageUidL(const TUid& /* aInstallPackage */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::SetPropertyL
+// Takes ownership of aProperty
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryApplicationEntry::
+SetPropertyL(CJavaProperty* /*aProperty*/)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::PackageEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryPackageEntry*
+CWriteableJavaRegistryApplicationEntry::PackageEntryL() const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::
+//                                     CWriteableJavaRegistryApplicationEntry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryApplicationEntry::
+CWriteableJavaRegistryApplicationEntry(const TUid& /* aUid */)
+        : CWriteableJavaRegistryEntry(TUid::Null())
+{
+
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::AttributeL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const MJavaAttribute* CWriteableJavaRegistryApplicationEntry::
+AttributeL(const TDesC& /* aName */) const
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryApplicationEntry::AttributesL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const RPointerArray<MJavaAttribute>&
+CWriteableJavaRegistryApplicationEntry::AttributesL() const
+{
+    User::Leave(KErrNotSupported);
+    return iAttributes;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/writeablejavaregistryentry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,296 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistryentry implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+// INCLUDES
+#include "writeablejavaregistryentry.h"
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS =============================
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::~CWriteableJavaRegistryEntry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryEntry::~CWriteableJavaRegistryEntry()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::Uid
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TUid CWriteableJavaRegistryEntry::Uid() const
+{
+    return TUid::Null();
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::Name
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CWriteableJavaRegistryEntry::Name() const
+{
+    return KNullDesC;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::Type
+// ---------------------------------------------------------------------------
+//
+EXPORT_C Java::TJavaRegistryEntryType CWriteableJavaRegistryEntry::
+Type() const
+{
+    return Java::TJavaRegistryEntryType();
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::Drive
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TDriveNumber CWriteableJavaRegistryEntry::Drive() const
+{
+    return EDriveC;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::NumberOfCertificateChains
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CWriteableJavaRegistryEntry::NumberOfCertificateChains() const
+{
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::CertificateChain
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC8& CWriteableJavaRegistryEntry::
+CertificateChain(TInt /* aIndex */) const
+{
+    return KNullDesC8;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::DrmContentId
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CWriteableJavaRegistryEntry::DrmContentId() const
+{
+    return KNullDesC;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetNameL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::SetNameL(const TDesC& /* aName */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetTypeL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetTypeL(Java::TJavaRegistryEntryType /* aType */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetDriveL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetDriveL(const TDriveNumber& /* aDrive */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::AddCertificateChainL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+AddCertificateChainL(const TDesC8& /* aChain */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetDrmContentIdL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetDrmContentIdL(const TDesC& /* aDrmConte ntId */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::Property
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const CJavaProperty* CWriteableJavaRegistryEntry::
+Property(TInt32 /* aId */) const
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetPropertyL
+// Takes ownership of aProperty
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetPropertyL(CJavaProperty* /* aProperty */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetPropertyL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetPropertyL(TInt32 /* aId */, const TDesC& /* aValue */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::CWriteableJavaRegistryEntry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryEntry::
+CWriteableJavaRegistryEntry(const TUid& /* aUid */)
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::ConstructL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+ConstructL(Java::TJavaRegistryEntryType /* aType */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::IntegerProperty
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt32 CWriteableJavaRegistryEntry::
+IntegerProperty(TInt32 /* aId */, TInt32 /* aDefault */) const
+{
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::BooleanProperty
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CWriteableJavaRegistryEntry::
+BooleanProperty(TInt32 /* aId */, TBool /* aDefault */) const
+{
+    return EFalse;
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetBooleanPropertyL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetBooleanPropertyL(TInt32 /* aId */, TBool /* aBoolValue */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetDescriptorPropertyL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetDescriptorPropertyL(TInt32 /* aId */, const TDesC& /* aDescValue */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SetIntegerPropertyL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::
+SetIntegerPropertyL(TInt32 /* aId */, TInt32 /* aIntValue */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::DeleteProperty
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::DeleteProperty(TInt /* aIndex */)
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::GetPropertyIndex
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CWriteableJavaRegistryEntry::
+GetPropertyIndex(TInt32 /* aId */) const
+{
+    return -1;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::AttributeL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const MJavaAttribute* CWriteableJavaRegistryEntry::
+AttributeL(const TDesC& /* aName */) const
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::AttributesL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const RPointerArray<MJavaAttribute>&
+CWriteableJavaRegistryEntry::AttributesL() const
+{
+    return iAttributes;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryEntry::SerializeAttributesL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryEntry::SerializeAttributesL()
+{
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/client/src/writeablejavaregistrypackageentry.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,303 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  writeablejavaregistrypackageentry implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+// INCLUDES
+#include "writeablejavaregistrypackageentry.h"
+#include "javaattributes.h"
+#include <appversion.h>
+
+using namespace Java;
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::NewL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryPackageEntry*
+CWriteableJavaRegistryPackageEntry::NewL(const TUid& /* aUid */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::NewLC
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryPackageEntry*
+CWriteableJavaRegistryPackageEntry::NewLC(const TUid& /* aUid */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::~CWriteableJavaRegistryPackageEntry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryPackageEntry::
+~CWriteableJavaRegistryPackageEntry()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::Version
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TAppVersion CWriteableJavaRegistryPackageEntry::Version() const
+{
+    return TAppVersion(0, 0, 0);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::Vendor
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC& CWriteableJavaRegistryPackageEntry::Vendor() const
+{
+    return KNullDesC;
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::IsUninstallable
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TBool CWriteableJavaRegistryPackageEntry::IsUninstallable() const
+{
+    return ETrue;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::GetEmbeddedEntries
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+GetEmbeddedEntries(RArray<TUid>& /* aUids */) const
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::DownloadPlugin
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC8& CWriteableJavaRegistryPackageEntry::
+DownloadPlugin() const
+{
+    return KNullDesC8;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::InstallPlugin
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const TDesC8& CWriteableJavaRegistryPackageEntry::
+InstallPlugin() const
+{
+    return KNullDesC8;
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::Size
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CWriteableJavaRegistryPackageEntry::Size() const
+{
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetVersionL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetVersionL(const TAppVersion& /* aVersion */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetVendorL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetVendorL(const TDesC& /* aVendor */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetUninstallableL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetUninstallableL(TBool /* aUninstallable */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetDownloadPluginL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetDownloadPluginL(const TDesC8& /* aDownloadPlugin */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetInstallPluginL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetInstallPluginL(const TDesC8& /* aInstallPlugin */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetSize
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::SetSizeL(TInt /* aSize */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::AddEmbeddedEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+AddEmbeddedEntryL(const TUid& /* aUid */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::NumberOfEmbeddedEntries
+// ---------------------------------------------------------------------------
+//
+EXPORT_C TInt CWriteableJavaRegistryPackageEntry::
+NumberOfEmbeddedEntries() const
+{
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::RemoveEmbeddedEntryL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+RemoveEmbeddedEntryL(const TUid& /* aUid */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::EmbeddedEntryByUidL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryEntry*
+CWriteableJavaRegistryPackageEntry::
+EmbeddedEntryByUidL(const TUid& /* aEntryUid */) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::EmbeddedEntryByNumberL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryEntry*
+CWriteableJavaRegistryPackageEntry::
+EmbeddedEntryByNumberL(TInt /* aEntryNum */) const
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetPropertyL
+// Takes ownership of aProperty
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetPropertyL(CJavaProperty* /* aProperty */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::CWriteableJavaRegistryPackageEntry
+// ---------------------------------------------------------------------------
+//
+EXPORT_C CWriteableJavaRegistryPackageEntry::
+CWriteableJavaRegistryPackageEntry(const TUid& aUid) :
+        CWriteableJavaRegistryEntry(aUid),
+        iDownloadPlugin(NULL),
+        iInstallPlugin(NULL)
+{
+}
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SetAttribute
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SetAttributeL(const TDesC& /* aName */, const TDesC& /* aValue */, TBool /* aTrusted */)
+{
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::AttributeL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const MJavaAttribute* CWriteableJavaRegistryPackageEntry::
+AttributeL(const TDesC& /* aName */) const
+{
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::AttributesL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C const RPointerArray<MJavaAttribute>&
+CWriteableJavaRegistryPackageEntry::AttributesL() const
+{
+    return iAttrib;
+}
+
+
+// ---------------------------------------------------------------------------
+// CWriteableJavaRegistryPackageEntry::SerializeAttributesL
+// ---------------------------------------------------------------------------
+//
+EXPORT_C void CWriteableJavaRegistryPackageEntry::
+SerializeAttributesL()
+{
+
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/inc/javapropertyarray.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,208 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javapropertyarray definition
+*
+*/
+
+
+#ifndef JAVAPROPERTYARRAY_H
+#define JAVAPROPERTYARRAY_H
+
+#include <e32base.h>
+#include <s32strm.h>
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+class CJavaProperty;
+
+/**
+ * This class is a container of CJavaProperty objects references.
+ * The class can externalize and internalize the contained CJavaProperty
+ * objects.
+ *
+ * @since S60 v3.2
+ */
+class CJavaPropertyArray :
+        public CBase
+{
+
+public:
+
+    /**
+     * Static method creates a new object of this class.
+     *
+     * @since S60 v3.2
+     * @return a new object of this class.
+     */
+    static CJavaPropertyArray*  NewL();
+
+    /**
+     * Static method creates a new object of this class and
+     * leaves it on cleanup stack.
+     *
+     * @since S60 v3.2
+     * @return a new object of this class.
+     */
+    static CJavaPropertyArray*  NewLC();
+
+    /**
+     * Static method creates a new object of this class and initialize it
+     * by creating JavaProperty objects. For initialization of this class
+     * is used the buffer obtained by serialization of another object of
+     * this class. This object will be a clone of the other object from
+     * which the buffer is obtained. The created JavaProperty objects are
+     * owned by the CJavaPropertyArray object.
+     *
+     * @since S60 v3.2
+     * @see SerializedPropertiesL()
+     * @param aBuffer buffer obtained on serialization of another object
+     *          of this class,
+     */
+    static CJavaPropertyArray*  NewL(TDesC8* aBuffer);
+
+    /**
+     * Static method creates a new object of this class and initialize it
+     * by creating JavaProperty objects. For initialization of this class
+     * is used the buffer obtained by serialization of another object of
+     * this class. This object will be a clone of the other object from
+     * which the buffer is obtained. The created JavaProperty objects are
+     * owned by the CJavaPropertyArray object.
+     *
+     * @since S60 v3.2
+     * @see SerializedPropertiesL()
+     * @param aBuffer buffer obtained on serialization of another object
+     *          of this class,
+     */
+    static CJavaPropertyArray*  NewLC(TDesC8* aBuffer);
+
+    /**
+     * Appends a property object reference.
+     * The appended property object are not owned by this object.
+     *
+     * @since S60 v3.2
+     * @param aProperty property object reference to be appended to this
+     *          container
+     * @return error code of the operation
+     */
+    TInt Append(CJavaProperty* aProperty);
+
+    /**
+     * Returns the number of contained property object references.
+     *
+     * @since S60 v3.2
+     * @return number of contained property references
+     */
+    TInt Count();
+
+    /**
+     * Returns the property object reference located at a specified position.
+     *
+     * @since S60 v3.2
+     * @param aIndex the position of the property object reference
+     * @return the reference of property object at position aIndex
+     */
+    CJavaProperty*  At(TInt aIndex);
+
+    /**
+     * Internalizes the property objects. It is used by ">>" operator.
+     *
+     * @since S60 v3.2
+     * @param aStream internalization happens from this stream
+     */
+    virtual void InternalizeL(RReadStream& aStream);
+
+    /**
+     * Externalizes the property objects. It is used by "<<" operator.
+     *
+     * @since S60 v3.2
+     * @param aStream externalization happens in this stream
+     */
+    virtual void ExternalizeL(RWriteStream& aStream) const;
+
+    /**
+     * Serializes the property objects in a descriptor buffer. This buffer
+     * will be used to reconstruct a new JavaPropertArray object together
+     * with its JavaProperty objects.
+     *
+     * @since S60 v3.2
+     * @see NewL( TDesC8* aBuffer )
+     * @return a buffer containing the property objects in a serialized form
+     */
+    HBufC8* SerializedPropertiesL() const;
+
+    /**
+     * Returns the size needed for serialization.
+     *
+     * @since S60 v3.2
+     * @return size needed for serialization
+     * @see SerializedPropertiesL
+     */
+    TInt Size() const;
+
+    /**
+     * Checks if the given property are contained by the property array.
+     *
+     * @since S60 v3.2
+     * @return true if property array contains the given property
+     */
+    TBool Contains(CJavaProperty& aProperty) const;
+
+    /**
+     * Finds and returns the position of property with the given id.
+     *
+     * @since S60 v3.2
+     * @return the position of the property with the given id or
+     *              KErrNotFound if property does not exists
+     */
+    TInt Find(TInt32 aPropertyId);
+
+    /**
+     * Destructor
+     *
+     * @since S60 v3.2
+     */
+    ~CJavaPropertyArray();
+
+private:
+
+    void ConstructL(TDesC8* aBuffer);
+
+    /**
+     * Deletes the contained java property objects
+     * and remove them from the container.
+     *
+     * @since S60 v3.2
+     */
+    void DeleteProperties();
+
+private:    //members
+
+    // contains the java property refernces
+    RPointerArray<CJavaProperty> iProperties;
+
+    // indicates if the properties are owned or not by the property array
+    TBool iPropertiesOwned;
+};
+
+}//namespace Registry
+}//namespace Manager
+}//namespace Java
+
+#endif // JAVAPROPERTYARRAY_H
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/inc/javaregburstates.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,41 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregburstates definition
+*
+*/
+
+
+#ifndef JAVAREGBURSTATES_H
+#define JAVAREGBURSTATES_H
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// Backup states
+enum TBackupState
+{
+    ENoBackup,
+    EBackuping,
+    ERestoring
+};
+
+}//namespace Registry
+}//namespace Manager
+}//namespace Java
+
+#endif // JAVAREGBURSTATES_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/inc/javaregdef.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,60 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregdef definition
+*
+*/
+
+
+#ifndef JAVAREGDEF_H
+#define JAVAREGDEF_H
+
+#include <e32std.h>
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// name of java registry server
+_LIT(KJavaRegServerName, "!javaregistry");
+
+// the executable name of java registry server
+_LIT(KJavaRegServerExeName, "javaregistry.exe");
+
+// Function ids of client requests
+enum TRequests
+{
+    EInitializeServerUseIntegr,
+    EEntryExists,
+    EGetEntryUids,
+    EGetEntry,
+    EGetEntryFromAll,
+    EFindEntries,
+    EFindAllEntries,
+    EInitializeServerTransId,
+    ESetEntry,
+    ERemoveEntry,
+    ERemoveEntryFromAll,
+    EAllocateUids,
+    ESetBackupState
+};
+
+}//namespace Registry
+}//namespace Manager
+}//namespace Java
+
+#endif // JAVAREGDEF_H
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/inc/javaregproperty.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,126 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregproperty definition
+*
+*/
+
+
+#ifndef JAVAREGPROPERTY_H
+#define JAVAREGPROPERTY_H
+
+#include <e32base.h>
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+/**
+ * CJavaProperty class contains a property ID and a property
+ * value and makes possible to set and get these fields.
+ * The property value is represented as a 16 bit descriptor.
+ *
+ * @since S60 v3.2
+ */
+class CJavaProperty :
+        public CBase
+{
+
+public:
+
+    /**
+     * Constructs a new property object using the given property
+     * ID and value.
+     *
+     * @since S60 v3.2
+     * @param aId java property ID
+     * @param aValue java property value
+     * @return a new java property object
+     */
+    IMPORT_C static CJavaProperty*  NewL(TInt32 aId,
+                                         const TDesC& aValue);
+
+    /**
+     * Constructs a new property object using the given property
+     * ID and value
+     * and leaves the object on the cleanup stack.
+     *
+     * @since S60 v3.2
+     * @param aId java property ID
+     * @param aValue java property value
+     * @return a new java property object
+     */
+    IMPORT_C static CJavaProperty*  NewLC(TInt32 aId,
+                                          const TDesC& aValue);
+
+    /**
+     * Destructs property object.
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C ~CJavaProperty();
+
+    /**
+     * Returns the property Id.
+     *
+     * @since S60 v3.2
+     * @return the property ID
+     */
+    IMPORT_C TInt32 Id() const;
+
+    /**
+     * Returns the property value.
+     *
+     * @since S60 v3.2
+     * @return the property value
+     */
+    IMPORT_C const TDesC& Value() const;
+
+    /**
+     * Compares two objects of this type and returns true if
+     * they are identical.
+     *
+     * @since S60 v3.2
+     * @return true if the two objects are identical
+     */
+    IMPORT_C TBool operator==(const CJavaProperty& aProp);
+
+private:
+
+    /**
+     * ConstructL
+     *
+     * @since S60 v3.2
+     * @param aId java property ID
+     * @param aValue java property value
+     */
+    void ConstructL(TInt32 aId, const TDesC& aValue);
+
+private:    //members
+
+    // property ID
+    TInt32 iId;
+
+    // property value
+    HBufC*  iValue;
+};
+
+}//namespace Registry
+}//namespace Manager
+}//namespace Java
+
+#endif // JAVAREGPROPERTY_H
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/inc/javareguidarrayconv.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,88 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javareguidarrayconv definition
+*
+*/
+
+
+#ifndef JAVAREGUIDARRAYCONV_H
+#define JAVAREGUIDARRAYCONV_H
+
+// INCLUDES
+#include <e32std.h>
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// CLASS DECLARATION
+/**
+ * This class has only static methods, that help to store uids
+ * in descriptors, and to retrieve them. It is mainly used
+ * by the javaregistry internal API.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class JavaRegUidArrayConverter
+{
+public:
+
+    /**
+     * JavaRegUidArrayConverter::GetTUids method converts the descriptor
+     * parameter to a RArray<TUid> storing entry uids.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing certificate chains.
+     * @param aUids [out] Returning entry uids.
+     * @return One of the system-wide error codes.
+     */
+    static TInt GetTUids(const TDesC& aValue, RArray<TUid>& aUids);
+
+    /**
+     * JavaRegUidArrayConverter::GetTUidsL method converts the descriptor
+     * parameter to a RArray<TUid> storing entry uids.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue A descriptor storing certificate chains.
+     * @param aUids [out] Returning entry uids.
+     */
+    static void GetTUidsL(const TDesC& aValue, RArray<TUid>& aUids);
+
+    /**
+     * JavaRegUidArrayConverter::StoreTUidsL method stores the
+     * entry uids ( given in the first parameter ),
+     * into the descriptor paramameter, that is instantiated by
+     * this method.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aValue The uids to be stored.
+     * @param aDes [out] Descriptor parameter, storing, and the returning
+     *        the uids.
+     */
+    static void StoreTUidsL(const RArray<TUid>& aValue, HBufC*& aDes);
+};
+
+}//namespace Registry
+}//namespace Manager
+}//namespace Java
+
+#endif // JAVAREGUIDARRAYCONV_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/src/javapropertyarray.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,45 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javapropertyarray implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+#include "javapropertyarray.h"
+
+using namespace Java::Manager::Registry;
+
+// ---------------------------------------------------------------------------
+// CJavaPropertyArray::~CJavaPropertyArray
+// ---------------------------------------------------------------------------
+CJavaPropertyArray::~CJavaPropertyArray()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CJavaPropertyArray::InternalizeL
+// ---------------------------------------------------------------------------
+void CJavaPropertyArray::InternalizeL(RReadStream&  /* aStream */)
+{
+    User::Leave(KErrNotSupported);
+}
+
+// ---------------------------------------------------------------------------
+// CJavaPropertyArray::ExternalizeL
+// ---------------------------------------------------------------------------
+void CJavaPropertyArray::ExternalizeL(RWriteStream&  /* aStream */) const
+{
+    User::Leave(KErrNotSupported);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/javaregistry/clientserver/common/src/javaregproperty.cpp	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,76 @@
+/*
+* Copyright (c) 2006-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javaregproperty implementation
+*              : (__JAVA_EXCLUDED VERSION)
+*
+*/
+
+
+#include "javaregproperty.h"
+
+using namespace Java::Manager::Registry;
+
+// ============================ MEMBER FUNCTIONS ==============================
+
+// ---------------------------------------------------------------------------
+// CJavaProperty::NewL
+// ---------------------------------------------------------------------------
+
+EXPORT_C CJavaProperty* CJavaProperty::NewL(TInt32 /* aId */,
+        const TDesC&  /* aValue */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaProperty::NewLC
+// ---------------------------------------------------------------------------
+EXPORT_C CJavaProperty* CJavaProperty::NewLC(TInt32 /* aId */,
+        const TDesC& /* aValue */)
+{
+    User::Leave(KErrNotSupported);
+    return NULL;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaProperty::~CJavaProperty
+// ---------------------------------------------------------------------------
+EXPORT_C CJavaProperty::~CJavaProperty()
+{
+}
+
+// ---------------------------------------------------------------------------
+// CJavaProperty::Id
+// ---------------------------------------------------------------------------
+EXPORT_C TInt32 CJavaProperty::Id() const
+{
+    return 0;
+}
+
+// ---------------------------------------------------------------------------
+// CJavaProperty::Value
+// ---------------------------------------------------------------------------
+EXPORT_C const TDesC& CJavaProperty::Value() const
+{
+    return KNullDesC;
+}
+
+// ---------------------------------------------------------------------------
+// operator==
+// ---------------------------------------------------------------------------
+EXPORT_C TBool CJavaProperty::operator==(const CJavaProperty& /* aProp */)
+{
+    return EFalse;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/java_stubs/rom/javastubs.iby	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,28 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+* 
+* Description:
+*
+*/
+
+
+#ifndef __JAVASTUBS_IBY__
+#define __JAVASTUBS_IBY__
+
+file=ABI_DIR\BUILD_DIR\javaenvinfo.dll              \SHARED_LIB_DIR\javaenvinfo.dll
+file=ABI_DIR\BUILD_DIR\javaregistryclient.dll       \SHARED_LIB_DIR\javaregistryclient.dll
+file=ABI_DIR\BUILD_DIR\javadebugapi.dll             \SHARED_LIB_DIR\javadebugapi.dll
+
+#endif //  __JAVASTUBS_IBY__
+
+//  End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/group/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,21 @@
+/*
+* Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Includes all the Java Platform API specific bld.inf files, 
+*               which export files.
+*
+*/
+
+#include "../java_registry_api/build/bld.inf"
+#include "../java_env_info_api/build/bld.inf"
+#include "../java_debug_api/build/bld.inf"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_debug_api/build/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,23 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Build information file for Java Debug API.
+*
+*/
+PRJ_EXPORTS
+
+#include <platform_paths.hrh>
+
+../inc/javadebugapi.h       APP_LAYER_PLATFORM_EXPORT_PATH(javadebugapi.h)
+../inc/javadiagnostic.h     APP_LAYER_PLATFORM_EXPORT_PATH(javadiagnostic.h)
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_debug_api/inc/javadebugapi.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,85 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Debug API
+*
+*/
+
+
+#ifndef JAVADEBUGAPI_H
+#define JAVADEBUGAPI_H
+
+#include <e32cmn.h>
+
+/**
+ * Java Debug API allows it's users to install, remove, start and
+ * stop Java applications.
+ *
+ * @lib javadebugapi.lib
+ * @since S60 v9.2
+ */
+
+namespace java
+{
+namespace debug
+{
+
+/**
+ * Installs Java application.
+ * Java application is installed silently i.e. no prompts are shown to the user.
+ * @param[in] aFilename shall point to local JAD or JAR file
+ * @param[out] aSuiteUid returns the suite uid assigned to the application
+ * @param[out] aApplicationUid returns a list of application uids assigned to applications inside suite uid
+ * @capability TrustedUI
+ * @return true if installation is successful
+ */
+IMPORT_C TBool installApp(HBufC& aFilename, TUid& aSuiteUid, RArray<TUid>& aApplicationUid);
+
+/**
+ * Uninstalls Java application.
+ * Java application is removed silently i.e. no prompts are shown to the user.
+ * If application uid is given then the application suite it belongs is removed too.
+ * @param[in] aUid application suite uid (or application uid)
+ * @capability TrustedUI
+ * @return true if application is uninstalled successfully
+ */
+IMPORT_C TBool uninstallApp(TUid aSuiteUid);
+
+/**
+ * Starts Java application.
+ * @param[in] aApplicationUid application uid
+ * @param[in] aUeiParameters includes arguments defined in Unified Emulator Interface (UEI) specification.
+ * If aUeiParameters contains unsupported options then those options are discarded silently.
+ * Supported arguments:
+ *   -Xverbose[:options]
+ *   -Xdebug -Xrunjdwp:name=value[,name=value[...]]
+ * For example, to start Java application in debug mode and set full tracing on
+ * following UIE arguments could be given:
+ * "-Xdebug -Xrunjdwp:server=y,address=localhost:8000 -Xverbose:all"
+ * @capability NetworkControl
+ * @return true if application is started
+ */
+IMPORT_C TBool startApp(TUid aApplicationUid, HBufC& aUeiParameters);
+
+/**
+ * Stops Java application.
+ * @param[in] aApplicationUid application uid
+ * @capability PowerMgmt
+ * @return true if application is stopped
+ */
+IMPORT_C TBool stopApp(TUid aApplicationUid);
+
+} // end namespace debug
+} // end namespace java
+
+#endif // JAVADEBUGAPI_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_debug_api/inc/javadiagnostic.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,138 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Diagnostic API
+*
+*/
+
+
+#ifndef JAVADIAGNOSTIC_H
+#define JAVADIAGNOSTIC_H
+
+#include <e32cmn.h>
+
+namespace java
+{
+namespace debug
+{
+
+/**
+* DiagnosticListener will be called when Java Runtime outputs to standard out
+* or makes log message.
+*
+* DiagnosticListener may not perform any long lasting or blocking tasks
+* in the callback.
+*
+* Example below illustrates how Java Runtime outputs could be logged to file.
+*
+* @code
+* class LoggingListener : public DiagnosticListener
+* {
+* public:
+*     virtual void systemOut(const TDesC8& aData) { flog(aData); };
+*     virtual void systemErr(const TDesC8& aData) { flog(aData); };
+*     virtual void log(const TDesC8& aData) { flog(aData); };
+* protected:
+*     virtual void flog(const TDesC8& aData) {
+*         RFileLogger::Write(KLogDirectory, KLogFileName, EFileLoggingModeAppendRaw, aData);
+*     };
+* }
+*
+* LoggingListener listener;
+* JavaDiagnostic* jd = JavaDiagnostic::createInstance();
+* jd->setDiagnosticListener(listener);
+* ...
+* jd->removeDiagnosticListener();
+* delete jd;
+* @endcode
+*/
+class DiagnosticListener
+{
+public:
+    /**
+     * Called when Java Runtime writes to the standard output stream
+     * @param[in] aText may contain multiple lines of data
+     */
+    virtual void systemOut(const TDesC8& aText) = 0;
+
+    /**
+     * Called when Java Runtime writes to the standard error stream
+     * @param[in] aText may contain multiple lines of data
+     */
+    virtual void systemErr(const TDesC8& aText) = 0;
+
+    /**
+     * Called when Java Runtime makes log writing
+     * @param[in] aText may contain multiple lines of data ending with newline
+     */
+    virtual void log(const TDesC8& aText) = 0;
+};
+
+
+/**
+* Java Diagnostic can be used to monitor Java Runtime standard outs and
+* log messages.
+*
+* DiagnosticListener should be set before making any Java Debug API operation,
+* like installing or starting Java application, to ensure that all output
+* is captured.
+*
+* There can be only one running Java Diagnostic instance in the system, i.e.
+* instance with set listener.
+*
+* @code
+* JavaDiagnostic* jd = JavaDiagnostic::createInstance();
+* jd->setDiagnosticListener(listener);
+* ...
+* jd->removeDiagnosticListener();
+* delete jd;
+* @endcode
+*
+* @lib javadebugapi.lib
+* @since S60 v9.2
+*/
+class JavaDiagnostic
+{
+public:
+    virtual ~JavaDiagnostic() {};
+
+    /**
+     * Factory method for JavaDiagnostic.
+     * Returned pointer must be deleted once done using it.
+     * @return new JavaDiagnostic object
+     */
+    IMPORT_C static JavaDiagnostic* createInstance();
+
+    /**
+     * Sets listener and starts monitoring Java Runtime standard outs and log
+     * messages. There can be only one running JavaDiagnostic instance in
+     * the system.
+     * @param[in] aListener will be called when Java Runtime outputs to standard out
+     *                      or makes log message
+     * @return KErrNone if listener was set and monitoring was started succesfully
+     * @return KErrAlreadyExists if JavaDiagnostic is already running or setDiagnosticListener
+     *              is called twice without removing listener in between
+     */
+    virtual TInt setDiagnosticListener(DiagnosticListener& aListener) = 0;
+
+    /**
+     * Removes listener and stops monitoring Java Runtime standard outs and
+     * log messages.
+     */
+    virtual void removeDiagnosticListener() = 0;
+};
+
+} // end namespace debug
+} // end namespace java
+
+#endif // JAVADIAGNOSTIC_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_env_info_api/build/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,22 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Build information file for Java Env Info API.
+*
+*/
+PRJ_EXPORTS
+
+#include <platform_paths.hrh>
+
+../inc/javadomainpskeys.h         APP_LAYER_PLATFORM_EXPORT_PATH (javadomainpskeys.h)
+../inc/javaenvinfo.h              APP_LAYER_PLATFORM_EXPORT_PATH (javaenvinfo.h)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_env_info_api/inc/javadomainpskeys.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,71 @@
+/*
+* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  javautils pskey definitions
+*
+*/
+
+#ifndef JAVADOMAINPSKEYS_H
+#define JAVADOMAINPSKEYS_H
+
+/**
+ * This header provides info about Java environment PS keys.
+ *
+ * During Java application installation the JavaInstaller updates the
+ * installation state to P&S keys. The states are changed as follows:
+ *
+ *   Installation (or upgrade) begins: iUid = 0, iProgress = 0, iState = INSTALLING
+ *   Installation proceeds: iUid = no_change, iProgress = xx%, iState = no_change
+ *   Installation completes: iUid = suiteUid, iProgress = 100, iState = INSTALL_OK
+ *   Installation fails: iUid = suiteUid, iProgress = 0, iState = INSTALL_FAIL
+ *
+ *   Uninstallation begins: iUid = 0, iProgress = 0, iState = UNINSTALLING
+ *   Uninstallation proceeds: iUid = no_change, iProgress = xx%, iState = no_change
+ *   Uninstallation completes: iUid = suiteUid, iProgress = 100, iState = UNINSTALL_OK
+ *   Uninstallation fails: iUid = suiteUid, iProgress = 0, iState = UNINSTALL_FAIL
+ *
+ *
+ *
+ * P&S keys that are updated:
+ *
+ *   iUid ==> KPSUidJavaLatestInstallation
+ *   iProgress ==> KPSUidJavaLatestInstallationProgress
+ *   iState ==> KPSUidJavaLatestInstallationState
+ *
+ * Values for the P&S keys:
+ *
+ *   INSTALLING = 0x100;
+ *   INSTALL_OK = 0x101;
+ *   INSTALL_FAIL = 0x102;
+ *   UNINSTALLING = 0x200;
+ *   UNINSTALL_OK = 0x201;
+ *   UNINSTALL_FAIL = 0x202;
+ */
+
+#ifndef KPSUidJavaLatestInstallation
+/** PS flag for the most recent installed Java application. */
+#define KPSUidJavaLatestInstallation 0x10282567
+#endif
+
+#ifndef KPSUidJavaLatestInstallationProgress
+/** PS flag for indicating JavaInstaller installation progress. */
+#define KPSUidJavaLatestInstallationProgress 0x20019546
+#endif
+
+#ifndef KPSUidJavaLatestInstallationState
+/** PS flag for JavaInstaller latest installation state. */
+#define KPSUidJavaLatestInstallationState 0x20019547
+#endif
+
+#endif // JAVADOMAINPSKEYS_H
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_env_info_api/inc/javaenvinfo.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,79 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Java environment information utilities
+*
+*/
+
+#ifndef JAVAENVINFO_H
+#define JAVAENVINFO_H
+
+//  INCLUDES
+#include <e32cmn.h>
+
+// CLASS DECLARATION
+
+namespace Java
+{
+/**
+ * Class provides information about Java environment version.
+ *
+ * @lib javaenvinfo.lib
+ * @since S60 5.1
+ */
+NONSHARABLE_CLASS(JavaEnvInfo)
+{
+public:
+
+    /**
+      * Returns the Java environment version
+      *
+      * @since S60 5.1
+      * @return TVersion instance representing the Java environment version
+      */
+    IMPORT_C static TVersion Version();
+
+    /**
+      * Returns the part of the user agent header describing the Java environment.
+      * This string can be used by Browser or any other HTTP client when sending
+      * HTTP requests to describe the supported Java environment.
+      *
+      * The returned string could be for example
+      * "Configuration/CLDC-1.1 Profile/MIDP-2.1".
+      *
+      * @since S60 5.1
+      * @return User Agent header string. Caller is responsible for deleting
+      * this when done with it.
+      */
+    IMPORT_C static HBufC* GetUserAgentHeaderL();
+
+    /**
+      * Returns the Java configuration and profile information in human
+      * readable format.
+      *
+      * The used format is <profile> ", " <configuration> - as an example
+      * "MIDP 2.1, CLDC 1.1".
+      *
+      * @since S60 5.1
+      * @return String in the format. Caller is responsible for deleting
+      * this when done with it.
+      */
+    IMPORT_C static HBufC* GetPlatformInfoL();
+private:
+
+    static TVersion JavaEnvInfo::GetJavaVersionL();
+};
+
+}
+
+#endif // JAVAENVINFO_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/build/bld.inf	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,31 @@
+/*
+* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API build file
+*
+*/
+
+PRJ_EXPORTS
+
+#include <platform_paths.hrh>
+
+../inc/javaregistryentry.h                APP_LAYER_PLATFORM_EXPORT_PATH(javaregistryentry.h)
+../inc/javaregistryapplicationentry.h     APP_LAYER_PLATFORM_EXPORT_PATH(javaregistryapplicationentry.h)
+../inc/javaregistryentrytype.h            APP_LAYER_PLATFORM_EXPORT_PATH(javaregistryentrytype.h)
+../inc/javaregistrypackageentry.h         APP_LAYER_PLATFORM_EXPORT_PATH(javaregistrypackageentry.h)
+../inc/javaregistryincludes.h             APP_LAYER_PLATFORM_EXPORT_PATH(javaregistryincludes.h)
+../inc/javaregistry.h                     APP_LAYER_PLATFORM_EXPORT_PATH(javaregistry.h)
+../inc/javaattribute.h                    APP_LAYER_PLATFORM_EXPORT_PATH(javaattribute.h)
+../inc/mjavaattribute.h                   APP_LAYER_PLATFORM_EXPORT_PATH(mjavaattribute.h)
+../inc/appversion.h                       APP_LAYER_PLATFORM_EXPORT_PATH(appversion.h)
+../inc/appversion.inl                     APP_LAYER_PLATFORM_EXPORT_PATH(appversion.inl)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/appversion.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,117 @@
+/*
+* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+#ifndef APPVERSION_H
+#define APPVERSION_H
+
+/**
+ * This class is used to represent the version of a Java application.
+ * The standard TVersion provided in Symbian OS can't be used because it
+ * doesn't allow for major and minor version numbers above 127.
+ */
+class TAppVersion
+{
+public:
+
+    /**
+     * This constructor creates a 0.0.0 version.
+     */
+    inline TAppVersion();
+
+    /**
+     * This is the copy constructor.
+     * @param aAppVersion is the app version that will be copied
+     */
+    inline TAppVersion(const TAppVersion& aAppVersion);
+
+    /**
+     * This constructor creates a version according to the arguments.
+     * @param aMajor is the major version number
+     * @param aMinor is the minor version number
+     * @param aBuild is the micro version number
+     */
+    inline TAppVersion(TInt aMajor, TInt aMinor, TInt aBuild);
+
+    /**
+     * Assignment operator.
+     * @param aAppVersion is the app version to be assigned to the object
+     */
+    inline TAppVersion& operator =(const TAppVersion& aAppVersion);
+
+    /**
+     * Equality operator.
+     * @param aAppVersion is the app version to be compared with
+     * the object's app version
+     * @return ETrue if the app versions are the same, EFalse otherwise
+     */
+    inline TBool operator ==(const TAppVersion& aAppVersion) const;
+
+    /**
+     * Inequality operator.
+     * @param aAppVersion is the app version to be compared with
+     * the object's app version
+     * @return ETrue if the app versions are not the same, EFalse otherwise
+     */
+    inline TBool operator !=(const TAppVersion& aAppVersion) const;
+
+    /**
+     * Less than operator.
+     * @param aAppVersion is the app version to be compared with
+     * the object's app version
+     * @return ETrue if the app version to the left of the operator is less
+     * than the version to the right, EFalse otherwise
+     */
+    inline TBool operator <(const TAppVersion& aAppVersion) const;
+
+    /**
+     * Greater than operator.
+     * @param aAppVersion is the app version to be compared with
+     * the object's app version
+     * @return ETrue if the app version to the left of the operator is
+     * greater than the version to the right, EFalse otherwise
+     */
+    inline TBool operator >(const TAppVersion& aAppVersion) const;
+
+    /**
+     * Less or equal operator.
+     * @param aAppVersion is the app version to be compared with
+     * the object's app version
+     * @return ETrue if the app version to the left of the operator is
+     * less than or equal to the version to the right, EFalse otherwise
+     */
+    inline TBool operator <=(const TAppVersion& aAppVersion) const;
+
+    /**
+     * Greater or equal operator.
+     * @param aAppVersion is the app version to be compared with
+     * the object's app version
+     * @return ETrue if the app version to the left of the operator is
+     * greater than or equal to the version to the right, EFalse otherwise
+     */
+    inline TBool operator >=(const TAppVersion& aAppVersion) const;
+
+public:
+    TInt iMajor;
+    TInt iMinor;
+    TInt iBuild;
+};
+
+#include <appversion.inl>
+
+#endif // APPVERSION_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/appversion.inl	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,72 @@
+/*
+* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+TAppVersion::TAppVersion()
+        : iMajor(0), iMinor(0), iBuild(0)
+{
+}
+
+TAppVersion::TAppVersion(const TAppVersion& aAppVersion)
+        : iMajor(aAppVersion.iMajor), iMinor(aAppVersion.iMinor), iBuild(aAppVersion.iBuild)
+{
+}
+
+TAppVersion::TAppVersion(TInt aMajor, TInt aMinor, TInt aBuild)
+        : iMajor(aMajor), iMinor(aMinor), iBuild(aBuild)
+{
+}
+
+TAppVersion& TAppVersion::operator =(const TAppVersion& aAppVersion)
+{
+    // Assignment operator using the copy constructor
+    return *new(this) TAppVersion(aAppVersion);
+}
+
+TBool TAppVersion::operator ==(const TAppVersion& aAppVersion) const
+{
+    return ((iMajor == aAppVersion.iMajor) &&
+            (iMinor == aAppVersion.iMinor) &&
+            (iBuild == aAppVersion.iBuild));
+}
+
+TBool TAppVersion::operator !=(const TAppVersion& aAppVersion) const
+{
+    return !(*this == aAppVersion);
+}
+
+TBool TAppVersion::operator <(const TAppVersion& aAppVersion) const
+{
+    return ((iMajor < aAppVersion.iMajor) ||
+            ((iMajor == aAppVersion.iMajor) && (iMinor < aAppVersion.iMinor)) ||
+            ((iMajor == aAppVersion.iMajor) && (iMinor == aAppVersion.iMinor) &&
+             (iBuild < aAppVersion.iBuild)));
+}
+
+TBool TAppVersion::operator >(const TAppVersion& aAppVersion) const
+{
+    return (aAppVersion < *this);
+}
+
+TBool TAppVersion::operator <=(const TAppVersion& aAppVersion) const
+{
+    return !(*this > aAppVersion);
+}
+
+TBool TAppVersion::operator >=(const TAppVersion& aAppVersion) const
+{
+    return !(*this < aAppVersion);
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaattribute.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,101 @@
+/*
+* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef JAVAATTRIBUTE_H
+#define JAVAATTRIBUTE_H
+
+
+#include <e32base.h>
+#include "mjavaattribute.h"
+
+/**
+ * This class is used to access Java application attributes.
+ * In case of MIDlets, these attributes are defined in
+ * Java Application Descriptor (JAD) and JAR manifest files.
+ */
+namespace Java
+{
+class CJavaAttribute: public CBase, public MJavaAttribute
+{
+public:
+
+    IMPORT_C virtual ~CJavaAttribute();
+
+    /**
+     * Construct a new attribute using the given name, value and trusted
+     *
+     * @since S60 v5.0
+     * @param aName is attribute name
+     * @param aValue is attribute value
+     * @param aTrusted is true if attribute can be trusted.
+     * @return a new CJavaAttribute object
+     */
+    IMPORT_C static CJavaAttribute* NewL(const TDesC& aName, const TDesC& aValue, TBool aTrusted);
+    /**
+     * Construct a new attribute using the given name, value and trusted
+     * and leaves the object on the cleanup stack
+     *
+     * @since S60 v5.0
+     * @param aName is attribute name
+     * @param aValue is attribute value
+     * @param aTrusted is true if attribute can be trusted
+     * @return a new CJavaAttribute object
+     */
+    IMPORT_C static CJavaAttribute* NewLC(const TDesC& aName, const TDesC& aValue, TBool aTrusted);
+
+    /**
+     * from MJavaAttribute
+     */
+public:
+    virtual const TDesC& Name() const;
+    virtual const TDesC& Value() const;
+    virtual TBool Trusted() const;
+
+
+private:
+    /**
+     * ConstructL
+     *
+     * @since S60 v5.0
+     * @param aName
+     * @param aValue
+     * @param aTrusted
+     */
+    void ConstructL(const TDesC& aName, const TDesC& aValue, TBool aTrusted);
+
+private:
+    /**
+     * Attribute name
+     */
+    HBufC* iName;
+    /**
+     * Attribute value
+     */
+    HBufC* iValue;
+    /**
+     * this value indicate, if attribute is trusted (= signed JAR file +
+     * attribute present in JAR manifest) or not
+     */
+    TBool iTrusted;
+};
+} // namespace Java
+
+#endif // JAVAATTRIBUTE_H
+
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaregistry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,193 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  The main class of Java Registy API. Java Registy API
+*               can be used to query the installed Java applications
+*               and their properties.
+*
+*/
+
+
+
+// JAVAREGISTRY.H
+#ifndef JAVAREGISTRY_H
+#define JAVAREGISTRY_H
+
+#include <e32base.h>
+#include "javaregistryentrytype.h"
+
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class CWriteableJavaRegistry;
+
+}// namespace Registry
+}// namespace Manager
+}// namespace Java
+
+namespace Java
+{
+class CJavaRegistryEntry;
+
+/**
+ * This class provides the Platform API for JavaRegistry.
+ * It allows for clients to retrieve properties of
+ * Java install packages, applications, services etc.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CJavaRegistry : public CBase
+{
+
+    // Constructors
+public:
+
+    /**
+     * Creates a CJavaRegistry object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @return A pointer to a CJavaRegistry object.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CJavaRegistry* NewL();
+
+    /**
+     * Creates a CJavaRegistry object.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @return A pointer to a CJavaRegistry object.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C static CJavaRegistry* NewLC();
+
+
+public:
+
+    // Generic methods
+
+    /**
+     * Returns whether registry entry with the specified Uid exists.
+     * Registry entries representing entities installed on
+     * removable media which are currently not present in the device
+     * are considered as not existent.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid to be checked.
+     * @return ETrue if the registry entry exists, EFalse otherwise.
+     */
+    IMPORT_C TBool RegistryEntryExistsL(const TUid& aUid) const;
+
+    /**
+     * Returns an array of Uids of the existing registry entries.
+     * Uids of registry entries representing entities installed on
+     * removable media which are currently not present in the device
+     * are not returned.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUids [out] Uids of the registry entries.
+     */
+    IMPORT_C void GetRegistryEntryUidsL(RArray<TUid>& aUids) const;
+
+    /**
+     * Returns an array of Uids of the existing registry entries.
+     * Entries are searched by the specified type.
+     * Uids of registry entries representing entities installed on
+     * removable media which are currently not present in the device
+     * are not returned.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aType Type of registry entries whose Uids are to be returned.
+     * @param aUids [out] Uids of the matching registry entries.
+     */
+    IMPORT_C void GetRegistryEntryUidsL
+    (TJavaRegistryEntryType aType, RArray<TUid>& aUids) const;
+
+    /**
+     * Returns the corresponding registry entry for a given Uid.
+     * The returned entry can be casted to the appropriate subclass
+     * according to the type property. If type is in the package range
+     * ( EGeneralPackage <= entryType < EGeneralApplication ), it can
+     * be casted to CJavaRegistryPackageEntry, and if type is
+     * in the application range ( EGeneralApplication <= entryType ),
+     * it can be casted to CJavaRegistryApplicationEntry.
+     * Registry entries representing entities installed on
+     * removable media which are currently not present in the device
+     * are not returned.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aUid The Uid of the entry to be retrieved
+     * @return The returned registry entry or null if registry entry
+     *         not found. Caller takes over the ownership of the object
+     *         being transferred.
+     */
+    IMPORT_C CJavaRegistryEntry* RegistryEntryL(const TUid& aUid) const;
+
+    // Destructor
+    /**
+     * CJavaRegistry::~CJavaRegistry destructor
+     *
+     * @since S60 v3.2
+     */
+    virtual ~CJavaRegistry();
+
+private:
+
+    // Constructor
+
+    /**
+     * CJavaRegistry::CJavaRegistry constructor
+     *
+     * @since S60 v3.2
+     */
+    CJavaRegistry();
+
+    // 2nd phase constructor
+
+    /**
+     * CJavaRegistry::ConstructL method
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     */
+    void ConstructL();
+
+private: // Data
+
+
+    /**
+     * CJavaRegistry::iJavaReg member
+     * Pointer Owned
+     * @since S60 v3.2
+     */
+    Java::Manager::Registry::CWriteableJavaRegistry* iJavaReg;
+
+};
+
+}// namespace Java
+
+#endif // JAVAREGISTRY_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaregistryapplicationentry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,137 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef JAVAREGISTRYAPPLICATIONENTRY_H
+#define JAVAREGISTRYAPPLICATIONENTRY_H
+
+#include <e32base.h>
+#include <e32cmn.h>
+#include <f32file.h>
+#include "javaregistryentry.h"
+#include "javaregistryentrytype.h"
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class CWriteableJavaRegistryApplicationEntry;
+
+}// namespace Registry
+}// namespace Manager
+
+// FORWARD DECLARATION
+class CJavaRegistryPackageEntry;
+
+/**
+ * This subclass of CJavaRegistryEntry supports attributes
+ * for single application, that can't contain embedded entries.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CJavaRegistryApplicationEntry : public CJavaRegistryEntry
+{
+public:
+
+
+    /**
+     * CJavaRegistryApplicationEntry::CJavaRegistryApplicationEntry
+     * constructor
+     *
+     * @since S60 v3.2
+     * @param aWritableEntry Pointer to a writable entry, to delegate
+     *          getter methods. Pointer ownership taken.
+     */
+    CJavaRegistryApplicationEntry(Java::Manager::Registry::
+                                  CWriteableJavaRegistryApplicationEntry* aWritableEntry);
+
+    /**
+     * Tells if this application is startable.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the application is startable, EFalse otherwise.
+     *         Default value if not set: ETrue.
+     */
+    IMPORT_C TBool IsStartable() const;
+
+    /**
+     * Tells if this application must be shown in Application Shell or
+     * it must rather be hidden.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the application is shown in Application Shell,
+     *         EFalse otherwise.
+     *         Default value if not set: ETrue.
+     */
+    IMPORT_C TBool IsVisible() const;
+
+    /**
+     * Tells if the end user can not uninstall this application.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the application is resident, EFalse otherwise.
+     *         Default value if not set: EFalse.
+     */
+    IMPORT_C TBool IsResident() const;
+
+    /**
+     * Gets the group name of this application. This property tells in
+     * which folder the application icon shall appear. It can be a
+     * null-string: in that case the Installed folder will be hosting
+     * midlet icons.
+     *
+     * @since S60 v3.2
+     * @return Group name of this application.
+     *         Default value if not set:
+     */
+    IMPORT_C const TDesC& GroupName() const;
+
+    /**
+     * Gets a reference to the install package entry, which is the parent
+     * of this application. E.g. if this entry represents a MIDlet this
+     * method returns a reference to the corresponding MIDlet Suite entry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @return a CJavaRegistryEntry object. Caller takes over the
+     *         ownership of the object being transferred.
+     */
+    IMPORT_C CJavaRegistryPackageEntry* PackageEntryL() const;
+
+protected:
+
+    /**
+     * CJavaRegistryApplicationEntry::WritableEntry method returns the member
+     * of the parent class, but first casts it to
+     * CWriteableJavaRegistryApplicationEntry.
+     *
+     * @since S60 v3.2
+     * @return Returns the member of this class.
+     */
+    Java::Manager::Registry::
+    CWriteableJavaRegistryApplicationEntry* WritableEntry() const;
+
+};
+
+} // namespace Java
+
+#endif // JAVAREGISTRYAPPLICATIONENTRY_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaregistryentry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,206 @@
+/*
+* Copyright (c) 2005-2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef JAVAREGISTRYENTRY_H
+#define JAVAREGISTRYENTRY_H
+
+#include <e32base.h>
+#include <e32cmn.h>
+#include <f32file.h>
+#include "javaregistryentrytype.h"
+#include "javaattribute.h"
+
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class CWriteableJavaRegistryEntry;
+
+}// namespace Registry
+}// namespace Manager
+
+/**
+ * This class provides the Domain API for entries in JavaRegistry.
+ * This class is intended for further derivation.
+ * It supports only those attributes which exist in all types of
+ * entries.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CJavaRegistryEntry : public CBase
+{
+public:
+
+    /**
+     * Gets the Uid of this registry entry.
+     *
+     * @since S60 v3.2
+     * @return A TUid object.
+     */
+    IMPORT_C TUid Uid() const;
+
+    /**
+     * Gets the type of this registry entry.
+     * Enumeration TJavaRegistryEntryType defines the currently possible
+     * options. Mandatory property.
+     *
+     * @since S60 v3.2
+     * @return Type of this registry entry.
+     */
+    IMPORT_C TJavaRegistryEntryType Type() const;
+
+    /**
+     * Gets the drive letter where the content of the installation package
+     * has been installed.
+     *
+     * @since S60 v3.2
+     * @return Drive letter where the content of the installation package
+     *         has been installed.
+     *         Default value if not set: EDriveC.
+     */
+    IMPORT_C TDriveNumber Drive() const;
+
+    /**
+     * Gets the name of the entity (midlet, suite, etc.) this entry
+     * represents.
+     *
+     * @since S60 v3.2
+     * @return Name of the entity this entry represents.
+     *         Default value if not set: KNullDesC.
+     */
+    IMPORT_C const TDesC& Name() const;
+
+    /**
+     * Returns the number of certificate chains belonging to the entity
+     * this entry represents.
+     *
+     * @since S60 v3.2
+     * @return Number of certificate chains.
+     */
+    IMPORT_C TInt NumberOfCertificateChains() const;
+
+    /**
+     * Returns the n-th certificate chain of the entity this entry
+     * represents consisting of X.509 version 3 certificates
+     * in their DER encoded format concatenated together
+     * without any separators.
+     * All certificate chains are returned indifferent if they could be
+     * validated or not.
+     * This format is directly suitable to be used with
+     * function CX509CertChain::DecodeCertsL().
+     *
+     * @since S60 v3.2
+     * @param aChain Zero-based index of the certificate chain to be
+     *               retrieved.
+     * @return N-th certificate chain
+     *         Default value if not set: KNullDesC8.
+     */
+    IMPORT_C const TDesC8& CertificateChain(TInt aChain) const;
+
+    /**
+     * Returns the content id of the entity this entry represents.
+     * The content id can be used to check if a DRM protected entity
+     * has enough right to be launched or not.
+     * The method can also be used to check if the entity is DRM
+     * protected or not.
+     *
+     * @since S60 v3.2
+     * @return Content id of the entity this entry represent or
+     *          KNullDesC if the entity is not DRM protected.
+     */
+    IMPORT_C const TDesC& DrmContentId() const;
+
+    /**
+     * CJavaRegistryEntry::~CJavaRegistryEntry method
+     * Destructor
+     *
+     * @since S60 v3.2
+     */
+    IMPORT_C ~CJavaRegistryEntry();
+
+    /**
+     * CJavaRegistryEntry::Attribute method gets the
+     * additional attribute.
+     *
+     * @since S60 v5.0
+     * @param aName The name the searched attribute.
+     * @return MJavaAttribute poiter to instance, which contain attribute.
+     * If attribute doesn't exist return NULL.
+     */
+    IMPORT_C const MJavaAttribute*
+    CJavaRegistryEntry::AttributeL(const TDesC& aName) const;
+
+    /**
+     * CJavaRegistryEntry::Attributes method gets the
+     * array of additional attributes.
+     *
+     * @since S60 v5.0
+     * @return RPointerArray& with all additional attributes.
+     */
+    IMPORT_C const RPointerArray<MJavaAttribute>&
+    CJavaRegistryEntry::AttributesL() const;
+
+protected:
+
+    /**
+     * CJavaRegistryEntry::CJavaRegistryEntry constructor
+     *
+     * @since S60 v3.2
+     * @param aWritableEntry Pointer to a writable entry, to delegate
+     *          getter methods. Pointer ownership taken.
+     */
+    CJavaRegistryEntry(Java::Manager::Registry::
+                       CWriteableJavaRegistryEntry* aWritableEntry);
+
+    /**
+     * CJavaRegistryEntry::WritableEntry method returns the member
+     * of this class;
+     *
+     * @since S60 v3.2
+     * @return Returns the member of this class.
+     */
+    Java::Manager::Registry::
+    CWriteableJavaRegistryEntry* WritableEntry() const;
+
+protected: // Data
+
+
+    /**
+     * CJavaRegistryEntry::iWritableEntry member
+     * Pointer Owned
+     *
+     * @since S60 v3.2
+     */
+    Java::Manager::Registry::CWriteableJavaRegistryEntry* iWritableEntry;
+
+private: // Data
+
+
+    RPointerArray<MJavaAttribute> iAttributes;
+
+};
+
+} // namespace Java
+
+#endif // JAVAREGISTRYENTRY_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaregistryentrytype.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,49 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef JAVAREGISTRYENTRYTYPE_H
+#define JAVAREGISTRYENTRYTYPE_H
+
+namespace Java
+{
+
+/**
+ * This enumeration lists Java Registry Entry types.
+ */
+enum TJavaRegistryEntryType
+{
+    // EGeneralPackage defines the starting value of the range including
+    // the ids of entry types which are considered as package entries
+    EGeneralPackage         = 100,
+    EMidp2MidletSuite       = 101,
+    EDeploymentPackage      = 102,    // OSGi Deployment Package
+    EBundle                 = 103,
+    EOsgiAwareMidletSuite   = 104,    // OSGi Aware Midlet Suite
+
+    // EGeneralApplication defines the starting value of the range including
+    // the ids of entry types which are considered as application entries
+    EGeneralApplication     = 200,
+    EMidp2Midlet            = 201,
+    EOsgiService            = 202,
+    EOsgiAwareMidlet        = 203,    // OSGi Aware Midlet Application
+    EERCP                   = 204     // eRCP Application
+};
+
+}
+
+#endif // JAVAREGISTRYENTRYTYPE_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaregistryincludes.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,27 @@
+/*
+* Copyright (c) 2005-2006 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef JAVAREGISTRYINCLUDES_H
+#define JAVAREGISTRYINCLUDES_H
+
+#include "javaregistry.h"
+#include "javaregistryentry.h"
+#include "javaregistrypackageentry.h"
+#include "javaregistryapplicationentry.h"
+
+#endif // JAVAREGISTRYINCLUDES_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/javaregistrypackageentry.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,200 @@
+/*
+* Copyright (c) 2005-2008 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef JAVAREGISTRYPACKAGEENTRY_H
+#define JAVAREGISTRYPACKAGEENTRY_H
+
+#include <e32base.h>
+#include <e32cmn.h>
+#include <f32file.h>
+#include "javaregistryentry.h"
+#include "javaregistryentrytype.h"
+
+// FORWARD DECLARATION
+class TAppVersion;
+
+namespace Java
+{
+namespace Manager
+{
+namespace Registry
+{
+
+// FORWARD DECLARATION
+class CWriteableJavaRegistryPackageEntry;
+
+}// namespace Registry
+}// namespace Manager
+
+
+/**
+ * This subclass of CJavaRegistryEntry supports attributes
+ * for packages, that can contain embedded entries.
+ *
+ * @lib javaregistryclient.lib
+ * @since S60 v3.2
+ */
+class CJavaRegistryPackageEntry : public CJavaRegistryEntry
+{
+public:
+
+
+    /**
+     * CJavaRegistryPackageEntry::CJavaRegistryPackageEntry constructor
+     *
+     * @since S60 v3.2
+     * @param aWritableEntry Pointer to a writable entry, to delegate
+     *          getter methods. Pointer ownership taken.
+     */
+    CJavaRegistryPackageEntry(Java::Manager::Registry::
+                              CWriteableJavaRegistryPackageEntry* aWritableEntry);
+
+    /**
+     * Gets the version of Java entity represented by this package entry.
+     *
+     * @since S60 v3.2
+     * @return A TAppVersion object.
+     *         Default value if not set: TAppVersion( 0, 0, 0 ).
+     */
+    IMPORT_C TAppVersion Version() const;
+
+    /**
+     * Gets the vendor name of the Java entity represented by this
+     * package entry.
+     *
+     * @since S60 v3.2
+     * @return Vendor name of the Java entity.
+     *         Default value if not set: KNullDesC.
+     */
+    IMPORT_C const TDesC& Vendor() const;
+
+
+    /**
+     * Tells if the Java entity represented by this package entry
+     * is uninstallable.
+     *
+     * @since S60 v3.2
+     * @return ETrue if the entity is uninstallable, EFalse otherwise.
+     *         Default value if not set: ETrue.
+     */
+    IMPORT_C TBool IsUninstallable() const;
+
+    /**
+     * Returns an array of Uids associated with the Java entity
+     * represented by this package entry.
+     * E.g. if this entry represents a MIDlet suite this method returns
+     * an array of MIDlet Uids.
+     *
+     * @since S60 v3.2
+     * @param aUids [out] Returns Uids of the embedded entries.
+     */
+    IMPORT_C void GetEmbeddedEntries(RArray<TUid>& aUids) const;
+
+    /**
+     * Gets the number of embedded entries in Java entity represented
+     * by this package entry.
+     *
+     * @since S60 v3.2
+     * @return the number of embedded entries
+     */
+    IMPORT_C TInt NumberOfEmbeddedEntries() const;
+
+    /**
+     * Returns the corresponding embedded entry for the given Uid.
+     * The returned entry can be casted to the appropriate subclass
+     * according to the type property. If type is in the package range
+     * ( EGeneralPackage <= entryType < EGeneralApplication ), it can
+     * be casted to CJavaRegistryPackageEntry, and if type is
+     * in the application range ( EGeneralApplication <= entryType ),
+     * it can be casted to CJavaRegistryApplicationEntry.
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aAppUid The Uid of the embedded entry to be retrieved
+     * @return The returned embedded entry or null if entry is not found.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C CJavaRegistryEntry*
+    EmbeddedEntryByUidL(const TUid& aEntryUid) const;
+
+    /**
+     * Returns an embedded entry specified by a zero-based index.
+     * There is not any guaranteed order for embedded entries inside this
+     * package entry.
+     * The returned entry can be casted to the appropriate subclass
+     * according to the type property. If type is in the package range
+     * ( EGeneralPackage <= entryType < EGeneralApplication ), it can
+     * be casted to CJavaRegistryPackageEntry, and if type is
+     * in the application range ( EGeneralApplication <= entryType ),
+     * it can be casted to CJavaRegistryApplicationEntry.
+     *
+     * The function may leave with one of the system-wide error codes.
+     *
+     * @since S60 v3.2
+     * @param aAppNum Zero-based index of the embedded entry to be
+     *                retrieved.
+     * @return The returned embedded entry or null if entry is not found.
+     *         Caller takes over the ownership of the object being
+     *         transferred.
+     */
+    IMPORT_C CJavaRegistryEntry*
+    EmbeddedEntryByNumberL(TInt aEntryNum) const;
+
+    /**
+     * Returns the amount of disk space taken by the installed application.
+     *
+     * @since S60 v5.1
+     * @return Returns the size of used disk space in bytes.
+     */
+    IMPORT_C TInt64 UsedUserDiskSpace() const;
+
+    /**
+     * Tells if the application package is pre-installed.
+     *
+     * If a pre-installed application package is upgraded,
+     * it remains marked as pre-installed.
+     *
+     * If a pre-installed application package is uninstalled
+     * and later installed again, it is no more marked as
+     * pre-installed.
+     *
+     * @since S60 v5.1
+     * @return ETrue if the application suite is pre-installed,
+     *         EFalse otherwise.
+     */
+    IMPORT_C TBool IsPreinstalled() const;
+
+protected:
+
+    /**
+     * CJavaRegistryPackageEntry::WritableEntry method returns the member
+     * of the parent class, but first casts it to
+     * CWriteableJavaRegistrypackageEntry.
+     *
+     * @since S60 v3.2
+     * @return Returns the member of this class.
+     */
+    Java::Manager::Registry::
+    CWriteableJavaRegistryPackageEntry* WritableEntry() const;
+
+};
+
+} // namespace Java
+
+#endif // JAVAREGISTRYPACKAGEENTRY_H
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/jrt_plat/java_registry_api/inc/mjavaattribute.h	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,65 @@
+/*
+* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description: Java Registy API header file
+*
+*/
+
+
+#ifndef MJAVAATTRIBUTE_H
+#define MJAVAATTRIBUTE_H
+
+
+#include <e32base.h>
+
+/**
+ * This interface is used to access Java application attributes.
+ * In case of MIDlets, these attributes are defined in
+ * Java Application Descriptor (JAD) and JAR manifest files.
+ */
+namespace Java
+{
+class MJavaAttribute
+{
+public:
+    /**
+    * This method returns name of attribute
+    *
+    * Since S60 v5.0
+    */
+    virtual const TDesC& Name() const = 0;
+    /**
+    * This method returns attribute's value
+    *
+    * Since S60 v5.0
+    */
+    virtual const TDesC& Value() const = 0;
+    /**
+    * This method returns if attribut is trusted or not (attribute is trusted if
+    * JAR file is signed and attribute is present in JAR manifest)
+    *
+    * Since S60 v5.0
+    */
+    virtual TBool Trusted() const = 0;
+
+    virtual ~MJavaAttribute() {};
+
+
+
+};
+} // namespace Registry
+
+#endif // MJAVAATTRIBUTE_H
+
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/layers.sysdef.xml	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<!DOCTYPE SystemDefinition SYSTEM "sysdef_1_4_0.dtd" [
+  <!ENTITY layer_real_source_path "sf/app/jrt" >
+]>
+
+<SystemDefinition name="jrt" schema="1.4.0">
+  <systemModel>
+    <layer name="app_layer">
+      <module name="jrt">
+        <unit unitID="jrt.jrt" mrp="" bldFile="&layer_real_source_path;/group"
+        filter="!sf_build" name="jrt" />
+      </module>
+      <module name="jrt">
+        <unit unitID="jrt.jrt.jrt_plat" mrp="" bldFile="&layer_real_source_path;/jrt_plat/group"
+        filter="sf_build" name="jrt_jrt_plat" />
+      </module>
+      <module name="jrt">
+        <unit unitID="jrt.jrt.java_stubs" mrp="" bldFile="&layer_real_source_path;/java_stubs/group"
+        filter="sf_build" name="jrt_jrt_stubs" />
+      </module>
+    </layer>
+  </systemModel>
+</SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sysdef_1_4_0.dtd	Mon Feb 22 17:55:27 2010 +0200
@@ -0,0 +1,86 @@
+ <!ELEMENT SystemDefinition (systemModel?, build?)>
+ <!ATTLIST SystemDefinition
+  name CDATA #REQUIRED
+  schema CDATA #REQUIRED>
+ <!ELEMENT systemModel (layer+)>
+ <!ELEMENT layer (logicalset* | module*)*>
+ <!ATTLIST layer
+  name CDATA #REQUIRED
+  levels CDATA #IMPLIED
+  span CDATA #IMPLIED>
+ <!ELEMENT logicalset (logicalsubset* | module* | unit* | package* | prebuilt*)*>
+ <!ATTLIST logicalset name CDATA #REQUIRED>
+ <!ELEMENT logicalsubset (module* | unit* | package* | prebuilt*)*>
+ <!ATTLIST logicalsubset name CDATA #REQUIRED>
+ <!ELEMENT module (component* | unit* | package* | prebuilt*)*>
+ <!ATTLIST module
+  name CDATA #REQUIRED
+  level CDATA #IMPLIED>
+ <!ELEMENT component (unit* | package* | prebuilt*)*>
+ <!ATTLIST component name CDATA #REQUIRED>
+ <!ELEMENT unit EMPTY>
+ <!ATTLIST unit
+  unitID ID #REQUIRED
+  name CDATA #REQUIRED
+  mrp CDATA #REQUIRED
+  filter CDATA #IMPLIED
+  bldFile CDATA #REQUIRED
+  priority CDATA #IMPLIED
+  contract CDATA #IMPLIED>
+ <!ELEMENT package EMPTY>
+ <!ATTLIST package
+  name CDATA #REQUIRED
+  mrp CDATA #REQUIRED
+  filter CDATA #IMPLIED
+  contract CDATA #IMPLIED>
+ <!ELEMENT prebuilt EMPTY>
+ <!ATTLIST prebuilt
+  name CDATA #REQUIRED
+  version CDATA #REQUIRED
+  late (Y|N) #IMPLIED
+  filter CDATA #IMPLIED
+  contract CDATA #IMPLIED>
+ <!ELEMENT build (option* | target+ | targetList+ | unitList+ | configuration+)*>
+ <!ELEMENT unitList (unitRef+)>
+ <!ATTLIST unitList
+  name ID #REQUIRED
+  description CDATA #REQUIRED>
+ <!ELEMENT unitRef EMPTY>
+ <!ATTLIST unitRef unit IDREF #REQUIRED>
+ <!ELEMENT targetList EMPTY>
+ <!ATTLIST targetList
+  name ID #REQUIRED
+  description CDATA #REQUIRED
+  target IDREFS #REQUIRED>
+ <!ELEMENT target EMPTY>
+ <!ATTLIST target
+  name ID #REQUIRED
+  abldTarget CDATA #REQUIRED
+  description CDATA #REQUIRED>
+ <!ELEMENT option EMPTY>
+ <!ATTLIST option
+  name ID #REQUIRED
+  abldOption CDATA #REQUIRED
+  description CDATA #REQUIRED
+  enable (Y | N | y | n) #REQUIRED>
+ <!ELEMENT configuration (unitListRef+ | layerRef+ | task+)*>
+ <!ATTLIST configuration
+  name ID #REQUIRED
+  description CDATA #REQUIRED
+  filter CDATA #REQUIRED>
+ <!ELEMENT task ( unitListRef* , (buildLayer | specialInstructions))>
+ <!ELEMENT unitListRef EMPTY>
+ <!ATTLIST unitListRef unitList IDREF #REQUIRED>
+ <!ELEMENT layerRef EMPTY>
+ <!ATTLIST layerRef layerName CDATA #REQUIRED>
+ <!ELEMENT buildLayer EMPTY>
+ <!ATTLIST buildLayer
+  command CDATA #REQUIRED
+  targetList IDREFS #IMPLIED
+  unitParallel (Y | N | y | n) #REQUIRED
+  targetParallel (Y | N | y | n) #IMPLIED>
+ <!ELEMENT specialInstructions EMPTY>
+ <!ATTLIST specialInstructions
+  name CDATA #REQUIRED
+  cwd CDATA #REQUIRED
+  command CDATA #REQUIRED>