--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/Win32Process.st Wed Nov 11 16:01:21 1998 +0100
@@ -0,0 +1,193 @@
+Object subclass:#Win32Process
+ instanceVariableNames:'command environment directory inStream outStream errorStream pid
+ exitStatus finishSema'
+ classVariableNames:''
+ poolDictionaries:''
+ category:'OS-Windows'
+!
+
+
+!Win32Process methodsFor:'accessing'!
+
+command
+ "return the value of the instance variable 'command' (automatically generated)"
+
+ ^ command
+
+ "Created: / 10.11.1998 / 21:27:07 / cg"
+!
+
+command:something
+ "set the value of the instance variable 'command' (automatically generated)"
+
+ command := something.
+
+ "Created: / 10.11.1998 / 21:27:07 / cg"
+!
+
+directory
+ "return the value of the instance variable 'directory' (automatically generated)"
+
+ ^ directory
+
+ "Created: / 10.11.1998 / 21:21:52 / cg"
+!
+
+directory:something
+ "set the value of the instance variable 'directory' (automatically generated)"
+
+ directory := something.
+
+ "Created: / 10.11.1998 / 21:21:52 / cg"
+!
+
+environment
+ "return the value of the instance variable 'environment' (automatically generated)"
+
+ ^ environment
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+environment:something
+ "set the value of the instance variable 'environment' (automatically generated)"
+
+ environment := something.
+
+ "Created: / 10.11.1998 / 21:27:07 / cg"
+!
+
+errorStream
+ "return the value of the instance variable 'errorStream' (automatically generated)"
+
+ ^ errorStream
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+errorStream:something
+ "set the value of the instance variable 'errorStream' (automatically generated)"
+
+ errorStream := something.
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+exitStatus
+ "return the value of the instance variable 'exitStatus' (automatically generated)"
+
+ ^ exitStatus
+
+ "Created: / 10.11.1998 / 21:24:55 / cg"
+!
+
+exitStatus:something
+ "set the value of the instance variable 'exitStatus' (automatically generated)"
+
+ exitStatus := something.
+
+ "Created: / 10.11.1998 / 21:24:55 / cg"
+!
+
+finishSema
+ "return the value of the instance variable 'finishSema' (automatically generated)"
+
+ ^ finishSema
+
+ "Created: / 10.11.1998 / 21:21:53 / cg"
+!
+
+finishSema:something
+ "set the value of the instance variable 'finishSema' (automatically generated)"
+
+ finishSema := something.
+
+ "Created: / 10.11.1998 / 21:21:53 / cg"
+!
+
+inStream
+ "return the value of the instance variable 'inStream' (automatically generated)"
+
+ ^ inStream
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+inStream:something
+ "set the value of the instance variable 'inStream' (automatically generated)"
+
+ inStream := something.
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+outStream
+ "return the value of the instance variable 'outStream' (automatically generated)"
+
+ ^ outStream
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+outStream:something
+ "set the value of the instance variable 'outStream' (automatically generated)"
+
+ outStream := something.
+
+ "Created: / 10.11.1998 / 21:26:34 / cg"
+!
+
+pid
+ "return the value of the instance variable 'pid' (automatically generated)"
+
+ ^ pid
+
+ "Created: / 10.11.1998 / 21:21:53 / cg"
+!
+
+pid:something
+ "set the value of the instance variable 'pid' (automatically generated)"
+
+ pid := something.
+
+ "Created: / 10.11.1998 / 21:21:53 / cg"
+! !
+
+!Win32Process methodsFor:'starting'!
+
+startProcess
+ finishSema := Semaphore new.
+
+ pid := Processor
+ monitor:[
+ OperatingSystem
+ startProcess:command
+ inputFrom:inStream
+ outputTo:outStream
+ errorTo:errorStream
+ inDirectory:directory.
+ ]
+ action:[:status |
+ status stillAlive ifFalse:[
+ exitStatus := status.
+ OperatingSystem closePid:pid.
+ finishSema signal
+ ].
+ ].
+
+ pid isNil ifTrue:[
+ exitStatus := self osProcessStatusClass processCreationFailure.
+ ^ false
+ ].
+
+ ^ true.
+
+ "Created: / 10.11.1998 / 21:23:50 / cg"
+ "Modified: / 10.11.1998 / 21:33:16 / cg"
+! !
+
+!Win32Process class methodsFor:'documentation'!
+
+version
+ ^ '$Header: /cvs/stx/stx/libbasic/Win32Process.st,v 1.1 1998-11-11 15:01:21 cg Exp $'
+! !