#REFACTORING by stefan
class: AbstractOperatingSystem
comment/format in:
#errorHolderForNumber:
#removeDirectory:
#removeFile:
#renameFile:to:
changed:
#createHardLinkFrom:to:
#createSymbolicLinkFrom:to:
answer an OSErrorHolder
--- a/AbstractOperatingSystem.st Mon Nov 28 23:10:41 2016 +0100
+++ b/AbstractOperatingSystem.st Mon Nov 28 23:17:40 2016 +0100
@@ -771,6 +771,7 @@
!
errorHolderForNumber:anInteger
+ "return an osErrorHolder for the given error number (as returned by a system call)."
^ self subclassResponsibility
!
@@ -3056,12 +3057,12 @@
createHardLinkFrom:oldPath to:newPath
"link the file 'oldPath' to 'newPath'. The link will be a hard link.
- Return true if successful, false if not."
+ Return nil if successful, an OsErrorHolder if not."
"/
"/ assume that this OperatingSystem does not support links
"/
- ^ self unsupportedOperationSignal raise
+ ^ OSErrorHolder unsupportedOperation
"Created: / 13.8.1998 / 21:37:12 / cg"
"Modified: / 13.8.1998 / 21:38:39 / cg"
@@ -3070,12 +3071,12 @@
createSymbolicLinkFrom:oldPath to:newPath
"make a link from the file 'oldPath' to the file 'newPath'.
The link will be a soft (symbolic) link.
- Return true if successful, false if not."
+ Return nil if successful, an OsErrorHolder if not."
"/
"/ assume that this OperatingSystem does not support symbolic links
"/
- ^ self unsupportedOperationSignal raise
+ ^ OSErrorHolder unsupportedOperation
"Created: / 13.8.1998 / 21:38:24 / cg"
"Modified: / 13.8.1998 / 21:38:43 / cg"
@@ -3192,14 +3193,14 @@
removeDirectory:fullPathName
"remove the directory named 'fullPathName'.
The directory must be empty and you must have appropriate access rights.
- Return true if successful, false if directory is not empty or no permission.
+ return nil if successful, an OSErrorHolder if directory is not empty or no permission.
This is a lowLevel entry - use Filename protocol for compatibility."
self subclassResponsibility
!
removeFile:fullPathName
- "remove the file named 'fullPathName'; return true if successful.
+ "remove the file named 'fullPathName'; return nil if successful, an OSErrorHolder on errror.
This is a lowLevel entry - use Filename protocol for compatibility."
self subclassResponsibility
@@ -3211,7 +3212,7 @@
correct for the OS used - therefore, this should not be called
directlt. Instead, use Filename protocol to rename; this cares for
any invalid names.
- Returns true if successful, false if not"
+ Returns nil if successful, an OsErrorHolder if not"
self subclassResponsibility
!