interface iRemote extends BaseIface, ClientIface, ServerIface {
// SETUP
static function FromEntry(EntryIface $o) : SelfIface;
// OBJECTS
function NewTunnel(CredsIface $oICreds, ?int $nPortLocal=NULL) : TunnelIface;
}
abstract class caRemote extends BaseClass implements SelfIface {
// ++ SETUP ++ //
public static function FromEntry(EntryIface $o) : SelfIface {
$oThis = new static;
$oThis->OEntry($o);
return $oThis;
}
// -- SETUP -- //
// ++ OBJECTS ++ //
private $oEnt;
public function OEntry(?EntryIface $o=NULL) : EntryIface { return is_null($o) ? $this->oEnt : ($this->oEnt = $o); }
// -- OBJECTS -- //
}