Config::Model::FuseUI - Fuse virtual file interface for Config::Model
version 2.055
# command line mkdir fuse_dir config-edit -application popcon -ui fuse -fuse_dir fusedir ll fuse_dir fusermount -u fuse_dir # programmatic use Config::Model ; use Config::Model::FuseUI ; use Log::Log4perl qw(:easy) ; Log::Log4perl->easy_init($WARN); my $model = Config::Model -> new; my $root = $model -> instance (root_class_name => "PopCon") -> config_root ; my $ui = Config::Model::FuseUI->new( root => $root, mountpoint => "fuse_dir" ); $ui -> run_loop ; # blocking call # explore fuse_dir in another terminal then umount fuse_dir directory
This module provides a virtual file system interface for you configuration data. Each possible parameter of your configuration file is mapped to a file.
$ perl -Ilib config-edit -ui fuse -fuse_dir fused -appli popcon Mounting config on fused in background. Use command 'fusermount -u fused' to unmount $ ll fused total 4 -rw-r--r-- 1 domi domi 1 Dec 8 19:27 DAY -rw-r--r-- 1 domi domi 0 Dec 8 19:27 HTTP_PROXY -rw-r--r-- 1 domi domi 0 Dec 8 19:27 MAILFROM -rw-r--r-- 1 domi domi 0 Dec 8 19:27 MAILTO -rw-r--r-- 1 domi domi 32 Dec 8 19:27 MY_HOSTID -rw-r--r-- 1 domi domi 3 Dec 8 19:27 PARTICIPATE -rw-r--r-- 1 domi domi 0 Dec 8 19:27 SUBMITURLS -rw-r--r-- 1 domi domi 3 Dec 8 19:27 USEHTTP $ fusermount -u fuse_dir
For some configuration, mapping each parameter to a file may lead to a high number of files.
parameters are:
Config::Model object
Root of the configuration tree (Config::Model::Node object )
Config::Model::Node
Mount the file system either in the current process or fork a new process before mounting the file system. In the former case, the call is blocking. In the latter, the call will return after forking a process that will perform the mount. Debug parameter is passed to Fuse system to get Fuse traces.
Mount the fuse file system. This method will block until the file system is unmounted (with fusermount -u mount_point command)
fusermount -u mount_point
Fuse, Config::Model
Dominique Dumont
This software is Copyright (c) 2014 by Dominique Dumont.
This is free software, licensed under:
The GNU Lesser General Public License, Version 2.1, February 1999
To install Config::Model, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Config::Model
CPAN shell
perl -MCPAN -e shell install Config::Model
For more information on module installation, please visit the detailed CPAN module installation guide.