Ferreteria/v0.6/clade/Sys/FileSys/Node/venue/VenNode

From WoozleCodes
Jump to navigation Jump to search
clade: Sys\FileSys\Node\venue\VenNode
Clade Family
Aspect VenNode
Clade Aliases
Alias Clade
Base* [ca,i] Sys\FileSys\Node\aux\Aspect
FiOps* [c,i] Sys\FileSys\Node\inout\Fil
FoOps* [c,i] Sys\FileSys\Node\inout\Fol
VeDirIface Sys\FileSys\Node\venue\VenDir
VeSpecIface Sys\FileSys\Node\venue\VenSpec
SelfIface Sys\FileSys\Node\venue\VenNode
StreamIface Sys\InOut\Connx\Stream
Subpages

About

  • Purpose: provides ability to access a filesystem node (file, folder, etc.) without knowing where it is
    • (That is: this object knows where it is, but the caller doesn't have to.)

History

  • 2026-07-20 rebuilding from appropriate pieces of old Venue.php and other files
  • 2026-08-20 This and VenSpec have too much overlap.
    • I think the original idea was:
      • VenNode is for when you need a handle to the node (or at least more than just the spec) in order to do the thing
      • VenSpec is for when the spec is all the VenConn needs in order to do a thing
    • I think what I'll do is:
      • Where ops only require VenConn and a local filespec, move them to VenSpec.
      • Where an op can be done using a handle (even if it can also be done the other way), it can have appropriate implementations in both VenNode and VenSpec.
      • Standardizing some names:
        • CanRead → IsReadable
        • CanWrite → IsWritable
        • IsFolder → IsDir
      • MkDirFor() should only be in Node
  • 2026-08-26 I think it makes sense to go (for now, at least) with the idea that all the subclades use native fx() (starting with fopen()) to access streams, since even SecLib does that (by providing its own protocol-handler) -- so I'm moving all of that stuff up here from the podling clades.
    • This also meant providing $SSpec_internal at the base VenSpec level -- which means that a lot of Local and SFTP code could now probably be moved up there as well.