eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'FindFileApplication':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: FindFileApplication


Inheritance:

   Object
   |
   +--Model
      |
      +--ApplicationModel
         |
         +--AbstractFileApplicationNoteBookComponent
            |
            +--AbstractFileFinderApplicationComponent
               |
               +--FindFileApplication

Package:
stx:libtool
Category:
Interface-Tools-File
Version:
rev: 1.163 date: 2024/04/22 17:39:54
user: stefan
file: FindFileApplication.st directory: libtool
module: stx stc-classLibrary: libtool

Description:


documentation to be added.

class:
    <a short class summary here, describing what instances represent>

responsibilities:    
    <describing what my main role is>

collaborators:    
    <describing with whom and how I talk to>

API:
    <public api and main messages>
    
example:
    <a one-line examples on how to use - can also be in a separate example method>

implementation:
    <implementation points>


[instance variables:]

[class variables:]

copyright

COPYRIGHT (c) 2002 by eXept Software AG All Rights Reserved This software is furnished under a license and may be used only in accordance with the terms of that license and with the inclusion of the above copyright notice. This software may not be provided or otherwise made available to, or used by, any other person. No title to or ownership of the software is hereby transferred.

Class protocol:

defaults
o  tabStringFor: aApplicationType
the formatString shown in a tab (language translated)

help specs
o  helpSpec
This resource specification was automatically generated
by the UIHelpTool of ST/X.

history
o  addToSearchStringHistory: aString

o  searchStringHistory

instance creation
o  open
self open

o  openInDirectory: aFilename
self openInDirectory:'/etc'

o  openOnFileName: aFileName

o  openOnFileName: aFileName for: aTargetApplicationOrNil

interface specs
o  windowSpec
This resource specification was automatically generated
by the UIPainter of ST/X.

Usage example(s):

     UIPainter new openOnClass:FindFileApplication andSelector:#windowSpec
     FindFileApplication new openInterface:#windowSpec
     FindFileApplication open

menu specs
o  menu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:FindFileApplication andSelector:#menu
     (Menu new fromLiteralArrayEncoding:(FindFileApplication menu)) startUp

o  searchMenu
This resource specification was automatically generated
by the MenuEditor of ST/X.

Usage example(s):

     MenuEditor new openOnClass:FindFileApplication andSelector:#searchMenu
     (Menu new fromLiteralArrayEncoding:(FindFileApplication searchMenu)) startUp

startup & release
o  releaseContentsInfoCache

tableColumns specs
o  searchResultTable
This resource specification was automatically generated
by the DataSetBuilder of ST/X.

Usage example(s):

     DataSetBuilder new openOnClass:FindFileApplication andSelector:#searchResultTable


Instance protocol:

actions
o  clearCache

o  clearResultList

o  deleteAllFiles

o  deleteFiles: colOfFiles confirm: confirm
delete current selected files/directories

o  deleteSelectedFiles
cg: huch: result is always nil here

o  doCompareTwoFiles

o  doSearch
self changeExtentToSeeSearchResult.

o  fileInInBrowser

o  namePatternsFor: namePatternArg ignoringCase: ignoringCase

o  removeFilesFromResultList: listOfFiles

o  removeSelectedFilesFromResultList

o  showMatchedFiles: aBoolean

o  touchAllFiles

o  touchFiles: colOfFiles
touch current selected files/directories

o  touchSelectedFiles

actions-CVS
o  commitSelectedFilesToCVS

o  deleteSelectedFilesAndCVSContainers

aspects
o  canUseGrep
grep command is much faster, but:
- not under MSDOS

o  canUseLocate
locate command is much faster, but:
- only if searching recursively,
- no case ignore
- no contents matching

o  contentsPatternHolder
(comment from inherited method)
to be redefined

o  enableFileSizeFilter

o  enableFileSizeFilterAndNotSearchForSameContents

o  enableModificationTimeFilter

o  excludedNamePatternHolder

o  fileSizeHolder

o  fileSizeOperatorHolder

o  fileSizeUnitHolder

o  ignoreCaseInContents
(comment from inherited method)
to be redefined

o  ignoreCaseInExcludedName

