|
List Info
Thread: FW: CR:RESEND: (hxclient_2_1_0_cayennes Changes) Porting of HTTP 1.1 from head to Symbi
|
|
| FW: CR:RESEND: (hxclient_2_1_0_cayennes
Changes) Porting of HTTP 1.1 from head
to Symbi |

|
2008-02-05 10:20:56 |
|
______________________________________________
From: Thimmashetty Praveen (Nokia-D-MSW/Dallas)
Sent: Sunday, February 03, 2008 5:57 PM
To: 'filesystem-dev helixcommunity.org'; common-dev helixcommunity.org
Subject: CR: (hxclient_2_1_0_cayennes Changes) Porting of HTTP 1.1 from head to Symbian (hxclient_2_1_0_cayennes)
"Nokia submits this code under the terms of a commercial contribution agreement with Real Networks, and I am authorized to contribute this code under said agreement."
ErrorId: SUB 409-795
Synopsis: CR: Porting of HTTP 1.1 from head to Symbian (hxclient_2_1_0_cayennes)
This CR has changes that needs to go to hxclient_2_1_0_cayennes. I will do the separate CR for HEAD changes. Symbian will not be using data file system/cache file system. It will just make use of Cchunkres to process data from network.
Root Cause of the problem: New Feature
Files Modified:
Commonfileiochunkres.cpp
Commonfileiopubchunkres.h
Commonincludehxresult.h
filesystemhttpUmakefil
filesystemhttpfactory.cpp
filesystemhttpfactory.h
filesystemhttphttpfsys.cpp
filesystemhttphttpfsys.h
filesystemhttppubhttp_debug.h
New files added:
filesystemhttpsymbian.pcf
Image Size and Heap Use impact: no major impact (added httpfsys.dll (112k))
Module Release testing (STIF) : Passed.
Test case(s) Added : No.
Memory leak check performed : Yes. No new leaks introduced.
Platforms and Profiles Build Verified: helix-client-s60-32-mmf-mdf-arm
Platforms and Profiles Functionality verified: armv5,winscw
Branch: hxclient_2_1_0_cayennes
<<diff.txt>> <<210changes.zip>>
|
|
|
| FW: CR:RESEND: (hxclient_2_1_0_cayennes
Changes)Porting of HTTP 1.1 fr |
  United States |
2008-02-05 10:53:10 |
Praveen,
Here are my comments:
1) In both the Umakefil and in the code, I would prefer to
split out the features of the current filesystem/http
that you don't want/need by the use of HELIX_FEATURE_xxx
defines rather than by platform (making them
non-Symbian).
Then you can simply disable these features on symbian
and leave then enabled on other platforms. That way
other
platforms who may have similar requirements to Symbian
may also take advantage of these changes.
I would suggest perhaps HELIX_FEATURE_HTTP_CACHE or
something like that for the caching features.
2) Same thing for including/excluding the data: filesystem
in the httpfsys plugin. Please use a HELIX_FEATURE_xxx
instead of platform preprocessor defines. Perhaps
HELIX_FEATURE_HTTP_INCLUDE_DATAFSYS.
3) In this change:
 -213,20
+251,17 
//#define LOG_DUMP_FILE "c:/temp/avi.txt"
#ifdef SUPPORT_SECURE_SOCKETS
-const char* CHTTPFileSystem::zm_pProtocol =
"http|chttp|https";
+const char* const CHTTPFileSystem::zm_pProtocol =
"http|chttp|https";
#else
-const char* CHTTPFileSystem::zm_pProtocol =
"http|chttp";
+const char* const CHTTPFileSystem::zm_pProtocol =
"http|chttp";
#endif
This plugin should only claim "chttp" if
caching support is enabled.
4) +#if !defined(_SYMBIAN)
+ pChunkyRes = new CChunkyRes(pContext);
+#else
pChunkyRes = new CChunkyRes();
+#endif
If you are going to use CChunkyRes in filesystem/http on
the Cay210s, then you should merge the changes from the
HEAD in CChunkyRes to Cay210s. Then the above change will
not be needed. There shouldn't be *too* many changes in
CChunkyRes between HEAD and Cay210s.
5) Here:
+#if !defined(HELIX_CONFIG_NOSTATICS)
if (g_pCacheEntry)
{
g_pCacheEntry->close();
delete g_pCacheEntry;
g_pCacheEntry = NULL;
}
-
+#endif
return HXR_OK;
This doesn't seem like the right change. If
HELIX_CONFIG_NOSTATICS
is defined but HELIX_FEATURE_HTTP_CACHE (the new define)
*is* defined,
then we just need to get g_pCacheEntry from the global
manager. If
HELIX_FEATURE_HTTP_CACHE is not defined, then it doesn't
matter
if HELIX_CONFIG_NOSTATICS is defined or not here.
6) -
-#if defined(THREADS_SUPPORTED)
- HXMutex::MakeMutex(m_pMutex);
-#else
- HXMutex::MakeStubMutex(m_pMutex);
-#endif
Why is this removed?
7) Here:
+#if !defined(HELIX_CONFIG_NOSTATICS)
m_pChunkyRes =
g_ChunkyResMap.GetChunkyResForURL(url, this);
-
+#else
+ if(!m_pChunkyResMap)
+ {
+ m_pChunkyResMap = new CChunkyResMap;
+ }
+ if(m_pChunkyResMap)
+ {
+ m_pChunkyRes =
m_pChunkyResMap->GetChunkyResForURL(url, this,
m_pContext);
+ }
+#endif
I don't think if HELIX_CONFIG_NOSTATICS is not defined,
we should
create a new copy every time - we should get m_pChunkRes
from the global manager.
If you create a new chunkyres every time, then if you
have two
http sessions going at once, then they cannot share
CChunkyRes objects.
Rest looks good.
=============================================
Eric Hyche (ehyche real.com)
Technical Lead
RealNetworks, Inc.
> -----Original Message-----
> From: client-dev-bounces helixcommunity.org
> [mailto:client-dev-bounces helixcommunity.org] On
Behalf Of
> Praveen.Thimmashetty nokia.com
> Sent: Tuesday, February 05, 2008 11:21 AM
> To: common-dev helixcommunity.org;
> filesystem-dev helixcommunity.org; client-dev helixcommunity.org
> Subject: [Client-dev] FW: CR:RESEND:
(hxclient_2_1_0_cayennes
> Changes)Porting of HTTP 1.1 from head to Symbian
> (hxclient_2_1_0_cayennes)
>
>
>
> ______________________________________________
> From: Thimmashetty Praveen (Nokia-D-MSW/Dallas)
> Sent: Sunday, February 03, 2008 5:57 PM
> To: 'filesystem-dev helixcommunity.org';
> common-dev helixcommunity.org
> Subject: CR: (hxclient_2_1_0_cayennes Changes)
Porting
> of HTTP 1.1 from head to Symbian
(hxclient_2_1_0_cayennes)
>
>
> "Nokia submits this code under the terms of a
commercial
> contribution agreement with Real Networks, and I am
> authorized to contribute this code under said
agreement."
>
> Modified by: Praveen.Thimmashetty nokia.com
>
> Reviewed by:
>
> Date: 03-February-2008
>
> Project: SymbianMmf
>
> ErrorId: SUB 409-795
>
>
> Synopsis: CR: Porting of HTTP 1.1 from head to
Symbian
> (hxclient_2_1_0_cayennes)
> This CR has changes that needs
> to go to hxclient_2_1_0_cayennes. I will do the
separate CR
> for HEAD changes. Symbian will not be using data file
> system/cache file system. It will just make use of
Cchunkres
> to process data from network.
>
>
> Root Cause of the problem: New Feature
>
> Files Modified:
> Commonfileiochunkres.cpp
> Commonfileiopubchunkres.h
> Commonincludehxresult.h
>
> filesystemhttpUmakefil
> filesystemhttpfactory.cpp
> filesystemhttpfactory.h
> filesystemhttphttpfsys.cpp
> filesystemhttphttpfsys.h
> filesystemhttppubhttp_debug.h
>
> New files added:
> filesystemhttpsymbian.pcf
>
>
> Image Size and Heap Use impact: no major impact (added
> httpfsys.dll (112k))
>
> Module Release testing (STIF) : Passed.
>
> Test case(s) Added : No.
>
> Memory leak check performed : Yes. No new leaks
introduced.
>
> Platforms and Profiles Build Verified:
> helix-client-s60-32-mmf-mdf-arm
>
> Platforms and Profiles Functionality verified:
armv5,winscw
>
> Branch: hxclient_2_1_0_cayennes
>
> <<diff.txt>> <<210changes.zip>>
>
>
_______________________________________________
Common-dev mailing list
Common-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/comm
on-dev
|
|
| FW: CR:RESEND: (hxclient_2_1_0_cayennes
Changes)Porting of HTTP 1.1 fr |

|
2008-02-05 15:15:48 |
|
|
Hi Eric,
I am planning to add HELIX_FEATURE_HTTP_DISABLE_CACHE for caching feature and
HELIX_CONFIG_HTTP_EXCLUDE_DATAFSYS for data file system.
I can define these flags in symbian specific pfi file.
I shall re-send the CR for other changes that you have suggested.
Let me know these above flags are fine.
Thanks
Praveen
-----Original Message-----
From: ext Eric Hyche [ ehyche real.com">mailto:ehyche real.com]
Sent: Tuesday, February 05, 2008 10:53 AM
To: Thimmashetty Praveen (Nokia-D-MSW/Dallas); common-dev helixcommunity.org; filesystem-dev helixcommunity.org; client-dev helixcommunity.org
Subject: RE: [Client-dev] FW: CR:RESEND: (hxclient_2_1_0_cayennes Changes)Porting of HTTP 1.1 from head to Symbian (hxclient_2_1_0_cayennes)
Praveen,
Here are my comments:
1) In both the Umakefil and in the code, I would prefer to
split out the features of the current filesystem/http
that you don't want/need by the use of HELIX_FEATURE_xxx
defines rather than by platform (making them non-Symbian).
Then you can simply disable these features on symbian
and leave then enabled on other platforms. That way other
platforms who may have similar requirements to Symbian
may also take advantage of these changes.
I would suggest perhaps HELIX_FEATURE_HTTP_CACHE or
something like that for the caching features.
2) Same thing for including/excluding the data: filesystem
in the httpfsys plugin. Please use a HELIX_FEATURE_xxx
instead of platform preprocessor defines. Perhaps
HELIX_FEATURE_HTTP_INCLUDE_DATAFSYS.
3) In this change:
 -213,20 +251,17 
//#define LOG_DUMP_FILE "c:/temp/avi.txt"
#ifdef SUPPORT_SECURE_SOCKETS
-const char* CHTTPFileSystem::zm_pProtocol = "http|chttp|https";
+const char* const CHTTPFileSystem::zm_pProtocol = "http|chttp|https";
#else
-const char* CHTTPFileSystem::zm_pProtocol = "http|chttp";
+const char* const CHTTPFileSystem::zm_pProtocol = "http|chttp";
#endif
This plugin should only claim "chttp" if caching support is enabled.
4) +#if !defined(_SYMBIAN)
+ pChunkyRes = new CChunkyRes(pContext);
+#else
pChunkyRes = new CChunkyRes();
+#endif
If you are going to use CChunkyRes in filesystem/http on
the Cay210s, then you should merge the changes from the
HEAD in CChunkyRes to Cay210s. Then the above change will
not be needed. There shouldn't be *too* many changes in
CChunkyRes between HEAD and Cay210s.
5) Here:
+#if !defined(HELIX_CONFIG_NOSTATICS)
if (g_pCacheEntry)
{
g_pCacheEntry->close();
delete g_pCacheEntry;
g_pCacheEntry = NULL;
}
-
+#endif
return HXR_OK;
This doesn't seem like the right change. If HELIX_CONFIG_NOSTATICS
is defined but HELIX_FEATURE_HTTP_CACHE (the new define) *is* defined,
then we just need to get g_pCacheEntry from the global manager. If
HELIX_FEATURE_HTTP_CACHE is not defined, then it doesn't matter
if HELIX_CONFIG_NOSTATICS is defined or not here.
6) -
-#if defined(THREADS_SUPPORTED)
- HXMutex::MakeMutex(m_pMutex);
-#else
- HXMutex::MakeStubMutex(m_pMutex);
-#endif
Why is this removed?
Praveen: Moved form constructor to initobject. This change was taken from the head.
7) Here:
+#if !defined(HELIX_CONFIG_NOSTATICS)
m_pChunkyRes = g_ChunkyResMap.GetChunkyResForURL(url, this);
-
+#else
+ if(!m_pChunkyResMap)
+ {
+ m_pChunkyResMap = new CChunkyResMap;
+ }
+ if(m_pChunkyResMap)
+ {
+ m_pChunkyRes = m_pChunkyResMap->GetChunkyResForURL(url, this, m_pContext);
+ }
+#endif
I don't think if HELIX_CONFIG_NOSTATICS is not defined, we should
create a new copy every time - we should get m_pChunkRes from the global manager.
If you create a new chunkyres every time, then if you have two
http sessions going at once, then they cannot share CChunkyRes objects.
Rest looks good.
=============================================
Eric Hyche (ehyche real.com)
Technical Lead
RealNetworks, Inc.
> -----Original Message-----
> From: client-dev-bounces helixcommunity.org
> [ client-dev-bounces helixcommunity.org">mailto:client-dev-bounces helixcommunity.org] On Behalf Of
> Praveen.Thimmashetty nokia.com
> Sent: Tuesday, February 05, 2008 11:21 AM
> To: common-dev helixcommunity.org;
> filesystem-dev helixcommunity.org; client-dev helixcommunity.org
> Subject: [Client-dev] FW: CR:RESEND: (hxclient_2_1_0_cayennes
> Changes)Porting of HTTP 1.1 from head to Symbian
> (hxclient_2_1_0_cayennes)
>
>
>
> ______________________________________________
> From: Thimmashetty Praveen (Nokia-D-MSW/Dallas)
> Sent: Sunday, February 03, 2008 5:57 PM
> To: 'filesystem-dev helixcommunity.org';
> common-dev helixcommunity.org
> Subject: CR: (hxclient_2_1_0_cayennes Changes) Porting
> of HTTP 1.1 from head to Symbian (hxclient_2_1_0_cayennes)
>
>
> "Nokia submits this code under the terms of a commercial contribution
> agreement with Real Networks, and I am authorized to contribute this
> code under said agreement."
>
> Modified by: Praveen.Thimmashetty nokia.com
>
> Reviewed by:
>
> Date: 03-February-2008
>
> Project: SymbianMmf
>
> ErrorId: SUB 409-795
>
>
> Synopsis: CR: Porting of HTTP 1.1 from head to Symbian
> (hxclient_2_1_0_cayennes)
> This CR has changes that needs to go to
> hxclient_2_1_0_cayennes. I will do the separate CR for HEAD changes.
> Symbian will not be using data file system/cache file system. It will
> just make use of Cchunkres to process data from network.
>
>
> Root Cause of the problem: New Feature
>
> Files Modified:
> Commonfileiochunkres.cpp
> Commonfileiopubchunkres.h
> Commonincludehxresult.h
>
> filesystemhttpUmakefil
> filesystemhttpfactory.cpp
> filesystemhttpfactory.h
> filesystemhttphttpfsys.cpp
> filesystemhttphttpfsys.h
> filesystemhttppubhttp_debug.h
>
> New files added:
> filesystemhttpsymbian.pcf
>
>
> Image Size and Heap Use impact: no major impact (added httpfsys.dll
> (112k))
>
> Module Release testing (STIF) : Passed.
>
> Test case(s) Added : No.
>
> Memory leak check performed : Yes. No new leaks introduced.
>
> Platforms and Profiles Build Verified:
> helix-client-s60-32-mmf-mdf-arm
>
> Platforms and Profiles Functionality verified: armv5,winscw
>
> Branch: hxclient_2_1_0_cayennes
>
> <<diff.txt>> <<210changes.zip>>
>
>
|
| FW: CR:RESEND:(hxclient_2_1_0_cayennes
Changes)Po |

|
2008-02-05 17:03:36 |
|
| Hi Eric,
Please find the updated diff and source code. I have made
all the changes suggested by you 1-5 and 7.
for change suggested 6,
6) -
-#if
defined(THREADS_SUPPORTED) - HXMutex::MakeMutex(m_pMutex); -#else -
HXMutex::MakeStubMutex(m_pMutex); -#endif
Why is this
removed?
Praveen: Moved form
constructor to initobject. This
change was taken from the head.
Hi Eric,
I am planning to add
HELIX_FEATURE_HTTP_DISABLE_CACHE for caching feature and HELIX_CONFIG_HTTP_EXCLUDE_DATAFSYS for data file
system.
I can define these flags in symbian
specific pfi file.
I shall re-send the CR for other
changes that you have suggested.
Let me know these above flags are
fine.
Thanks Praveen
-----Original
Message----- From:
ext Eric Hyche [ ehyche real.com">mailto:ehyche real.com] Sent: Tuesday, February 05, 2008 10:53 AM To: Thimmashetty Praveen
(Nokia-D-MSW/Dallas); common-dev helixcommunity.org;
filesystem-dev helixcommunity.org;
client-dev helixcommunity.org
Subject: RE: [Client-dev] FW:
CR:RESEND: (hxclient_2_1_0_cayennes Changes)Porting of HTTP 1.1 from head to
Symbian (hxclient_2_1_0_cayennes)
Praveen,
Here are my comments:
1) In both the Umakefil and in the
code, I would prefer to split out the features of the current filesystem/http
that you
don't want/need by the use of HELIX_FEATURE_xxx defines rather than by platform
(making them non-Symbian). Then you can simply disable these features on
symbian
and leave then enabled on other platforms. That way other
platforms who may have
similar requirements to Symbian may also take advantage of these
changes.
I would suggest perhaps
HELIX_FEATURE_HTTP_CACHE or something like that for the caching features.
2) Same thing for
including/excluding the data: filesystem in the httpfsys plugin. Please
use a HELIX_FEATURE_xxx instead of platform preprocessor defines.
Perhaps
HELIX_FEATURE_HTTP_INCLUDE_DATAFSYS.
3) In this change:
 -213,20 +251,17 
