Apache-DAV

 view release on metacpan or  search on metacpan

xs/Apache/DAV/HooksRepository/HooksRepository.xs  view on Meta::CPAN

 * ***********************************
 * 1. /opt/perl5.6.1/lib/site_perl/5.6.1/ExtUtils/XSBuilder/WrapXS.pm:38
 * 2. /opt/perl5.6.1/lib/site_perl/5.6.1/ExtUtils/XSBuilder/WrapXS.pm:1898
 * 3. xsbuilder/xs_generate.pl:6
 */


#include "mod_dav.h"

#include "EXTERN.h"

#include "perl.h"

#include "XSUB.h"

#include "moddav_xs_sv_convert.h"

#include "moddav_xs_typedefs.h"

static SV * davxs_Apache__DAV__HooksRepository_obj[4] ;



void Apache__DAV__HooksRepository_new_init (pTHX_ Apache__DAV__HooksRepository  obj, SV * item, int overwrite) {

    SV * * tmpsv ;

    if (SvTYPE(item) == SVt_PVMG) 
        memcpy (obj, (void *)SvIVX(item), sizeof (*obj)) ;
    else if (SvTYPE(item) == SVt_PVHV) {
        if ((tmpsv = hv_fetch((HV *)item, "handle_get", sizeof("handle_get") - 1, 0)) || overwrite) {
            obj -> handle_get = (int)davxs_sv2_IV((tmpsv && *tmpsv?*tmpsv:&PL_sv_undef)) ;
        }
   ; }

    else
        croak ("initializer for Apache::DAV::HooksRepository::new is not a hash or object reference") ;

} ;



/* --- Apache::DAV::HooksRepository -> getetag --- */



static const char * davxs_cb_Apache__DAV__HooksRepository__getetag (SV * __cbdest,const dav_resource * resource)
    {
    const char * __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;

    PUTBACK ;
    __cnt = perl_call_method("getetag", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__getetag expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (const char *)davxs_sv2_PV(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static const char * davxs_cb_Apache__DAV__HooksRepository__getetag_obj0 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__getetag (davxs_Apache__DAV__HooksRepository_obj[0],resource) ;
    }



static const char * davxs_cb_Apache__DAV__HooksRepository__getetag_obj1 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__getetag (davxs_Apache__DAV__HooksRepository_obj[1],resource) ;
    }



static const char * davxs_cb_Apache__DAV__HooksRepository__getetag_obj2 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__getetag (davxs_Apache__DAV__HooksRepository_obj[2],resource) ;
    }



static const char * davxs_cb_Apache__DAV__HooksRepository__getetag_obj3 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__getetag (davxs_Apache__DAV__HooksRepository_obj[3],resource) ;
    }

