Re: NSTask secretly a class cluster?
Re: NSTask secretly a class cluster?
- Subject: Re: NSTask secretly a class cluster?
- From: "Pontus Ilbring" <email@hidden>
- Date: Fri, 31 Mar 2006 19:59:32 +0200
On 3/31/06, Christopher Hickman <email@hidden> wrote:
> The documentation doesn't reveal that NSTask is a cluster, but my
> subclass is not exhibiting expected behavior. It seems that it's
> class is NSConcreteTask, making me think that perhaps NSTask is a
> cluster.
>
> Any insights? If it is a cluster, what methods are primitive? (That
> is, what do I have to re-implement myself?)
Even if you knew the inner workings of the relationship between NSTask
and NSConcreteTask, since that information isn't publicly documented
it would not be safe to rely on it. That said, from the headers I've
extracted with class-dump (attached below) I would guess that NSTask
only provides the creation methods, and NSConcreteTask implements
everything else.
What is it that you need to do with NSTask that can't be done using
composition or categories?
----------
@interface NSConcreteTask : NSTask
{
NSMutableDictionary *_dictionary;
BOOL _hasExeced;
BOOL _isRunning;
char _padding[2];
int _suspendCount;
struct __CFRunLoopSource *_source;
struct __CFRunLoop *_rl;
void *_oldCallback;
int _pid;
int _terminationStatus;
int _platformExitInfo;
}
- (int)terminationStatus;
- (int)_platformExitInformation;
- (int)terminationReason;
- (BOOL)isRunning;
- (void)launch;
- (void)launchWithDictionary:(id)fp8;
- (void)waitUntilExit;
- (void)setArguments:(id)fp8;
- (void)setCurrentDirectoryPath:(id)fp8;
- (void)setEnvironment:(id)fp8;
- (void)setLaunchPath:(id)fp8;
- (id)launchPath;
- (id)environment;
- (id)arguments;
- (id)currentDirectoryPath;
- (void)setTaskDictionary:(id)fp8;
- (id)taskDictionary;
- (void)interrupt;
- (void)terminate;
- (void)terminateTask;
- (BOOL)suspend;
- (BOOL)resume;
- (int)suspendCount;
- (void)setStandardInput:(id)fp8;
- (void)setStandardOutput:(id)fp8;
- (void)setStandardError:(id)fp8;
- (id)standardInput;
- (id)standardOutput;
- (id)standardError;
- (id)init;
- (void)dealloc;
- (void)finalize;
- (int)_procid;
- (int)processIdentifier;
- (void)setStartsNewProcessGroup:(BOOL)fp8;
- (void)_requestNotification;
@end
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden