You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Ben Collins-Sussman <su...@collab.net> on 2002/02/07 18:29:07 UTC

RA->get_file

Hey gstein (and others),

I'm changing the docstring promise on RA->get_file().  Specifically,
it's going to return *all* properties to the caller, not just 'fs'
properties.

For ra_local, the change was easy.  I just added some 'svn:entry:'
props into the hash.  ra_local has no 'svn:wc' props to store.

For ra_dav, I'm having more trouble.  svn_ra_dav__get_file grabs all
props from the server into a rsrc object:

    get all props into prophash
    create newhash

    foreach prop in prophash:
      if prop has 'svn:custom:' prefix, 
         strip prefix and store in newhash. /* 'normal' fs props */
      else
         if prop matches one of the DAV: entryprops,
           convert to correct svn:entry: name, store in newhash.
         if prop matches one of the DAV: wcprops,
           convert to correct svn:wc: name, store in newhash.

Now, the first conversion going on -- the svn:entry: names -- is
already in a single function.  That function already existed, so now
it has a second caller.  But I'm confused about how to do the 'wcprop'
conversions.  Is that mapping already laid out somewhere?  Heck, I'm
not even fully aware of all the svn:wc: props that exist.  Can I have
some pointers?


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: RA->get_file

Posted by Greg Stein <gs...@lyra.org>.
On Thu, Feb 07, 2002 at 12:29:07PM -0600, Ben Collins-Sussman wrote:
> 
> Hey gstein (and others),
> 
> I'm changing the docstring promise on RA->get_file().  Specifically,
> it's going to return *all* properties to the caller, not just 'fs'
> properties.

Cool.

>...
>     foreach prop in prophash:
>       if prop has 'svn:custom:' prefix, 
>          strip prefix and store in newhash. /* 'normal' fs props */

Right. They just acquire that prefix as they travel over the wire.

>       else
>          if prop matches one of the DAV: entryprops,
>            convert to correct svn:entry: name, store in newhash.
>          if prop matches one of the DAV: wcprops,
>            convert to correct svn:wc: name, store in newhash.
> 
> Now, the first conversion going on -- the svn:entry: names -- is
> already in a single function.  That function already existed, so now
> it has a second caller.  But I'm confused about how to do the 'wcprop'
> conversions.  Is that mapping already laid out somewhere?  Heck, I'm
> not even fully aware of all the svn:wc: props that exist.  Can I have
> some pointers?

There is only one wcprop for files. SVN_RA_DAV__LP_VSN_URL is the local
name, and DAV:checked-in (SVN_RA_DAV__PROP_CHECKED_IN) is the webdav name.

Otherwise, that stuff looks good. I wouldn't dig into the existing code too
much, or bend over to use it. Because of the evolution of the props stuff,
fetch.c needs an overall revisit.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org