Что является следствием регистрации одного и того же NSURLProtocol более одного раза?
Я создаю компонент, который поддерживает включение / отключение функции, которая требует NSURLProtocol.
в isEnabled
сеттер я делаю:
- (void)setIsEnabled:(BOOL)isEnabled {
_isEnabled = isEnabled;
if (isEnabled) {
[NSURLProtocol registerClass:[MyURLProtocol class]];
} else {
[NSURLProtocol unregisterClass:[MyURLProtocol class]];
}
}
Система загрузки URL проходит через зарегистрированные протоколы в порядке регистрации, поэтому мне интересно, каковы будут последствия повторной регистрации одного и того же протокола в результате многократного запуска этого установщика? это будет только столкнуто к вершине списка? или это будет иметь дальнейшие / другие последствия?
Другие соображения:
- Я знаю о возможности каждый раз отменять регистрацию, прежде чем зарегистрировать протокол, но хотел бы избежать этого, если смогу.
- Данный компонент - это SDK, а не приложение, поэтому я не могу зарегистрировать свой протокол на
application:didFinishLaunchingWithOptions...
В дополнение к чтению документации и заметок о замечательных хипстерах, я не смог найти никакой соответствующей информации, поэтому любая оценка приветствуется!