See
PublishedAPI for packages intended to be used by Plugin and Contrib authors, or
browse all packages.
See also
Developing plugins,
Developer's Bible,
Technical Overview
internal package Foswiki::Store::RcsFast is a Foswiki::Store
Single-file implementation of
Foswiki::Store
ClassMethod new() → $core
constructor for a store object
ObjectMethod finish()
ObjectMethod readTopic($meta, $version) → ($rev, $isLatest)
ObjectMethod moveAttachment( $oldTopicObject, $oldAttachment, $newTopicObject, $newAttachment, $cUID )
ObjectMethod copyAttachment( $oldTopicObject, $oldAttachment, $newTopicObject, $newAttachment )
ObjectMethod attachmentExists( $$metat, $att ) → $boolean
ObjectMethod moveTopic( $oldTopicObject, $newTopicObject, $cUID )
ObjectMethod moveWeb( $oldWebObject, $newWebObject, $cUID )
ObjectMethod testAttachment( $$metat, $attachment, $test ) → $value
ObjectMethod openAttachment( $$metat, $attachment, $mode, %opts ) → $text
ObjectMethod getRevisionHistory ( $$metat [, $attachment] ) → $iterator
ObjectMethod getNextRevision ( $$metat ) → $revision
ObjectMethod getRevisionDiff ( $$metat, $rev2, $contextLines ) → \@diffArray
ObjectMethod getVersionInfo($$metat, $rev, $attachment) → \%info
ObjectMethod saveAttachment( $$metat, $attachment, $stream, $cUID, \%options ) → $revNum
ObjectMethod saveTopic( $$metat, $cUID, $options ) → $integer
ObjectMethod repRev( $$metat, $cUID, %options ) → $rev
ObjectMethod delRev( $$metat, $cUID ) → $rev
ObjectMethod atomicLockInfo( $$metat ) → ($cUID, $time)
ObjectMethod atomicLock( $$metat, $cUID )
ObjectMethod atomicUnlock( $$metat )
ObjectMethod webExists( $web ) → $boolean
ObjectMethod topicExists( $web, $topic ) → $boolean
ObjectMethod getApproxRevTime ( $web, $topic ) → $epochSecs
ObjectMethod eachChange( $meta, $time ) → $iterator
ObjectMethod recordChange(%args)
ObjectMethod eachAttachment( $$metat ) → \$iterator
ObjectMethod eachTopic( $webObject ) → $iterator
ObjectMethod eachWeb($webObject, $all ) → $iterator
ObjectMethod remove( $cUID, $om, $attachment )
ObjectMethod query($query, $inputTopicSet, $session, \%options) → $outputTopicSet
ObjectMethod getRevisionAtTime( $$metat, $time ) → $rev
ObjectMethod getLease( $$metat ) → $lease
ObjectMethod setLease( $$metat, $length )
ObjectMethod removeSpuriousLeases( $web )
ObjectMethod _json() → $json
ObjectMethod _getTopic($meta, $version) → ($tex, $isLatest, $version)
ObjectMethod _getRevInfo($meta, $attachment, $version) → \%info
ObjectMethod _getRevInfoFromHistory($meta, $attachment, $version) → \%info
ObjectMethod _setRevInfo($meta, $attachment, $version, $info) → $info
ObjectMethod _unsetRevInfo($meta, $attachment, $version)
ObjectMethod _readAttachment($meta, $attachment, $version) → $data
ObjectMethod _getPath(%args) → $filepath
returns the path to an object on the store. args may contain keys:
- meta: object to get the store file for
- web, topic: either meta or web, topic params are required
- attachment: name of an attachment
- extension: defaults to .txt
- file: explicit filename
note that the return value has been encoded to utf8
ObjectMethod _readTopic($meta) → $text
ObjectMethod _readFile($file, $isBinary) → $data
reads a file from disck
ObjectMethod _mkPathTo($file)
creates a path the the given file
ObjectMethod _moveFile($from, $to)
ObjectMethod _copyFile($from, to)
ObjectMethod _checkIn($meta, $attachment, $comment, $user, $data)
ObjectMethod _lock($file)
ObjectMethod _revisionHistoryExists($meta, $attachment)
ObjectMethod _saveFile($file, $text)
ObjectMethod _saveStream($file, $fh)
ObjectMethod _readChanges($files) →> \@changes
ObjectMethod _getWebs($meta, $all, $result) → $result
gather all webs; if all is true then recursively
ObjectMethod _deleteRevision($meta, $rev)
ObjectMethod _getLatestRevFromHistory($file) → $rev
ObjectMethod _hasRedundantHistory($meta, $attachment) → $boolean
checks for a redundant rcs file