//#define LOG_DUMP_FILE
"c:/temp/avi.txt" #ifdef SUPPORT_SECURE_SOCKETS -const char*
CHTTPFileSystem::zm_pProtocol =
"http|chttp|https"; +const char* const
CHTTPFileSystem::zm_pProtocol =
"http|chttp|https"; #else -const char*
CHTTPFileSystem::zm_pProtocol =
"http|chttp"; +const
char* const CHTTPFileSystem::zm_pProtocol =
"http|chttp"; #endif
This plugin should only
claim "chttp" if caching support is enabled.
4) +#if
!defined(_SYMBIAN)
+ pChunkyRes = new
CChunkyRes(pContext); +#else pChunkyRes = new
CChunkyRes(); +#endif
If you are going to use
CChunkyRes in filesystem/http on the Cay210s, then you should merge the changes from
the HEAD in
CChunkyRes to Cay210s. Then the above change will not be needed. There shouldn't be
*too* many changes in CChunkyRes between HEAD and Cay210s.
5) Here:
+#if
!defined(HELIX_CONFIG_NOSTATICS) if (g_pCacheEntry)
{
g_pCacheEntry->close(); delete
g_pCacheEntry; g_pCacheEntry =
NULL; } - +#endif return HXR_OK;
This doesn't seem like
the right change. If HELIX_CONFIG_NOSTATICS is defined but
HELIX_FEATURE_HTTP_CACHE (the new define) *is* defined, then we just need to get
g_pCacheEntry from the global manager. If HELIX_FEATURE_HTTP_CACHE is not
defined, then it doesn't matter if HELIX_CONFIG_NOSTATICS is defined or not
here.
6) - -#if defined(THREADS_SUPPORTED)
-
HXMutex::MakeMutex(m_pMutex); -#else - HXMutex::MakeStubMutex(m_pMutex);
-#endif
Why is this
removed?
Praveen: Moved form
constructor to initobject. This
change was taken from the head.
7) Here:
+#if
!defined(HELIX_CONFIG_NOSTATICS) m_pChunkyRes
= g_ChunkyResMap.GetChunkyResForURL(url, this); - +#else
+
if(!m_pChunkyResMap) + { +
m_pChunkyResMap = new CChunkyResMap; + }
+
if(m_pChunkyResMap) + { +
m_pChunkyRes = m_pChunkyResMap->GetChunkyResForURL(url, this,
m_pContext); + } +#endif
I don't think if
HELIX_CONFIG_NOSTATICS is not defined, we should create a new copy every time -
we should get m_pChunkRes from the global manager. If you create a new chunkyres
every time, then if you have two http sessions going at once, then they cannot
share CChunkyRes objects.
Rest looks good.
============================================= Eric Hyche (ehyche real.com)
Technical Lead
RealNetworks, Inc.
> -----Original
Message----- >
From: client-dev-bounces helixcommunity.org > [helixcommunity.org">mailto:client-dev-bounces helixcommunity.org] On Behalf Of >
Praveen.Thimmashetty nokia.com > Sent: Tuesday, February 05, 2008 11:21 AM
> To:
common-dev helixcommunity.org; > filesystem-dev helixcommunity.org;
client-dev helixcommunity.org > Subject: [Client-dev] FW: CR:RESEND:
(hxclient_2_1_0_cayennes > Changes)Porting of HTTP 1.1 from head to Symbian
>
(hxclient_2_1_0_cayennes) > >
>
>
______________________________________________ > From: Thimmashetty Praveen
(Nokia-D-MSW/Dallas) > Sent: Sunday, February 03, 2008 5:57 PM
>
To: 'filesystem-dev helixcommunity.org';
>
common-dev helixcommunity.org > Subject: CR:
(hxclient_2_1_0_cayennes Changes) Porting > of HTTP 1.1 from head to Symbian
(hxclient_2_1_0_cayennes) > >
> "Nokia submits
this code under the terms of a commercial contribution > agreement with Real Networks, and I am
authorized to contribute this > code under said agreement." > > Modified by:
Praveen.Thimmashetty nokia.com > > Reviewed by: > > Date:
03-February-2008 >
>
Project: SymbianMmf > > ErrorId: SUB
409-795 >
>
>
Synopsis: CR: Porting of HTTP 1.1 from head
to Symbian >
(hxclient_2_1_0_cayennes) >
This CR has changes that needs to go to > hxclient_2_1_0_cayennes. I will do the separate CR for
HEAD changes. >
Symbian will not be using data file system/cache file system. It will
> just make use of
Cchunkres to process data from network. > >
>
Root Cause of the problem: New
Feature >
> Files Modified:
>
Commonfileiochunkres.cpp
>
Commonfileiopubchunkres.h
>
Commonincludehxresult.h > > filesystemhttpUmakefil
>
filesystemhttpfactory.cpp
>
filesystemhttpfactory.h >
filesystemhttphttpfsys.cpp > filesystemhttphttpfsys.h
>
filesystemhttppubhttp_debug.h
> > New files
added: >
filesystemhttpsymbian.pcf
> > > Image Size and Heap Use
impact: no major impact (added httpfsys.dll > (112k)) > > Module Release testing
(STIF) : Passed. > >
Test case(s) Added : No.
>
>
Memory leak check performed : Yes. No new
leaks introduced. > >
Platforms and Profiles Build Verified:
>
helix-client-s60-32-mmf-mdf-arm > > Platforms and Profiles Functionality
verified: armv5,winscw > > Branch:
hxclient_2_1_0_cayennes > > <<diff.txt>>
<<210changes.zip>> > > |
|
|
| FW: CR:RESEND: (hxclient_2_1_0_cayennes
Changes)Porting of HTTP 1.1 fr |
  United States |
2008-02-05 17:42:33 |
We generally try to make feature defines inclusive
(add the feature if it is defined) rather than
exclusive (remove this feature it is defined),
so perhaps
HELIX_FEATURE_HTTP_ENABLE_CACHE
and
HELIX_CONFIG_HTTP_INCLUDE_DATAFSYS
instead.
Eric
=============================================
Eric Hyche (ehyche real.com)
Technical Lead
RealNetworks, Inc.
> -----Original Message-----
> From: Praveen.Thimmashetty nokia.com
> [mailto:Praveen.Thimmashetty nokia.com]
> Sent: Tuesday, February 05, 2008 4:16 PM
> To: ehyche real.com; common-dev helixcommunity.org;
> filesystem-dev helixcommunity.org; client-dev helixcommunity.org
> Subject: RE: [Client-dev] FW: CR:RESEND:
> (hxclient_2_1_0_cayennes Changes)Porting of HTTP 1.1
from
> head to Symbian (hxclient_2_1_0_cayennes)
>
>
> Hi Eric,
>
> I am planning to add HELIX_FEATURE_HTTP_DISABLE_CACHE
for
> caching feature and
> HELIX_CONFIG_HTTP_EXCLUDE_DATAFSYS for data file
system.
>
> I can define these flags in symbian specific pfi file.
>
> I shall re-send the CR for other changes that you have
suggested.
>
> Let me know these above flags are fine.
>
> Thanks
> Praveen
>
>
>
>
> -----Original Message-----
> From: ext Eric Hyche [mailto:ehyche real.com
> <mailto:ehyche real.com> ]
> Sent: Tuesday, February 05, 2008 10:53 AM
> To: Thimmashetty Praveen (Nokia-D-MSW/Dallas);
> common-dev helixcommunity.org;
> filesystem-dev helixcommunity.org; client-dev helixcommunity.org
>
> Subject: RE: [Client-dev] FW: CR:RESEND:
> (hxclient_2_1_0_cayennes Changes)Porting of HTTP 1.1
from
> head to Symbian (hxclient_2_1_0_cayennes)
>
>
> Praveen,
>
> Here are my comments:
>
> 1) In both the Umakefil and in the code, I would prefer
to
> split out the features of the current
filesystem/http
> that you don't want/need by the use of
HELIX_FEATURE_xxx
> defines rather than by platform (making them
non-Symbian).
> Then you can simply disable these features on
symbian
> and leave then enabled on other platforms. That way
other
> platforms who may have similar requirements to
Symbian
> may also take advantage of these changes.
>
> I would suggest perhaps HELIX_FEATURE_HTTP_CACHE or
> something like that for the caching features.
>
> 2) Same thing for including/excluding the data:
filesystem
> in the httpfsys plugin. Please use a
HELIX_FEATURE_xxx
> instead of platform preprocessor defines. Perhaps
> HELIX_FEATURE_HTTP_INCLUDE_DATAFSYS.
>
> 3) In this change:
>
>  -213,20 +251,17 
> //#define LOG_DUMP_FILE "c:/temp/avi.txt"
>
> #ifdef SUPPORT_SECURE_SOCKETS
> -const char* CHTTPFileSystem::zm_pProtocol =
> "http|chttp|https";
> +const char* const CHTTPFileSystem::zm_pProtocol
=
> "http|chttp|https";
> #else
> -const char* CHTTPFileSystem::zm_pProtocol =
"http|chttp";
> +const char* const CHTTPFileSystem::zm_pProtocol
=
> "http|chttp";
> #endif
>
>
> This plugin should only claim "chttp" if
caching support
> is enabled.
>
>
> 4) +#if !defined(_SYMBIAN)
> + pChunkyRes = new CChunkyRes(pContext);
> +#else
> pChunkyRes = new CChunkyRes();
> +#endif
>
> If you are going to use CChunkyRes in filesystem/http
on
> the Cay210s, then you should merge the changes from
the
> HEAD in CChunkyRes to Cay210s. Then the above change
will
> not be needed. There shouldn't be *too* many changes
in
> CChunkyRes between HEAD and Cay210s.
>
>
> 5) Here:
>
> +#if !defined(HELIX_CONFIG_NOSTATICS)
> if (g_pCacheEntry)
> {
> g_pCacheEntry->close();
> delete g_pCacheEntry;
> g_pCacheEntry = NULL;
> }
> -
> +#endif
> return HXR_OK;
>
> This doesn't seem like the right change. If
HELIX_CONFIG_NOSTATICS
> is defined but HELIX_FEATURE_HTTP_CACHE (the new
define)
> *is* defined,
> then we just need to get g_pCacheEntry from the
global manager. If
> HELIX_FEATURE_HTTP_CACHE is not defined, then it
doesn't matter
> if HELIX_CONFIG_NOSTATICS is defined or not here.
>
>
> 6) -
> -#if defined(THREADS_SUPPORTED)
> - HXMutex::MakeMutex(m_pMutex);
> -#else
> - HXMutex::MakeStubMutex(m_pMutex);
> -#endif
>
> Why is this removed?
>
> Praveen: Moved form constructor to initobject. This
change
> was taken from the head.
>
> 7) Here:
>
> +#if !defined(HELIX_CONFIG_NOSTATICS)
> m_pChunkyRes =
g_ChunkyResMap.GetChunkyResForURL(url, this);
> -
> +#else
> + if(!m_pChunkyResMap)
> + {
> + m_pChunkyResMap = new CChunkyResMap;
> + }
> + if(m_pChunkyResMap)
> + {
> + m_pChunkyRes =
> m_pChunkyResMap->GetChunkyResForURL(url, this,
m_pContext);
> + }
> +#endif
>
> I don't think if HELIX_CONFIG_NOSTATICS is not
defined, we should
> create a new copy every time - we should get
m_pChunkRes
> from the global manager.
> If you create a new chunkyres every time, then if
you have two
> http sessions going at once, then they cannot share
> CChunkyRes objects.
>
>
>
> Rest looks good.
>
> =============================================
> Eric Hyche (ehyche real.com)
> Technical Lead
> RealNetworks, Inc.
>
> > -----Original Message-----
> > From: client-dev-bounces helixcommunity.org
> > [mailto:client-dev-bounces helixcommunity.org
> <mailto:client-dev-bounces helixcommunity.org> ] On
Behalf Of
> > Praveen.Thimmashetty nokia.com
> > Sent: Tuesday, February 05, 2008 11:21 AM
> > To: common-dev helixcommunity.org;
> > filesystem-dev helixcommunity.org;
client-dev helixcommunity.org
> > Subject: [Client-dev] FW: CR:RESEND:
(hxclient_2_1_0_cayennes
> > Changes)Porting of HTTP 1.1 from head to Symbian
> > (hxclient_2_1_0_cayennes)
> >
> >
> >
> > ______________________________________________
> > From: Thimmashetty Praveen (Nokia-D-MSW/Dallas)
> > Sent: Sunday, February 03, 2008 5:57 PM
> > To: 'filesystem-dev helixcommunity.org';
> > common-dev helixcommunity.org
> > Subject: CR: (hxclient_2_1_0_cayennes
Changes) Porting
> > of HTTP 1.1 from head to Symbian
(hxclient_2_1_0_cayennes)
> >
> >
> > "Nokia submits this code under the terms of a
commercial
> contribution
> > agreement with Real Networks, and I am authorized
to
> contribute this
> > code under said agreement."
> >
> > Modified by: Praveen.Thimmashetty nokia.com
> >
> > Reviewed by:
> >
> > Date: 03-February-2008
> >
> > Project: SymbianMmf
> >
> > ErrorId: SUB 409-795
> >
> >
> > Synopsis: CR: Porting of HTTP 1.1 from head
to Symbian
> > (hxclient_2_1_0_cayennes)
> > This CR has changes
that
> needs to go to
> > hxclient_2_1_0_cayennes. I will do the separate CR
for HEAD
> changes.
> > Symbian will not be using data file system/cache
file
> system. It will
> > just make use of Cchunkres to process data from
network.
> >
> >
> > Root Cause of the problem: New Feature
> >
> > Files Modified:
> > Commonfileiochunkres.cpp
> > Commonfileiopubchunkres.h
> > Commonincludehxresult.h
> >
> > filesystemhttpUmakefil
> > filesystemhttpfactory.cpp
> > filesystemhttpfactory.h
> > filesystemhttphttpfsys.cpp
> > filesystemhttphttpfsys.h
> > filesystemhttppubhttp_debug.h
> >
> > New files added:
> > filesystemhttpsymbian.pcf
> >
> >
> > Image Size and Heap Use impact: no major
impact
> (added httpfsys.dll
> > (112k))
> >
> > Module Release testing (STIF) : Passed.
> >
> > Test case(s) Added : No.
> >
> > Memory leak check performed : Yes. No new
leaks introduced.
> >
> > Platforms and Profiles Build Verified:
> > helix-client-s60-32-mmf-mdf-arm
> >
> > Platforms and Profiles Functionality
verified: armv5,winscw
> >
> > Branch: hxclient_2_1_0_cayennes
> >
> > <<diff.txt>>
<<210changes.zip>>
> >
> >
>
>
_______________________________________________
Common-dev mailing list
Common-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/comm
on-dev
|
|
| FW: CR:RESEND: (hxclient_2_1_0_cayennes
Changes)Porting of HTTP 1.1 fr |

