Modules for commands In &fmldevel;, all command modules are shared among command mail, CUI (makefml, fml) and GUI (CGI). Commands are caregorized into user and administrative ones by the priviledge. FML::Command class consists of the following classes: FML::Command entrance into FML::Command. command dispatcher. FML::Command::User command for general ML users. FML::Command::Admin command for remote administrators. For example, a user command in a command mail kicks off FML::Command firstly, after some steps, calls FML::Command::User::$command where $command is the specified command name. User Command In Command Mail FML::Process::Command call FML::Command::User::$command for $command via FML::Command. FYI: some module calls FML::Command::Admin::$command for real work even if it is a user command. For example, FML::Command::Admin::subscribe works for subscription. In this case, FML::Command::User::subscribe module is a wrapper/entrance for confirmation before the real subscription process runs. Admin Command (Administrative Command In Command Mail) It calles FML::Command::Admin::$command for $command via FML::Command via FML::Process::Command. CUI (makefml/fml) FML::Process::Configure calls FML::Command::Admin::$command via FML::Command. GUI (CGI) FML::Process::CGI calls FML::Command::Admin::$command via FML::Command.