Futilities/v0.6/clade/Apps/dba/Kiosk/@current

From WoozleCodes
Jump to navigation Jump to search
Code Snapshots
interface iKiosk extends BaseIface {
    // CONFIG: data
    const CMD_EXPORT  = 'do.export';
    const CMD_IMPORT  = 'do.import';
    const CMD_LIST    = 'do.list';
    const CMD_SETUP   = 'do.setup';
    const CMD_TEST    = 'do.test';
    const VAL_CONN    = 'xf.conn';
    const VAL_DFMT    = 'xf.format';
    const VAL_FILE    = 'xf.file';
    const VAL_PATH    = 'xf.path';
    const VAL_REPLACE = 'xf.replace';
    const VAL_SCHEMA  = 'xf.schema';
}
class cKiosk extends BaseClass implements iKiosk {

    // ++ CONFIG: figuring ++ //

    protected function InReqClassFor(string $sName) : ?string {
        switch ($sName) {
          case self::CMD_EXPORT: $sc = InRqSpace\cDoExport::class; break;
          case self::CMD_IMPORT: $sc = InRqSpace\cDoImport::class; break;
          case self::CMD_LIST:   $sc = InRqSpace\cDoList::class; break;
          case self::CMD_SETUP:  $sc = InRqSpace\cDoSetup::class; break;
          case self::CMD_TEST:   $sc = InRqSpace\cDoTest::class; break;
          case self::VAL_FILE:   $sc = InStSpace\cSetFile::class; break;
          default:
            // 2024-12-16 Actually, let's just assume that anything without an explicit class is a value:
            $sc = InRqClass::class;
        }
        return $sc;
    }

    // -- CONFIG -- //
    // ++ OBJECTS ++ //

    static private $ofpStor = NULL; static public function QStoragePath() : QStrIface { return self::$ofpStor ?? (self::$ofpStor = QStrClass::AsNew()); }

    // -- OBJECTS -- //
}