I have checked in the following changes to head.
Thanks
Praveen
-----Original Message-----
From: ext Jamie Gordon [mailto:jgordon real.com]
Sent: Thursday, February 07, 2008 7:04 PM
To: Thimmashetty Praveen (Nokia-D-MSW/Dallas)
Cc: ping real.com; common-dev-bounces helixcommunity.org; Gupta
Ashish.As (Nokia-D-MSW/Dallas); filesystem-dev helixcommunity.org;
client-dev helixcommunity.org; common-dev helixcommunity.org
Subject: Re: [Filesystem-dev] RE: [Common-dev]
RE:[Client-dev]
FW:CR:RESEND:(hxclient_2_1_0_cayennesChanges)Porting of
HTTP1.1 fromhead
to Symbian(hxclient_2_1_0_cayennes)
That seems fine to me.
Praveen.Thimmashetty nokia.com wrote:
> Hi All,
>
> I was able to build the head code with my changes(with
positive flags)
> in Linux.
> I did create htt-advance-feature.pfi(attached) and
executed this pfi
> file from Helix-client-core-basic.pfi,
helix-client-mobile-common.pfi,
> helix-server-client-common.pf And
helix-producer-all-defines.pf.
>
> Let me know if this solution is fine to check it in.
>
>
> Thanks
> Praveen
>
>
> -----Original Message-----
> From: common-dev-bounces helixcommunity.org
> [mailto:common-dev-bounces helixcommunity.org] On
Behalf Of ext Jamie
> Gordon
> Sent: Thursday, February 07, 2008 1:54 PM
> To: ping real.com
> Cc: common-dev-bounces helixcommunity.org; Gupta
Ashish.As
> (Nokia-D-MSW/Dallas); filesystem-dev helixcommunity.org;
> client-dev helixcommunity.org; common-dev helixcommunity.org
> Subject: Re: [Filesystem-dev] RE: [Common-dev]
RE:[Client-dev]
> FW:CR:RESEND:(hxclient_2_1_0_cayennesChanges)Porting of
HTTP1.1
> fromhead to Symbian(hxclient_2_1_0_cayennes)
>
> Henry Ping wrote:
>
>> We have this pfi(profile include) which are the
building blocks of
>> profile and can be included by the actual pf file.
Several of them
>> are
>
>> very basic and should be included by all the
profile such as
>> helix-client-core-basic.pfi and
helix-client-mobile-common.pfi. I
>> suggest to define the positive defines in those pfi
file to minimize
>> the impact to other product.
>>
> It's not that simple. That will only handle client
profiles. httpfsys
> is common code, used by other projects outside the
client. Adding a
> new inclusive define around existing functionality in
this module
> would definitely also require changes to the
helix-server-xxx
profiles.
> Possibly also to the helix-producer-xxx (I'm not sure
if it uses
> httpfsys). And some projects (esp. restricted) might
define profiles
> within their project directories, and some may use BIF
profiles to
> define within their BIFs. And some profiles may be
defined in
> internal/ private repositories within RN or other
companies building
> products based on the helix source.
>
> That type of change is really a rather large impact and
has to be
> considered carefully.
>
> Thanks,
> Jamie
>
>> For your build profile, you can remove the positive
define by adding
>>
"project.RemoveDefines('HELIX_FEATURE_xxx")"
in your pf file.
>>
>> Just a thought.
>>
>> Henry
>>
>>> -----Original Message-----
>>> From: filesystem-dev-bounces helixcommunity.org
>>> [mailto:filesystem-dev- bounces helixcommunity.org] On Behalf Of
>>> Eric
>
>>> Hyche
>>> Sent: Wednesday, February 06, 2008 3:01 PM
>>> To: Ashish.As.Gupta nokia.com;
>>> common-dev-bounces helixcommunity.org;
>>> common-dev helixcommunity.org; filesystem-dev helixcommunity.org;
>>> client- dev helixcommunity.org
>>> Subject: [Filesystem-dev] RE: [Common-dev] RE:
[Client-dev]
>>> FW:CR:RESEND:(hxclient_2_1_0_cayennes
Changes)Porting of HTTP1.1
>>> fromhead to Symbian (hxclient_2_1_0_cayennes)
>>>
>>>
>>> I'm Ok with making them negative defines
(xxx_DISABLE_CACHE, etc.).
>>> You're right that if we made them positive we
would have to make
>>> sure
>
>>> we included them in all applicable profiles.
>>>
>>> Eric
>>>
>>> =============================================
>>> Eric Hyche (ehyche real.com)
>>> Technical Lead
>>> RealNetworks, Inc.
>>>
>>>> -----Original Message-----
>>>> From: Ashish.As.Gupta nokia.com
[mailto:Ashish.As.Gupta nokia.com]
>>>> Sent: Wednesday, February 06, 2008 4:05 PM
>>>> To: common-dev-bounces helixcommunity.org; ehyche real.com;
>>>> common-dev helixcommunity.org;
filesystem-dev helixcommunity.org;
>>>> client-dev helixcommunity.org
>>>> Subject: RE: [Common-dev] RE: [Client-dev]
FW:
>>>> CR:RESEND:(hxclient_2_1_0_cayennes
Changes)Porting of HTTP
>>>> 1.1 fromhead to Symbian
(hxclient_2_1_0_cayennes)
>>>>
>>>> Hi Eric,
>>>>
>>>> We need to checkin this change by the end
of today. Is the solution
>>>> proposed by Praveen here fine? Other option
we have is to define
>>>> HELIX_FEATURE_HTTP_ENABLE_CACHE and
>>>> HELIX_CONFIG_HTTP_INCLUDE_DATAFSYS
>>>> in filesystem/http/Umakefil for non-symbian
platforms.
>>>>
>>>> Thanks
>>>> Ashish
>>>>
>>>> -----Original Message-----
>>>> From: common-dev-bounces helixcommunity.org
>>>> [mailto:common-dev-bounces helixcommunity.org]
>>>> Sent: Wednesday, February 06, 2008 10:53
AM
>>>> To: ehyche real.com; common-dev helixcommunity.org;
>>>> filesystem-dev helixcommunity.org;
client-dev helixcommunity.org
>>>> Subject: [Common-dev] RE: [Client-dev] FW:
>>>> CR:RESEND:(hxclient_2_1_0_cayennes
Changes)Porting of HTTP
>>>> 1.1 fromhead
>>>> to Symbian (hxclient_2_1_0_cayennes)
>>>>
>>>> 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
>>>>
>>>
_______________________________________________
>>> Filesystem-dev mailing list
>>> Filesystem-dev helixcommunity.org
>>> http://lists.helixcommunity.org/mailman/listinfo/
filesystem-dev
>>
>> _______________________________________________
>> Filesystem-dev mailing list
>> Filesystem-dev helixcommunity.org
>> http://lists.helixcommunity.org/mailman/listinfo/
filesystem-dev
>
> _______________________________________________
> Common-dev mailing list
> Common-dev helixcommunity.org
> http://lists.helixcommunity.org/mailman/listinfo/comm
on-dev
_______________________________________________
Filesystem-dev mailing list
Filesystem-dev helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/
filesystem-dev
|