typedef const char * (*tdavxs_cb_Apache__DAV__HooksRepository__getetag_func)(const dav_resource * resource)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__getetag_func davxs_davxs_cb_Apache__DAV__HooksRepository__getetag_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__getetag_obj0,
    davxs_cb_Apache__DAV__HooksRepository__getetag_obj1,
    davxs_cb_Apache__DAV__HooksRepository__getetag_obj2,
    davxs_cb_Apache__DAV__HooksRepository__getetag_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> walk --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__walk (SV * __cbdest,dav_walker_ctx * wctx,int depth)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__WalkerCtx_2obj(wctx)) ;
    PUSHs(davxs_IV_2obj(depth)) ;

    PUTBACK ;
    __cnt = perl_call_method("walk", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__walk expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__walk_obj0 (dav_walker_ctx * wctx,int depth)
    {
    return davxs_cb_Apache__DAV__HooksRepository__walk (davxs_Apache__DAV__HooksRepository_obj[0],wctx,depth) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__walk_obj1 (dav_walker_ctx * wctx,int depth)
    {
    return davxs_cb_Apache__DAV__HooksRepository__walk (davxs_Apache__DAV__HooksRepository_obj[1],wctx,depth) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__walk_obj2 (dav_walker_ctx * wctx,int depth)
    {
    return davxs_cb_Apache__DAV__HooksRepository__walk (davxs_Apache__DAV__HooksRepository_obj[2],wctx,depth) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__walk_obj3 (dav_walker_ctx * wctx,int depth)
    {
    return davxs_cb_Apache__DAV__HooksRepository__walk (davxs_Apache__DAV__HooksRepository_obj[3],wctx,depth) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__walk_func)(dav_walker_ctx * wctx,int depth)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__walk_func davxs_davxs_cb_Apache__DAV__HooksRepository__walk_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__walk_obj0,
    davxs_cb_Apache__DAV__HooksRepository__walk_obj1,
    davxs_cb_Apache__DAV__HooksRepository__walk_obj2,
    davxs_cb_Apache__DAV__HooksRepository__walk_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> remove_resource --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__remove_resource (SV * __cbdest,dav_resource * resource,dav_response * * response)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;

    PUTBACK ;
    __cnt = perl_call_method("remove_resource", G_ARRAY) ;


    if (__cnt != 2)
        croak ("davxs_cb_Apache__DAV__HooksRepository__remove_resource expected 2 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);
    __retsv = POPs;
    *response = (dav_response *)davxs_sv2_Apache__DAV__Response(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj0 (dav_resource * resource,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__remove_resource (davxs_Apache__DAV__HooksRepository_obj[0],resource,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj1 (dav_resource * resource,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__remove_resource (davxs_Apache__DAV__HooksRepository_obj[1],resource,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj2 (dav_resource * resource,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__remove_resource (davxs_Apache__DAV__HooksRepository_obj[2],resource,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj3 (dav_resource * resource,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__remove_resource (davxs_Apache__DAV__HooksRepository_obj[3],resource,response) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__remove_resource_func)(dav_resource * resource,dav_response * * response)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__remove_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__remove_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__remove_resource_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> move_resource --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__move_resource (SV * __cbdest,dav_resource * src,dav_resource * dst,dav_response * * response)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(src)) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(dst)) ;

    PUTBACK ;
    __cnt = perl_call_method("move_resource", G_ARRAY) ;


    if (__cnt != 2)
        croak ("davxs_cb_Apache__DAV__HooksRepository__move_resource expected 2 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);
    __retsv = POPs;
    *response = (dav_response *)davxs_sv2_Apache__DAV__Response(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__move_resource_obj0 (dav_resource * src,dav_resource * dst,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__move_resource (davxs_Apache__DAV__HooksRepository_obj[0],src,dst,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__move_resource_obj1 (dav_resource * src,dav_resource * dst,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__move_resource (davxs_Apache__DAV__HooksRepository_obj[1],src,dst,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__move_resource_obj2 (dav_resource * src,dav_resource * dst,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__move_resource (davxs_Apache__DAV__HooksRepository_obj[2],src,dst,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__move_resource_obj3 (dav_resource * src,dav_resource * dst,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__move_resource (davxs_Apache__DAV__HooksRepository_obj[3],src,dst,response) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__move_resource_func)(dav_resource * src,dav_resource * dst,dav_response * * response)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__move_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__move_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__move_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__move_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__move_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__move_resource_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> copy_resource --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__copy_resource (SV * __cbdest,const dav_resource * src,dav_resource * dst,int depth,dav_response * * response)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(src)) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(dst)) ;
    PUSHs(davxs_IV_2obj(depth)) ;

    PUTBACK ;
    __cnt = perl_call_method("copy_resource", G_ARRAY) ;


    if (__cnt != 2)
        croak ("davxs_cb_Apache__DAV__HooksRepository__copy_resource expected 2 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);
    __retsv = POPs;
    *response = (dav_response *)davxs_sv2_Apache__DAV__Response(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj0 (const dav_resource * src,dav_resource * dst,int depth,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__copy_resource (davxs_Apache__DAV__HooksRepository_obj[0],src,dst,depth,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj1 (const dav_resource * src,dav_resource * dst,int depth,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__copy_resource (davxs_Apache__DAV__HooksRepository_obj[1],src,dst,depth,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj2 (const dav_resource * src,dav_resource * dst,int depth,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__copy_resource (davxs_Apache__DAV__HooksRepository_obj[2],src,dst,depth,response) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj3 (const dav_resource * src,dav_resource * dst,int depth,dav_response * * response)
    {
    return davxs_cb_Apache__DAV__HooksRepository__copy_resource (davxs_Apache__DAV__HooksRepository_obj[3],src,dst,depth,response) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__copy_resource_func)(const dav_resource * src,dav_resource * dst,int depth,dav_response * * response)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__copy_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__copy_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__copy_resource_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> create_collection --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__create_collection (SV * __cbdest,pool * p,dav_resource * resource)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__Pool_2obj(p)) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;

    PUTBACK ;
    __cnt = perl_call_method("create_collection", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__create_collection expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__create_collection_obj0 (pool * p,dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__create_collection (davxs_Apache__DAV__HooksRepository_obj[0],p,resource) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__create_collection_obj1 (pool * p,dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__create_collection (davxs_Apache__DAV__HooksRepository_obj[1],p,resource) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__create_collection_obj2 (pool * p,dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__create_collection (davxs_Apache__DAV__HooksRepository_obj[2],p,resource) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__create_collection_obj3 (pool * p,dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__create_collection (davxs_Apache__DAV__HooksRepository_obj[3],p,resource) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__create_collection_func)(pool * p,dav_resource * resource)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__create_collection_func davxs_davxs_cb_Apache__DAV__HooksRepository__create_collection_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__create_collection_obj0,
    davxs_cb_Apache__DAV__HooksRepository__create_collection_obj1,
    davxs_cb_Apache__DAV__HooksRepository__create_collection_obj2,
    davxs_cb_Apache__DAV__HooksRepository__create_collection_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> free_file --- */



static void davxs_cb_Apache__DAV__HooksRepository__free_file (SV * __cbdest,void * free_handle)
    {

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_PTR_2obj(free_handle)) ;

    PUTBACK ;
    __cnt = perl_call_method("free_file", G_VOID) ;


    if (__cnt != 0)
        croak ("davxs_cb_Apache__DAV__HooksRepository__free_file expected 0 return values") ;

    SPAGAIN ;

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   

    }
   


static void davxs_cb_Apache__DAV__HooksRepository__free_file_obj0 (void * free_handle)
    {
     davxs_cb_Apache__DAV__HooksRepository__free_file (davxs_Apache__DAV__HooksRepository_obj[0],free_handle) ;
    }



static void davxs_cb_Apache__DAV__HooksRepository__free_file_obj1 (void * free_handle)
    {
     davxs_cb_Apache__DAV__HooksRepository__free_file (davxs_Apache__DAV__HooksRepository_obj[1],free_handle) ;
    }



static void davxs_cb_Apache__DAV__HooksRepository__free_file_obj2 (void * free_handle)
    {
     davxs_cb_Apache__DAV__HooksRepository__free_file (davxs_Apache__DAV__HooksRepository_obj[2],free_handle) ;
    }



static void davxs_cb_Apache__DAV__HooksRepository__free_file_obj3 (void * free_handle)
    {
     davxs_cb_Apache__DAV__HooksRepository__free_file (davxs_Apache__DAV__HooksRepository_obj[3],free_handle) ;
    }

typedef void (*tdavxs_cb_Apache__DAV__HooksRepository__free_file_func)(void * free_handle)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__free_file_func davxs_davxs_cb_Apache__DAV__HooksRepository__free_file_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__free_file_obj0,
    davxs_cb_Apache__DAV__HooksRepository__free_file_obj1,
    davxs_cb_Apache__DAV__HooksRepository__free_file_obj2,
    davxs_cb_Apache__DAV__HooksRepository__free_file_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> get_pathname --- */



static const char * davxs_cb_Apache__DAV__HooksRepository__get_pathname (SV * __cbdest,const dav_resource * resource,void * * free_handle_p)
    {
    const char * __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;

    PUTBACK ;
    __cnt = perl_call_method("get_pathname", G_ARRAY) ;


    if (__cnt != 2)
        croak ("davxs_cb_Apache__DAV__HooksRepository__get_pathname expected 2 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (const char *)davxs_sv2_PV(__retsv);
    __retsv = POPs;
    *free_handle_p = (void *)davxs_sv2_PTR(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static const char * davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj0 (const dav_resource * resource,void * * free_handle_p)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_pathname (davxs_Apache__DAV__HooksRepository_obj[0],resource,free_handle_p) ;
    }



static const char * davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj1 (const dav_resource * resource,void * * free_handle_p)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_pathname (davxs_Apache__DAV__HooksRepository_obj[1],resource,free_handle_p) ;
    }



static const char * davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj2 (const dav_resource * resource,void * * free_handle_p)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_pathname (davxs_Apache__DAV__HooksRepository_obj[2],resource,free_handle_p) ;
    }



static const char * davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj3 (const dav_resource * resource,void * * free_handle_p)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_pathname (davxs_Apache__DAV__HooksRepository_obj[3],resource,free_handle_p) ;
    }

typedef const char * (*tdavxs_cb_Apache__DAV__HooksRepository__get_pathname_func)(const dav_resource * resource,void * * free_handle_p)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__get_pathname_func davxs_davxs_cb_Apache__DAV__HooksRepository__get_pathname_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj0,
    davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj1,
    davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj2,
    davxs_cb_Apache__DAV__HooksRepository__get_pathname_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> set_headers --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__set_headers (SV * __cbdest,request_rec * r,const dav_resource * resource)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache_2obj(r)) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;

    PUTBACK ;
    __cnt = perl_call_method("set_headers", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__set_headers expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__set_headers_obj0 (request_rec * r,const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__set_headers (davxs_Apache__DAV__HooksRepository_obj[0],r,resource) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__set_headers_obj1 (request_rec * r,const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__set_headers (davxs_Apache__DAV__HooksRepository_obj[1],r,resource) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__set_headers_obj2 (request_rec * r,const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__set_headers (davxs_Apache__DAV__HooksRepository_obj[2],r,resource) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__set_headers_obj3 (request_rec * r,const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__set_headers (davxs_Apache__DAV__HooksRepository_obj[3],r,resource) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__set_headers_func)(request_rec * r,const dav_resource * resource)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__set_headers_func davxs_davxs_cb_Apache__DAV__HooksRepository__set_headers_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__set_headers_obj0,
    davxs_cb_Apache__DAV__HooksRepository__set_headers_obj1,
    davxs_cb_Apache__DAV__HooksRepository__set_headers_obj2,
    davxs_cb_Apache__DAV__HooksRepository__set_headers_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> seek_stream --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__seek_stream (SV * __cbdest,dav_stream * stream,off_t abs_position)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Stream_2obj(stream)) ;
    PUSHs(davxs_IV_2obj(abs_position)) ;

    PUTBACK ;
    __cnt = perl_call_method("seek_stream", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__seek_stream expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj0 (dav_stream * stream,off_t abs_position)
    {
    return davxs_cb_Apache__DAV__HooksRepository__seek_stream (davxs_Apache__DAV__HooksRepository_obj[0],stream,abs_position) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj1 (dav_stream * stream,off_t abs_position)
    {
    return davxs_cb_Apache__DAV__HooksRepository__seek_stream (davxs_Apache__DAV__HooksRepository_obj[1],stream,abs_position) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj2 (dav_stream * stream,off_t abs_position)
    {
    return davxs_cb_Apache__DAV__HooksRepository__seek_stream (davxs_Apache__DAV__HooksRepository_obj[2],stream,abs_position) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj3 (dav_stream * stream,off_t abs_position)
    {
    return davxs_cb_Apache__DAV__HooksRepository__seek_stream (davxs_Apache__DAV__HooksRepository_obj[3],stream,abs_position) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__seek_stream_func)(dav_stream * stream,off_t abs_position)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__seek_stream_func davxs_davxs_cb_Apache__DAV__HooksRepository__seek_stream_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj0,
    davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj1,
    davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj2,
    davxs_cb_Apache__DAV__HooksRepository__seek_stream_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> write_stream --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__write_stream (SV * __cbdest,dav_stream * stream,const void * buf,size_t bufsize)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Stream_2obj(stream)) ;
    PUSHs(davxs_PTR_2obj(buf)) ;
    PUSHs(davxs_IV_2obj(bufsize)) ;

    PUTBACK ;
    __cnt = perl_call_method("write_stream", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__write_stream expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__write_stream_obj0 (dav_stream * stream,const void * buf,size_t bufsize)
    {
    return davxs_cb_Apache__DAV__HooksRepository__write_stream (davxs_Apache__DAV__HooksRepository_obj[0],stream,buf,bufsize) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__write_stream_obj1 (dav_stream * stream,const void * buf,size_t bufsize)
    {
    return davxs_cb_Apache__DAV__HooksRepository__write_stream (davxs_Apache__DAV__HooksRepository_obj[1],stream,buf,bufsize) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__write_stream_obj2 (dav_stream * stream,const void * buf,size_t bufsize)
    {
    return davxs_cb_Apache__DAV__HooksRepository__write_stream (davxs_Apache__DAV__HooksRepository_obj[2],stream,buf,bufsize) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__write_stream_obj3 (dav_stream * stream,const void * buf,size_t bufsize)
    {
    return davxs_cb_Apache__DAV__HooksRepository__write_stream (davxs_Apache__DAV__HooksRepository_obj[3],stream,buf,bufsize) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__write_stream_func)(dav_stream * stream,const void * buf,size_t bufsize)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__write_stream_func davxs_davxs_cb_Apache__DAV__HooksRepository__write_stream_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__write_stream_obj0,
    davxs_cb_Apache__DAV__HooksRepository__write_stream_obj1,
    davxs_cb_Apache__DAV__HooksRepository__write_stream_obj2,
    davxs_cb_Apache__DAV__HooksRepository__write_stream_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> close_stream --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__close_stream (SV * __cbdest,dav_stream * stream,int commit)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Stream_2obj(stream)) ;
    PUSHs(davxs_IV_2obj(commit)) ;

    PUTBACK ;
    __cnt = perl_call_method("close_stream", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__close_stream expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__close_stream_obj0 (dav_stream * stream,int commit)
    {
    return davxs_cb_Apache__DAV__HooksRepository__close_stream (davxs_Apache__DAV__HooksRepository_obj[0],stream,commit) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__close_stream_obj1 (dav_stream * stream,int commit)
    {
    return davxs_cb_Apache__DAV__HooksRepository__close_stream (davxs_Apache__DAV__HooksRepository_obj[1],stream,commit) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__close_stream_obj2 (dav_stream * stream,int commit)
    {
    return davxs_cb_Apache__DAV__HooksRepository__close_stream (davxs_Apache__DAV__HooksRepository_obj[2],stream,commit) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__close_stream_obj3 (dav_stream * stream,int commit)
    {
    return davxs_cb_Apache__DAV__HooksRepository__close_stream (davxs_Apache__DAV__HooksRepository_obj[3],stream,commit) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__close_stream_func)(dav_stream * stream,int commit)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__close_stream_func davxs_davxs_cb_Apache__DAV__HooksRepository__close_stream_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__close_stream_obj0,
    davxs_cb_Apache__DAV__HooksRepository__close_stream_obj1,
    davxs_cb_Apache__DAV__HooksRepository__close_stream_obj2,
    davxs_cb_Apache__DAV__HooksRepository__close_stream_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> open_stream --- */



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__open_stream (SV * __cbdest,const dav_resource * resource,dav_stream_mode mode,dav_stream * * stream)
    {
    Apache__DAV__Error __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;
    PUSHs(davxs_IV_2obj(mode)) ;

    PUTBACK ;
    __cnt = perl_call_method("open_stream", G_ARRAY) ;


    if (__cnt != 2)
        croak ("davxs_cb_Apache__DAV__HooksRepository__open_stream expected 2 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Error)davxs_sv2_Apache__DAV__Error(__retsv);
    __retsv = POPs;
    *stream = (dav_stream *)davxs_sv2_Apache__DAV__Stream(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__open_stream_obj0 (const dav_resource * resource,dav_stream_mode mode,dav_stream * * stream)
    {
    return davxs_cb_Apache__DAV__HooksRepository__open_stream (davxs_Apache__DAV__HooksRepository_obj[0],resource,mode,stream) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__open_stream_obj1 (const dav_resource * resource,dav_stream_mode mode,dav_stream * * stream)
    {
    return davxs_cb_Apache__DAV__HooksRepository__open_stream (davxs_Apache__DAV__HooksRepository_obj[1],resource,mode,stream) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__open_stream_obj2 (const dav_resource * resource,dav_stream_mode mode,dav_stream * * stream)
    {
    return davxs_cb_Apache__DAV__HooksRepository__open_stream (davxs_Apache__DAV__HooksRepository_obj[2],resource,mode,stream) ;
    }



static Apache__DAV__Error davxs_cb_Apache__DAV__HooksRepository__open_stream_obj3 (const dav_resource * resource,dav_stream_mode mode,dav_stream * * stream)
    {
    return davxs_cb_Apache__DAV__HooksRepository__open_stream (davxs_Apache__DAV__HooksRepository_obj[3],resource,mode,stream) ;
    }

typedef Apache__DAV__Error (*tdavxs_cb_Apache__DAV__HooksRepository__open_stream_func)(const dav_resource * resource,dav_stream_mode mode,dav_stream * * stream)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__open_stream_func davxs_davxs_cb_Apache__DAV__HooksRepository__open_stream_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__open_stream_obj0,
    davxs_cb_Apache__DAV__HooksRepository__open_stream_obj1,
    davxs_cb_Apache__DAV__HooksRepository__open_stream_obj2,
    davxs_cb_Apache__DAV__HooksRepository__open_stream_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> is_parent_resource --- */



static int davxs_cb_Apache__DAV__HooksRepository__is_parent_resource (SV * __cbdest,const dav_resource * res1,const dav_resource * res2)
    {
    int __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(res1)) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(res2)) ;

    PUTBACK ;
    __cnt = perl_call_method("is_parent_resource", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__is_parent_resource expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (int)davxs_sv2_IV(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static int davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj0 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_parent_resource (davxs_Apache__DAV__HooksRepository_obj[0],res1,res2) ;
    }



static int davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj1 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_parent_resource (davxs_Apache__DAV__HooksRepository_obj[1],res1,res2) ;
    }



static int davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj2 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_parent_resource (davxs_Apache__DAV__HooksRepository_obj[2],res1,res2) ;
    }



static int davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj3 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_parent_resource (davxs_Apache__DAV__HooksRepository_obj[3],res1,res2) ;
    }

typedef int (*tdavxs_cb_Apache__DAV__HooksRepository__is_parent_resource_func)(const dav_resource * res1,const dav_resource * res2)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__is_parent_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> is_same_resource --- */



static int davxs_cb_Apache__DAV__HooksRepository__is_same_resource (SV * __cbdest,const dav_resource * res1,const dav_resource * res2)
    {
    int __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(res1)) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(res2)) ;

    PUTBACK ;
    __cnt = perl_call_method("is_same_resource", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__is_same_resource expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (int)davxs_sv2_IV(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static int davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj0 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_same_resource (davxs_Apache__DAV__HooksRepository_obj[0],res1,res2) ;
    }



static int davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj1 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_same_resource (davxs_Apache__DAV__HooksRepository_obj[1],res1,res2) ;
    }



static int davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj2 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_same_resource (davxs_Apache__DAV__HooksRepository_obj[2],res1,res2) ;
    }



static int davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj3 (const dav_resource * res1,const dav_resource * res2)
    {
    return davxs_cb_Apache__DAV__HooksRepository__is_same_resource (davxs_Apache__DAV__HooksRepository_obj[3],res1,res2) ;
    }

typedef int (*tdavxs_cb_Apache__DAV__HooksRepository__is_same_resource_func)(const dav_resource * res1,const dav_resource * res2)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__is_same_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__is_same_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__is_same_resource_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> get_parent_resource --- */



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_parent_resource (SV * __cbdest,const dav_resource * resource)
    {
    Apache__DAV__Resource __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache__DAV__Resource_2obj(resource)) ;

    PUTBACK ;
    __cnt = perl_call_method("get_parent_resource", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__get_parent_resource expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Resource)davxs_sv2_Apache__DAV__Resource(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj0 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_parent_resource (davxs_Apache__DAV__HooksRepository_obj[0],resource) ;
    }



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj1 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_parent_resource (davxs_Apache__DAV__HooksRepository_obj[1],resource) ;
    }



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj2 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_parent_resource (davxs_Apache__DAV__HooksRepository_obj[2],resource) ;
    }



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj3 (const dav_resource * resource)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_parent_resource (davxs_Apache__DAV__HooksRepository_obj[3],resource) ;
    }

typedef Apache__DAV__Resource (*tdavxs_cb_Apache__DAV__HooksRepository__get_parent_resource_func)(const dav_resource * resource)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__get_parent_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_obj3
    } ;



/* --- Apache::DAV::HooksRepository -> get_resource --- */



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_resource (SV * __cbdest,request_rec * r,const char * root_dir,const char * workspace)
    {
    Apache__DAV__Resource __retval ;
    SV * __retsv ;

    int __cnt ;
    
    dSP ;
    ENTER ;
    SAVETMPS ;
    PUSHMARK(SP) ;
    PUSHs(__cbdest) ;
    PUSHs(davxs_Apache_2obj(r)) ;
    PUSHs(davxs_PV_2obj(root_dir)) ;
    PUSHs(davxs_PV_2obj(workspace)) ;

    PUTBACK ;
    __cnt = perl_call_method("get_resource", G_SCALAR) ;


    if (__cnt != 1)
        croak ("davxs_cb_Apache__DAV__HooksRepository__get_resource expected 1 return values") ;

    SPAGAIN ;
    __retsv = POPs;
    __retval = (Apache__DAV__Resource)davxs_sv2_Apache__DAV__Resource(__retsv);

    PUTBACK ;
    FREETMPS ;
    LEAVE ;
    
   
    return __retval ;

    }
   


static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_resource_obj0 (request_rec * r,const char * root_dir,const char * workspace)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_resource (davxs_Apache__DAV__HooksRepository_obj[0],r,root_dir,workspace) ;
    }



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_resource_obj1 (request_rec * r,const char * root_dir,const char * workspace)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_resource (davxs_Apache__DAV__HooksRepository_obj[1],r,root_dir,workspace) ;
    }



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_resource_obj2 (request_rec * r,const char * root_dir,const char * workspace)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_resource (davxs_Apache__DAV__HooksRepository_obj[2],r,root_dir,workspace) ;
    }



static Apache__DAV__Resource davxs_cb_Apache__DAV__HooksRepository__get_resource_obj3 (request_rec * r,const char * root_dir,const char * workspace)
    {
    return davxs_cb_Apache__DAV__HooksRepository__get_resource (davxs_Apache__DAV__HooksRepository_obj[3],r,root_dir,workspace) ;
    }

typedef Apache__DAV__Resource (*tdavxs_cb_Apache__DAV__HooksRepository__get_resource_func)(request_rec * r,const char * root_dir,const char * workspace)  ;
static tdavxs_cb_Apache__DAV__HooksRepository__get_resource_func davxs_davxs_cb_Apache__DAV__HooksRepository__get_resource_func [4] = {
    davxs_cb_Apache__DAV__HooksRepository__get_resource_obj0,
    davxs_cb_Apache__DAV__HooksRepository__get_resource_obj1,
    davxs_cb_Apache__DAV__HooksRepository__get_resource_obj2,
    davxs_cb_Apache__DAV__HooksRepository__get_resource_obj3
    } ;


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

int
handle_get(obj, val=0)
    Apache::DAV::HooksRepository obj
    int val
  PREINIT:
    /*nada*/

  CODE:
    RETVAL = (int)  obj->handle_get;

    if (items > 1) {
        obj->handle_get = (int) val;
    }
  OUTPUT:
    RETVAL

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Resource
get_resource(__self, r, root_dir, workspace)
    Apache::DAV::HooksRepository __self
    Apache r
    const char * root_dir
    const char * workspace
CODE:
    RETVAL = (*__self->get_resource)(r, root_dir, workspace);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Resource
get_parent_resource(__self, resource)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource resource
CODE:
    RETVAL = (*__self->get_parent_resource)(resource);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

int
is_same_resource(__self, res1, res2)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource res1
    Apache::DAV::Resource res2
CODE:
    RETVAL = (*__self->is_same_resource)(res1, res2);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

int
is_parent_resource(__self, res1, res2)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource res1
    Apache::DAV::Resource res2
CODE:
    RETVAL = (*__self->is_parent_resource)(res1, res2);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
open_stream(__self, resource, mode)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource resource
    dav_stream_mode mode
PREINIT:
    Apache__DAV__Stream stream;
PPCODE:
    RETVAL = (*__self->open_stream)(resource, mode, &stream);
    XSprePUSH;
    EXTEND(SP, 2) ;
    PUSHs(davxs_Apache__DAV__Error_2obj(RETVAL)) ;
    PUSHs(davxs_Apache__DAV__Stream_2obj(stream)) ;

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
close_stream(__self, stream, commit)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Stream stream
    int commit
CODE:
    RETVAL = (*__self->close_stream)(stream, commit);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
write_stream(__self, stream, buf, bufsize)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Stream stream
    const void * buf
    size_t bufsize
CODE:
    RETVAL = (*__self->write_stream)(stream, buf, bufsize);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
seek_stream(__self, stream, abs_position)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Stream stream
    off_t abs_position
CODE:
    RETVAL = (*__self->seek_stream)(stream, abs_position);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
set_headers(__self, r, resource)
    Apache::DAV::HooksRepository __self
    Apache r
    Apache::DAV::Resource resource
CODE:
    RETVAL = (*__self->set_headers)(r, resource);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

const char *
get_pathname(__self, resource)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource resource
PREINIT:
    PTR free_handle_p;
PPCODE:
    RETVAL = (*__self->get_pathname)(resource, &free_handle_p);
    XSprePUSH;
    EXTEND(SP, 2) ;
    PUSHs(davxs_PV_2obj(RETVAL)) ;
    PUSHs(davxs_PTR_2obj(free_handle_p)) ;

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

void
free_file(__self, free_handle)
    Apache::DAV::HooksRepository __self
    void * free_handle
CODE:
    (*__self->free_file)(free_handle);


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
create_collection(__self, p, resource)
    Apache::DAV::HooksRepository __self
    Apache::Pool p
    Apache::DAV::Resource resource
CODE:
    RETVAL = (*__self->create_collection)(p, resource);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
copy_resource(__self, src, dst, depth)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource src
    Apache::DAV::Resource dst
    int depth
PREINIT:
    Apache__DAV__Response response;
PPCODE:
    RETVAL = (*__self->copy_resource)(src, dst, depth, &response);
    XSprePUSH;
    EXTEND(SP, 2) ;
    PUSHs(davxs_Apache__DAV__Error_2obj(RETVAL)) ;
    PUSHs(davxs_Apache__DAV__Response_2obj(response)) ;

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
move_resource(__self, src, dst)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource src
    Apache::DAV::Resource dst
PREINIT:
    Apache__DAV__Response response;
PPCODE:
    RETVAL = (*__self->move_resource)(src, dst, &response);
    XSprePUSH;
    EXTEND(SP, 2) ;
    PUSHs(davxs_Apache__DAV__Error_2obj(RETVAL)) ;
    PUSHs(davxs_Apache__DAV__Response_2obj(response)) ;

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
remove_resource(__self, resource)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource resource
PREINIT:
    Apache__DAV__Response response;
PPCODE:
    RETVAL = (*__self->remove_resource)(resource, &response);
    XSprePUSH;
    EXTEND(SP, 2) ;
    PUSHs(davxs_Apache__DAV__Error_2obj(RETVAL)) ;
    PUSHs(davxs_Apache__DAV__Response_2obj(response)) ;

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

Apache::DAV::Error
walk(__self, wctx, depth)
    Apache::DAV::HooksRepository __self
    Apache::DAV::WalkerCtx wctx
    int depth
CODE:
    RETVAL = (*__self->walk)(wctx, depth);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 

const char *
getetag(__self, resource)
    Apache::DAV::HooksRepository __self
    Apache::DAV::Resource resource
CODE:
    RETVAL = (*__self->getetag)(resource);
OUTPUT:
    RETVAL


MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 



SV *
new (class,initializer=NULL)
    char * class
    SV * initializer 
PREINIT:
    SV * svobj ;
    Apache__DAV__HooksRepository  cobj ;
    SV * tmpsv ;
CODE:
    davxs_Apache__DAV__HooksRepository_create_obj(cobj,svobj,RETVAL,malloc(sizeof(*cobj))) ;

    if (initializer) {
        if (!SvROK(initializer) || !(tmpsv = SvRV(initializer))) 
            croak ("initializer for Apache::DAV::HooksRepository::new is not a reference") ;

        if (SvTYPE(tmpsv) == SVt_PVHV || SvTYPE(tmpsv) == SVt_PVMG)  
            Apache__DAV__HooksRepository_new_init (aTHX_ cobj, tmpsv, 0) ;
        else if (SvTYPE(tmpsv) == SVt_PVAV) {
            int i ;
            SvGROW(svobj, sizeof (*cobj) * av_len((AV *)tmpsv)) ;     
            for (i = 0; i <= av_len((AV *)tmpsv); i++) {
                SV * * itemrv = av_fetch((AV *)tmpsv, i, 0) ;
                SV * item ;
                if (!itemrv || !*itemrv || !SvROK(*itemrv) || !(item = SvRV(*itemrv))) 
                    croak ("array element of initializer for Apache::DAV::HooksRepository::new is not a reference") ;
                Apache__DAV__HooksRepository_new_init (aTHX_ &cobj[i], item, 1) ;
            }
        }
        else {
             croak ("initializer for Apache::DAV::HooksRepository::new is not a hash/array/object reference") ;
        }
    }
OUTPUT:
    RETVAL 

MODULE = Apache::DAV::HooksRepository    PACKAGE = Apache::DAV::HooksRepository 



void
init_callbacks (obj)
    SV *  obj
PREINIT:
    int  n = -1 ;
    int  i ;
    Apache__DAV__HooksRepository cobj = (Apache__DAV__HooksRepository)davxs_sv2_Apache__DAV__HooksRepository(obj) ;
    SV * ref ;
    SV * perl_obj ;
CODE:

    perl_obj = SvRV(obj) ;
    ref = newRV_noinc(perl_obj) ;

    for (i=0;i < 4;i++)
        {
        if (davxs_Apache__DAV__HooksRepository_obj[i] == ref)
            {
            n = i ;
            break ;
            }
        }

    if (n < 0)
        for (i=0;i < 4;i++)
            {
            if (davxs_Apache__DAV__HooksRepository_obj[i] == NULL)
                {
                n = i ;
                break ;
                }
            }
        
    if (n < 0)
        croak ("Limit for concurrent object callbacks reached for Apache::DAV::HooksRepository. Limit is 4") ;

    davxs_Apache__DAV__HooksRepository_obj[n] = ref ;
    cobj -> get_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__get_resource_func[n] ;
    cobj -> get_parent_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__get_parent_resource_func[n] ;
    cobj -> is_same_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__is_same_resource_func[n] ;
    cobj -> is_parent_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__is_parent_resource_func[n] ;
    cobj -> open_stream = davxs_davxs_cb_Apache__DAV__HooksRepository__open_stream_func[n] ;
    cobj -> close_stream = davxs_davxs_cb_Apache__DAV__HooksRepository__close_stream_func[n] ;
    cobj -> write_stream = davxs_davxs_cb_Apache__DAV__HooksRepository__write_stream_func[n] ;
    cobj -> seek_stream = davxs_davxs_cb_Apache__DAV__HooksRepository__seek_stream_func[n] ;
    cobj -> set_headers = davxs_davxs_cb_Apache__DAV__HooksRepository__set_headers_func[n] ;
    cobj -> get_pathname = davxs_davxs_cb_Apache__DAV__HooksRepository__get_pathname_func[n] ;
    cobj -> free_file = davxs_davxs_cb_Apache__DAV__HooksRepository__free_file_func[n] ;
    cobj -> create_collection = davxs_davxs_cb_Apache__DAV__HooksRepository__create_collection_func[n] ;
    cobj -> copy_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__copy_resource_func[n] ;
    cobj -> move_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__move_resource_func[n] ;
    cobj -> remove_resource = davxs_davxs_cb_Apache__DAV__HooksRepository__remove_resource_func[n] ;
    cobj -> walk = davxs_davxs_cb_Apache__DAV__HooksRepository__walk_func[n] ;
    cobj -> getetag = davxs_davxs_cb_Apache__DAV__HooksRepository__getetag_func[n] ;



( run in 0.695 second using v1.01-cache-2.11-cpan-75ffa21a3d4 )