o  ignoreCaseInName
Modified (format): / 03-08-2011 / 18:05:49 / cg

o  ignoreCaseInNotContents

o  lookIntoZipsHolder

o  modificationTimeHolder

o  modificationTimeOperatorHolder

o  modificationTimeOperatorIndexHolder

o  modificationTimeOperatorLabelList

o  modificationTimeOperatorSpecList

o  modificationTimeOperatorValueList

o  namePatternHolder

o  notContentsPatternHolder

o  notSearchForSameContents

o  notShowingMatchedFiles

o  rememberInCache

o  sameContentsAsHolder

o  searchDirectories

o  searchDirectoryHolder

o  searchForBinaryContentsHolder

o  searchForSameContents

o  searchOnlyInCache

o  showUnreadableFilesAndDirectoriesHolder

o  showingMatchedFiles

o  useGrep

o  useLocate

change & update
o  modificationTimeOperatorChanged

private
o  changeExtentToSeeSearchResult

private - searching
o  cachedFileSizeOf: aFilenameString

o  cachedHashValueOfFile: aFilenameString

o  contentsInfoCache

o  doFindFileNamed: namePatterns directories: searchDirectories ignoreCase: ignCaseInName containingString: contentsStringArg ignoreCaseInContents: ignCaseInContents notContainingString: notContentsStringArg ignoreCaseInNotContents: ignCaseInNotContents sameContentsAsFile: filenameToCompareContentsOrNil sameContentsAs: bytesToCompareContentsOrNil in: aDirectory
only for backward compatibility...

o  doFindFileNamed: namePatterns directories: searchDirectoriesArg ignoreCaseInName: ignCaseInName excludeFilesNamed: excludedNamePatterns ignoreCaseInExcludedName: ignoreCaseInExcludedNameArg containingString: contentsStringArg ignoreCaseInContents: ignCaseInContents notContainingString: notContentsStringArg ignoreCaseInNotContents: ignCaseInNotContents sameContentsAsFile: filenameToCompareContentsOrNil sameContentsAs: bytesToCompareContentsOrNil in: aDirectoryOrCollectionOfDirectories
the main workhorse for searching files.
Creates optimized search blocks, depending on how we search,
and passes these to the recursive directory walker.
(got too big, and may need some splitting/refactoring

o  doFindFileNamed: namePatterns directories: searchDirectories nameMatch: nameMatch contentsMatch: doesFileMatch in: aDirectory
the recursive walker.
Searches for files matching name match-block,
and contents matching doesFileMatch-block.
Adds matching files to the resultList instVar.

Returns true if there was a namePatterns-match
(but only for namePatterns - not for nameMatch or doesFileMatch)

o  fileSizeWrapperFor: aFileMatchBlock
possibly wrap the search-match block into a file-size matcher block

o  flushOutdatedCacheInformationBelow: srchDir
flush if required

o  modificationTimeWrapperFor: aFileMatchBlock
possibly wrap the search-match block into a modification time matcher block

o  searchWithCheck: check easyCheck: easyCheck checkNot: checkNot forContents: contentsString ignoreCase: ignCaseInContents forNotContents: notContentsString ignoreCase: ignCaseInNotContents inFile: aFile orStream: inStream streamSize: inStreamSize streamName: inStreamName
inStream and inStreamSize are non-nil when searchin in a zip entry

queries
o  getTabValueString
the item shown in a tab (not language translated)

startup & release
o  initialize
must be called if redefined

o  item: anItem
(comment from inherited method)
self halt.

o  postOpenWith: aBuilder
Modified (format): / 12-01-2012 / 01:40:44 / cg

o  release
(comment from inherited method)
remove all references to objects that may refer to self.
Subclasses may redefine this method but should do a 'super release'.


Examples:


Notice that everything between [exBegin] and [exEnd] is extracted by the html-doc generator to create nicely formatted and clickable executable examples in the generated html-doc. (see the browser's class-documentation menu items for more) opening the application:
   FindFileApplication open
opening the application on some model:
   FindFileApplication openOn:aModel


ST/X 7.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Mon, 18 Nov 2024 04:43:01 GMT