--- a/FileDirectory.st Mon Oct 26 16:24:22 2009 +0100
+++ b/FileDirectory.st Mon Oct 26 16:24:34 2009 +0100
@@ -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,55 @@
^ 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
- ^ '$Header: /cvs/stx/stx/libbasic/FileDirectory.st,v 1.48 2009-07-30 08:00:27 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/FileDirectory.st,v 1.49 2009-10-26 15:24:34 cg Exp $'
+!
+
+version_CVS
+ ^ '$Header: /cvs/stx/stx/libbasic/FileDirectory.st,v 1.49 2009-10-26 15:24:34 cg Exp $'
! !
FileDirectory initialize!