Ferreteria/modules/files/rf node

From Woozle Writes Code
< Ferreteria‎ | modules‎ | files
Revision as of 23:46, 23 July 2017 by htyp>Woozle (slowly approaching readiness....)
Jump to navigation Jump to search

About

  • Meaning: can represent any filesystem entity
  • Purpose: for code-managed repositories
  • Notes:
    • directory size optimization - For now, we'll just set use a constant and set it to a best-guess limit, probably 1000.
    • maximum URL length is somewhere around 1024 characters (varies by browser and server; presumably there is an official limit that is ≤ this).

History

  • 2017-07-22 created for reworking file-management

SQL

<mysql> CREATE TABLE `fm_node` (

 ID        INT          NOT NULL AUTO_INCREMENT,
 ID_Parent INT          DEFAULT NULL,
 FSpecPart VARCHAR(255) NOT NULL COMMENT "relative filespec - the part of the path from parent to this file/folder",
 FSpecFull TEXT         NOT NULL COMMENT "full filespec (calculated)",
 WFullPath TEXT         NOT NULL COMMENT "full web URL (calculated)",
 WhenAdded  DATETIME    NOT NULL COMMENT "when the file was first added to the repository",
 WhenCreated DATETIME   NOT NULL COMMENT "file's creation timestamp",
 WhenEdited  DATETIME   DEFAULT NULL COMMENT "file's last-modified timestamp",
 WhenDeleted DATETIME   DEFAULT NULL COMMENT "when the file was removed from the repository (NULL = still here)",
 Descr     VARCHAR(255) DEFAULT NULL COMMENT "brief name or description",
 PRIMARY KEY(`ID`)

) ENGINE = InnoDB;</mysql>