[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-filesystem-dev
Subject: Re: [Filesystem-dev] RE: [Common-dev]
From: Jamie Gordon <jgordon () real ! com>
Date: 2008-02-08 1:04:25
Message-ID: 47ABAA99.9090709 () real ! com
[Download RAW message or body]
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:
>>>>>> Common\fileio\chunkres.cpp
>>>>>> Common\fileio\pub\chunkres.h
>>>>>> Common\include\hxresult.h
>>>>>>
>>>>>> filesystem\http\Umakefil
>>>>>> filesystem\http\factory.cpp
>>>>>> filesystem\http\factory.h
>>>>>> filesystem\http\httpfsys.cpp
>>>>>> filesystem\http\httpfsys.h
>>>>>> filesystem\http\pub\http_debug.h
>>>>>>
>>>>>> New files added:
>>>>>> filesystem\http\symbian.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/common-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/common-dev
_______________________________________________
Filesystem-dev mailing list
Filesystem-dev@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/filesystem-dev
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic