Preparing to add widget support
[RExecServer.git] / RServerConnection.m
blob2b9a78db91e0b6a818edf661931b4462fa39e63b
1 //
2 //  RServerConnection.m
3 //  RExecServer
4 //
5 //  Created by Byron Ellis on 7/9/07.
6 //  Copyright 2007 __MyCompanyName__. All rights reserved.
7 //
9 #import "RServerConnection.h"
10 #import "REnvironment.h"
12 @implementation RServerConnection
13 + (RServerConnection*)serverConnectionToServer:(NSString*)aServer host:(NSString*)hostName environment:(REnvironment*)anEnv {
14         return [[[self alloc] initWithConnectionToServer:aServer host:hostName environment:anEnv] autorelease];
16 - (id)initWithConnectionToServer:(NSString*)aServer host:(NSString*)hostName environment:(REnvironment*)aEnv {
17         if(nil == [super init]) return nil;
18         server = [NSConnection rootProxyForConnectionWithRegisteredName:aServer host:hostName];
19         if(nil == server) {
20                 [self release];
21                 return nil;
22         }
23         env = [aEnv retain];
24         return self;
26 - (void)dealloc {
27         if(nil != env) [env release];
28         [super dealloc];
31 - (BOOL)synchronizePackages { return NO; }
32 - (BOOL)copyObject:(NSString*)aFrom toName:(NSString*)aTo {
33         NSData *data = [[(REnvironment*)[server environment] objectWithName:aFrom] serialize];
34         return [env unserializeObject:data toName:aTo overwrite:YES];
37 @end