Futilities/v0.6/clade/Sys/dba/InReq: Difference between revisions
< Futilities | v0.6 | clade | Sys | dba
Jump to navigation
Jump to search
No edit summary |
m (fixed template usage) |
||
| Line 27: | Line 27: | ||
{{!}} '''Kiosk'''* [e] {{!!}} {{l/ver/clade/full|p=futilities|Sys\dba|Kiosk}} | {{!}} '''Kiosk'''* [e] {{!!}} {{l/ver/clade/full|p=futilities|Sys\dba|Kiosk}} | ||
{{!}}- | {{!}}- | ||
{{!}} '''InData'''* [t] {{!!}} {{l/ver/clade/full|Sys\dba|InRqData}} | {{!}} '''InData'''* [t] {{!!}} {{l/ver/clade/full|p=futilities|Sys\dba|InRqData}} | ||
{{!}}- | {{!}}- | ||
{{!}} '''QObj'''* [c,i] {{!!}} [WFe]{{l/ver/clade/full|p=ferreteria|Data\Mem\QVar|Obj}} | {{!}} '''QObj'''* [c,i] {{!!}} [WFe]{{l/ver/clade/full|p=ferreteria|Data\Mem\QVar|Obj}} | ||
Revision as of 01:42, 24 October 2025
| ||||||||||||||||||||||||||||||
Purpose
Each object encapsulates a given input (request) term. Podling-clades will implement actions and provide functions to access needed values from the input, which is encapsulated by a cInRqData object which can be retrieved from function OAUserInput().
To make use of additional user arguments (after the first), InputRq podlings (aka InReq podlings) can implement function ParseInputArgs(array $ar).
Doing Stuff
- To access input arguments, get an appropriate cInRqData object:
$this->OAUserInput()returns the raw input value strings (split but not parsed), one element for each term in the user input
Code
as of 2025-10-07
interface iInReq extends BaseIface, DbStuffIface {
// OUTPUT
function ListHosts() : string;
}
trait tInReq {
use InDataTrait; // 2025-09-25 might create a conflict
// ++ OBJECTS: requests ++ //
protected function QOSchemaMeta() : QObjIface {
// check to see if we *can* get a Schema object
$of = FilePaths::Me()->ImportFoNode();
$oStat = $of->IndexIt();
echo $oStat->RenderMessages(); // any messages, error or otherwise
if ($oStat->GetOkay()) {
$sScSlug = $this->QSSchema()->GetIt();
$osSchNode = $of->FindSchema($sScSlug); // TODO: possibly this should go in aux\has\tSchema
} else {
$osSchNode = QObjClass::AsNew();
}
return $osSchNode;
}
// -- OBJECTS -- //
// ++ INPUTS: processing ++ //
// CEMENT
protected function ParseInputArgs(array $ar) {
$nXArgs = count($ar);
if ($nXArgs > 0) {
$this->AmHere('TODO 2025-10-04: interpret optional additional arguments');
}
}
protected function SaveAsEngConnName(string $s) {
$this->OAUserInput()->SetIt(KioskEnum::VAL_CONN->value,$s);
}
// ++ INPUTS: parsed/stored ++ //
protected function QDbConnSlug() : QStrIface {
return $this->OAUserInput()->QDbConnSlug();
}
protected function QSchemaSlug() : QStrIface {
return $this->OAUserInput()->QSchemaSlug();
}
// -- INPUT -- //
}