diff -r a5b3fd5ca84a -r 406b1590afe8 FileDirectory.st --- a/FileDirectory.st Mon Oct 26 21:51:17 2009 +0000 +++ b/FileDirectory.st Thu Nov 05 14:41:30 2009 +0000 @@ -18,6 +18,13 @@ category:'Obsolete' ! +ArrayedCollection subclass:#DirectoryEntry + instanceVariableNames:'name creationTime modificationTime dirFlag fileSize' + classVariableNames:'' + poolDictionaries:'' + privateIn:FileDirectory +! + !FileDirectory class methodsFor:'documentation'! copyright @@ -215,6 +222,22 @@ ^ self removeFile:fileName ! +directoryEntryFor:name + |info| + + info := self infoOf:name. + ^ DirectoryEntry new + name:name + creationTime:(info creationTime) + modificationTime:(info modificationTime) + dirFlag:(info isDirectory) + fileSize:(info isDirectory) + + " + (FileDirectory directoryNamed:'.') entries + " +! + directoryExists:dir "Squeak/ST80 compatibility" @@ -231,7 +254,7 @@ ! entries - ^ self contents + ^ self contents collect:[:nm | self directoryEntryFor:nm]. ! fileExists:dir @@ -727,10 +750,56 @@ ^ true ! ! +!FileDirectory::DirectoryEntry methodsFor:'accessing'! + +at: index + "compatibility interface" + "self halt: 'old-style access to DirectoryEntry'" + index = 1 ifTrue: [ ^self name ]. + index = 2 ifTrue: [ ^self creationTime ]. + index = 3 ifTrue: [ ^self modificationTime ]. + index = 4 ifTrue:[ ^self isDirectory ]. + index = 5 ifTrue:[ ^self fileSize ]. + self error: 'invalid index specified'. +! + +creationTime + ^ creationTime +! + +dirFlag + ^ dirFlag +! + +fileSize + ^ fileSize +! + +modificationTime + ^ modificationTime +! + +name + ^ name +! + +name:nameArg creationTime:creationTimeArg modificationTime:modificationTimeArg dirFlag:dirFlagArg fileSize:fileSizeArg + name := nameArg. + creationTime := creationTimeArg. + modificationTime := modificationTimeArg. + dirFlag := dirFlagArg. + fileSize := fileSizeArg. +! ! + !FileDirectory class methodsFor:'documentation'! version - ^ '$Id: FileDirectory.st 10467 2009-08-19 16:14:36Z vranyj1 $' + ^ '$Id: FileDirectory.st 10477 2009-11-05 14:41:30Z vranyj1 $' +! + +version_CVS + ^ '$Id: FileDirectory.st 10477 2009-11-05 14:41:30Z vranyj1 $' ! ! FileDirectory initialize! +