|
2008-02-06 10:53:07 |
Hi Eric,
If I define positive flag (feature defines inclusive), then
I have to
make sure existing logic is not broken in all the platform.
Main idea
behind defining negative flag is to avoid any breaks for
existing
platform.
I am not sure about where to define
HELIX_FEATURE_HTTP_ENABLE_CACHE and
HELIX_CONFIG_HTTP_INCLUDE_DATAFSYS flags hence these
features are
available to all the platforms that are currently using this
http file
system.
Possible solution could be to define
http-advance-feature.pfi file. This
file will have definition of HELIX_FEATURE_HTTP_ENABLE_CACHE
and
HELIX_CONFIG_HTTP_INCLUDE_DATAFSYS flags defined in it.
Include http-advance-feature.pfi file in
helix-client-core-advanced.pfi.
Let me know what is your thoughts on this.
Thanks
Praveen
-----Original Message-----
From: ext Eric Hyche [mailto:ehyche real.com]
Sent: Tuesday, February 05, 2008 5:43 PM
To: Thimmashetty Praveen (Nokia-D-MSW/Dallas);
common-dev helixcommunity.org; filesystem-dev helixcommunity.org;
client-dev helixcommunity.org
Subject: RE: [Client-dev] FW: CR:RESEND:
(hxclient_2_1_0_cayennes
Changes)Porting of HTTP 1.1 from head to Symbian
(hxclient_2_1_0_cayennes)
We generally try to make feature defines inclusive (add the
feature if
it is defined) rather than exclusive (remove this feature it
is
defined), so perhaps
HELIX_FEATURE_HTTP_ENABLE_CACHE
and
HELIX_CONFIG_HTTP_INCLUDE_DATAFSYS
instead.
Eric
=============================================
Eric Hyche (ehyche real.com)
Technical Lead
RealNetworks, Inc.
> -----Original Message-----
> From: Praveen.Thimmashetty nokia.com
> [mailto:Praveen.Thimmashetty nokia.com]
> Sent: Tuesday, February 05, 2008 4:16 PM
> To: ehyche real.com; common-dev helixcommunity.org;
> filesystem-dev helixcommunity.org; client-dev helixcommunity.org
> Subject: RE: [Client-dev] FW: CR:RESEND:
> (hxclient_2_1_0_cayennes Changes)Porting of HTTP 1.1
from head to
> Symbian (hxclient_2_1_0_cayennes)
>
>
> Hi Eric,
>
> I am planning to add HELIX_FEATURE_HTTP_DISABLE_CACHE
for caching
> feature and HELIX_CONFIG_HTTP_EXCLUDE_DATAFSYS for data
file system.
>
> I can define these flags in symbian specific pfi file.
>
> I shall re-send the CR for other changes that you have
suggested.
>
> Let me know these above flags are fine.
>
> Thanks
> Praveen
>
>
>
>
> -----Original Message-----
> From: ext Eric Hyche [mailto:ehyche real.com
<mailto:ehyche real.com>
> ]
> Sent: Tuesday, February 05, 2008 10:53 AM
> To: Thimmashetty Praveen (Nokia-D-MSW/Dallas);
> common-dev helixcommunity.org; filesystem-dev helixcommunity.org;
> client-dev helixcommunity.org
>
> Subject: RE: [Client-dev] FW: CR:RESEND:
> (hxclient_2_1_0_cayennes Changes)Porting of HTTP 1.1
from head to
> Symbian (hxclient_2_1_0_cayennes)
>
>
> Praveen,
>
> Here are my comments:
>
> 1) In both the Umakefil and in the code, I would prefer
to
> split out the features of the current
filesystem/http
> that you don't want/need by the use of
HELIX_FEATURE_xxx
> defines rather than by platform (making them
non-Symbian).
> Then you can simply disable these features on
symbian
> and leave then enabled on other platforms. That way
other
> platforms who may have similar requirements to
Symbian
> may also take advantage of these changes.
>
> I would suggest perhaps HELIX_FEATURE_HTTP_CACHE or
> something like that for the caching features.
>
> 2) Same thing for including/excluding the data:
filesystem
> in the httpfsys plugin. Please use a
HELIX_FEATURE_xxx
> instead of platform preprocessor defines. Perhaps
> HELIX_FEATURE_HTTP_INCLUDE_DATAFSYS.
>
> 3) In this change:
>
>  -213,20 +251,17 
> //#define LOG_DUMP_FILE "c:/temp/avi.txt"
>
> #ifdef SUPPORT_SECURE_SOCKETS
> -const char* CHTTPFileSystem::zm_pProtocol =
> "http|chttp|https";
> +const char* const CHTTPFileSystem::zm_pProtocol
=
> "http|chttp|https";
> #else
> -const char* CHTTPFileSystem::zm_pProtocol =
"http|chttp";
> +const char* const CHTTPFileSystem::zm_pProtocol
=
> "http|chttp";
> #endif
>
>
> This plugin should only claim "chttp" if
caching support is
> enabled.
>
>
> 4) +#if !defined(_SYMBIAN)
> + pChunkyRes = new CChunkyRes(pContext);
> +#else
> pChunkyRes = new CChunkyRes();
> +#endif
>
> If you are going to use CChunkyRes in filesystem/http
on
> the Cay210s, then you should merge the changes from
the
> HEAD in CChunkyRes to Cay210s. Then the above change
will
> not be needed. There shouldn't be *too* many changes
in
> CChunkyRes between HEAD and Cay210s.
>
>
> 5) Here:
>
> +#if !defined(HELIX_CONFIG_NOSTATICS)
> if (g_pCacheEntry)
> {
> g_pCacheEntry->close();
> delete g_pCacheEntry;
> g_pCacheEntry = NULL;
> }
> -
> +#endif
> return HXR_OK;
>
> This doesn't seem like the right change. If
HELIX_CONFIG_NOSTATICS
> is defined but HELIX_FEATURE_HTTP_CACHE (the new
define)
> *is* defined,
> then we just need to get g_pCacheEntry from the
global manager. If
> HELIX_FEATURE_HTTP_CACHE is not defined, then it
doesn't matter
> if HELIX_CONFIG_NOSTATICS is defined or not here.
>
>
> 6) -
> -#if defined(THREADS_SUPPORTED)
> - HXMutex::MakeMutex(m_pMutex);
> -#else
> - HXMutex::MakeStubMutex(m_pMutex);
> -#endif
>
> Why is this removed?
>
> Praveen: Moved form constructor to initobject. This
change was taken
> from the head.
>
> 7) Here:
>
> +#if !defined(HELIX_CONFIG_NOSTATICS)
> m_pChunkyRes =
g_ChunkyResMap.GetChunkyResForURL(url, this);
> -
> +#else
> + if(!m_pChunkyResMap)
> + {
> + m_pChunkyResMap = new CChunkyResMap;
> + }
> + if(m_pChunkyResMap)
> + {
> + m_pChunkyRes =
> m_pChunkyResMap->GetChunkyResForURL(url, this,
m_pContext);
> + }
> +#endif
>
> I don't think if HELIX_CONFIG_NOSTATICS is not
defined, we should
> create a new copy every time - we should get
m_pChunkRes from the
> global manager.
> If you create a new chunkyres every time, then if
you have two
> http sessions going at once, then they cannot share
CChunkyRes
> objects.
>
>
>
> Rest looks good.
>
> =============================================
> Eric Hyche (ehyche real.com)
> Technical Lead
> RealNetworks, Inc.
>
> > -----Original Message-----
> > From: client-dev-bounces helixcommunity.org
> > [mailto:client-dev-bounces helixcommunity.org
> <mailto:client-dev-bounces helixcommunity.org> ] On
Behalf Of
> > Praveen.Thimmashetty nokia.com
> > Sent: Tuesday, February 05, 2008 11:21 AM
> > To: common-dev helixcommunity.org;
> > filesystem-dev helixcommunity.org;
client-dev helixcommunity.org
> > Subject: [Client-dev] FW: CR:RESEND:
(hxclient_2_1_0_cayennes
> > Changes)Porting of HTTP 1.1 from head to Symbian
> > (hxclient_2_1_0_cayennes)
> >
> >
> >
> > ______________________________________________
> > From: Thimmashetty Praveen (Nokia-D-MSW/Dallas)
> > Sent: Sunday, February 03, 2008 5:57 PM
> > To: 'filesystem-dev helixcommunity.org';
> > common-dev helixcommunity.org
> > Subject: CR: (hxclient_2_1_0_cayennes
Changes) Porting
> > of HTTP 1.1 from head to Symbian
(hxclient_2_1_0_cayennes)
> >
> >
> > "Nokia submits this code under the terms of a
commercial
> contribution
> > agreement with Real Networks, and I am authorized
to
> contribute this
> > code under said agreement."
> >
> > Modified by: Praveen.Thimmashetty nokia.com
> >
> > Reviewed by:
> >
> > Date: 03-February-2008
> >
> > Project: SymbianMmf
> >
> > ErrorId: SUB 409-795
> >
> >
> > Synopsis: CR: Porting of HTTP 1.1 from head
to Symbian
> > (hxclient_2_1_0_cayennes)
> > This CR has changes
that
> needs to go to
> > hxclient_2_1_0_cayennes. I will do the separate CR
for HEAD
> changes.
> > Symbian will not be using data file system/cache
file
> system. It will
> > just make use of Cchunkres to process data from
network.
> >
> >
> > Root Cause of the problem: New Feature
> >
> > Files Modified:
> > Commonfileiochunkres.cpp
> > Commonfileiopubchunkres.h
> > Commonincludehxresult.h
> >
> > filesystemhttpUmakefil
> > filesystemhttpfactory.cpp
> > filesystemhttpfactory.h
> > filesystemhttphttpfsys.cpp
> > filesystemhttphttpfsys.h
> > filesystemhttppubhttp_debug.h
> >
> > New files added:
> > filesystemhttpsymbian.pcf
> >
> >
> > Image Size and Heap Use impact: no major
impact
> (added httpfsys.dll
> > (112k))
> >
> > Module Release testing (STIF) : Passed.
> >
> > Test case(s) Added : No.
> >
> > Memory leak check performed : Yes. No new
leaks introduced.
> >
> > Platforms and Profiles Build Verified:
> > helix-client-s60-32-mmf-mdf-arm
> >
> > Platforms and Profiles Functionality
verified: armv5,winscw
> >
> > Branch: hxclient_2_1_0_cayennes
> >
> > <<diff.txt>>
<<210changes.zip>>
> >
> >
>
>
_______________________________________________
Common-dev mailing list
Common-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/comm
on-dev
|
|
[1-6]
|
|