[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-filesystem-dev
Subject:    [Filesystem-dev] RE: [Client-dev] FW: CR:RESEND:
From:       <Praveen.Thimmashetty () nokia ! com>
Date:       2008-02-06 16:53:07
Message-ID: 2A15C07EF7DF6243A092FB438FD4B366C2D67F () daebe103 ! NOE ! Nokia ! com
[Download RAW message or body]

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>>
> > 
> > 
> 
> 


_______________________________________________
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