FROM : David Spooner
DATE : Wed Jan 16 17:19:02 2008
I've had a similar experience and ended up implementing -
replacementObjectForPortCoder: for the classes which I wanted to send
bycopy.
I believe NSObject's implementation looks something like
- (id) replacementObjectForPortCoder:(NSPortCoder *)coder
{ return [NSDistantObject proxyWithLocal:self connection:[coder
connection]]; }
while arguably it should look like
- (id) replacementObjectForPortCoder:(NSPortCoder *)coder
{
if ([coder isBycopy])
return self;
return [NSDistantObject proxyWithLocal:self connection:[coder
connection]];
}
Cheers,
dave
On 16-Jan-08, at 7:12 AM, Half Activist wrote:
> I wrote a client/server application that relies on Distributed
> Objects to communicate.
> I'm extensively using bycopy since I want all data to be transfered
> at once thus preventing
> series of forwarded method calls etc.
>
> But, I figured out that the object received by the client where not
> actually copied (when debugging I can the they're nsdistantobject or
> something like that...)
> And every call is forwarded to the server
> for example, my protocol has methods like this:
>
> - (bycopy NSDictionary *)aMethodThatReturnsADictionary;
>
> the implementation would be :
>
> - (bycopy NSDictionary *)aMethodThatReturnsADictionary
> {
> return [ NSDictionary dictionaryWithObjectsAndKeys: @"Hello",
> @"World", nil ];
> }
>
> Am I having the expected behaviour, or did I missed something?
>
> Regards
DATE : Wed Jan 16 17:19:02 2008
I've had a similar experience and ended up implementing -
replacementObjectForPortCoder: for the classes which I wanted to send
bycopy.
I believe NSObject's implementation looks something like
- (id) replacementObjectForPortCoder:(NSPortCoder *)coder
{ return [NSDistantObject proxyWithLocal:self connection:[coder
connection]]; }
while arguably it should look like
- (id) replacementObjectForPortCoder:(NSPortCoder *)coder
{
if ([coder isBycopy])
return self;
return [NSDistantObject proxyWithLocal:self connection:[coder
connection]];
}
Cheers,
dave
On 16-Jan-08, at 7:12 AM, Half Activist wrote:
> I wrote a client/server application that relies on Distributed
> Objects to communicate.
> I'm extensively using bycopy since I want all data to be transfered
> at once thus preventing
> series of forwarded method calls etc.
>
> But, I figured out that the object received by the client where not
> actually copied (when debugging I can the they're nsdistantobject or
> something like that...)
> And every call is forwarded to the server
> for example, my protocol has methods like this:
>
> - (bycopy NSDictionary *)aMethodThatReturnsADictionary;
>
> the implementation would be :
>
> - (bycopy NSDictionary *)aMethodThatReturnsADictionary
> {
> return [ NSDictionary dictionaryWithObjectsAndKeys: @"Hello",
> @"World", nil ];
> }
>
> Am I having the expected behaviour, or did I missed something?
>
> Regards
| Related mails | Author | Date |
|---|---|---|
| Half Activist | Jan 16, 15:12 | |
| David Spooner | Jan 16, 17:19 | |
| Adam R. Maxwell | Jan 16, 18:24 |






Cocoa mail archive

