5 #include "cachefsrcache.h"
12 #define MT_INVAL_FD 10
13 #define MT_INVAL_PATH 11
16 class CacheFS
: public WvFS
, protected ReadCache
18 friend class CacheFSCbMgr
;
19 friend class AsyncReadblock
;
22 CacheFS(WvFS
*_fs
, UniConf _cfg
);
26 virtual int fs_chmod(CONTEXT
, PATH
, mode_t mode
);
27 virtual int fs_chown(CONTEXT
, PATH
, uid_t uid
, gid_t gid
);
28 virtual int fs_getattr(CONTEXT
, PATH
, struct fuse_attr
*attr
);
29 virtual int fs_getdir(CONTEXT
, PATH
, WvFuseDirCb
&cb
);
30 virtual int fs_link(CONTEXT
, PATH
, WvStringParm to
);
31 virtual int fs_mkdir(CONTEXT
, PATH
, mode_t mode
);
32 virtual int fs_mknod(CONTEXT
, PATH
, mode_t mode
, dev_t rdev
);
33 virtual int fs_open(CONTEXT
, PATH
, int flags
);
34 virtual int fs_readlink(CONTEXT
, PATH
, char *buf
, size_t size
);
35 virtual int fs_rename(CONTEXT
, PATH
, WvStringParm to
);
36 virtual int fs_rmdir(CONTEXT
, PATH
);
37 virtual int fs_symlink(CONTEXT
, PATH
, WvStringParm to
);
38 virtual int fs_unlink(CONTEXT
, PATH
);
39 virtual int fs_utime(CONTEXT
, PATH
, struct utimbuf
*buf
);
41 virtual int fs_release(CONTEXT
, FD
);
42 virtual int fs_read(CONTEXT
, FD
, char *buf
, size_t size
, off_t offset
);
43 virtual int fs_truncate(CONTEXT
, FD
, off_t size
);
44 virtual int fs_write(CONTEXT
, FD
, const char *buf
, size_t size
,
47 virtual int fs_statfs(CONTEXT
, struct fuse_kstatfs
*fst
);
49 virtual void set_message_callback(WvFSMessageCB cb
)
52 void message_handler(int mtype
, WvStringParm path
);
58 WvFSMessageCB messagecb
;