[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