@ Брайан, это может быть хорошо, но setProtocolForProxy:
только для оптимизации. cocoafan мог бы поручить это для своего решения, но это не будет заменой. Вы должны иметь возможность получать подписи автоматически. Для этого в сетевом протоколе необходим способ запроса подписи.
Я полагаю, что решение здесь состоит в том, чтобы включить в сетевой протокол метод «подписи метода запроса» и запустить его methodSignatureForSelector:
на удаленном объекте, а также кодировать и возвращать результат. Вот что делает NSDistantObject
.
Предоставление setProtocolForProxy:
является важной оптимизацией, если вы собираетесь много болтать, но она ограничивает вас объектами, для которых у вас есть протокол, и до 10.5, которая вводит некоторые раздражающие ограничения (требуются все методы) , Даже на 10.5 это может привести к некоторым проблемным ограничениям, если это единственный способ получить сигнатуры методов.
@ cocoafan, я думаю, что вы, вероятно, правы, создавая это с нуля поверх NSProxy
, но посмотрите на NSConnection
и посмотрите, можете ли вы подклассом управлять сетевым подключением так, ты хочешь. Если вы можете найти способ сделать это (хотя я не вижу простого пути сразу), вы, вероятно, получите много вещей бесплатно от NSDistantObject
.