Я создаю класс обслуживания в Objective-C, который связывается с HTTP-сервером. Я знаком с NSURLConnection и связанными классами, чтобы сделать асинхронный запрос к серверу. До сих пор я использовал self
в качестве делегата, отвечая на четыре метода делегата (didReceiveResponse, didReceiveData и т. Д.), Необходимых для вызова.
Класс обслуживания, который я создаю, должен уметь обрабатывать несколько запросов одновременно и по-разному отвечать на каждый. Я ищу способ добиться этого без бесконечного переключения или if-elseif в методе connectionDidFinishLoading
.
У меня есть идея создать класс делегата, который реализует четыре метода, описанных выше, и передать его объекту NSURLConnection для общения. Тем не менее, я хочу уведомить родительский класс, когда соединение завершает загрузку, а затем запустить другой метод в родительском классе. И, конечно, делегат не знает, какой это метод - это может быть что угодно.
Как поступить? Есть ли способ установить селектор для класса делегата и запустить этот селектор (который является методом), когда запрос завершен? Как мне сделать такую вещь?
(Создание делегата для моего делегата, а затем вызов метода суперкласса может помочь, но я действительно изучаю подстановочные методы, такие как селектор.)
Любая помощь очень ценится!
С уважением,
Reinder