PSFeed
A PSFeed
объект используется для управления RSS и Atom-лентами. Каждый объект канала представляет единственный канал. Объекты канала могут или быть созданы для подписки или парсинга. Для подписки на канал использовать initWithURL:
и затем добавьте недавно возвращенный объект канала к клиенту. Для использования Подписки Публикации для простого парсинга канала загрузите канал NSURL
и затем используйте initWithData:URL:
.
Многие атрибуты канала определяются спецификациями Atom 1.0 и RSS 2.0. Любые атрибуты, определенные спецификациями (или нестандартные расширения), которые не появляются в этом API, могут быть получены с помощью XMLRepresentation
метод.
Так как значения RSS и атрибутов Atom получены на данные, полученные от сервера, они могут отсутствовать или неправильные. Если у Вас есть возможность, используйте атрибуты, сгенерированные платформой Подписки Публикации, поскольку это более надежно. Например, использование updatedDate
для нахождения измененных записей с, определенное время будет ненадежно. Использовать receivedDate
вместо этого. Не рекомендуется разделить на подклассы PSFeed
.
Оператор импорта
Не применимый
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
entryEnumeratorSortedBy: - entryEnumeratorSortedBy:
(OS X v10.9)Возвращает перечислитель, содержащий записи канала, сортированные указанными дескрипторами вида.
Объявление
Objective C
- (NSEnumerator *)entryEnumeratorSortedBy:(NSArray *)
sortDescriptors
Параметры
sortDescriptors
Массив, содержащий дескриптор вида для сортировки записей канала.
Возвращаемое значение
Перечислитель, содержащий каждую из записей канала, сортированных данными дескрипторами вида.
Обсуждение
Этот метод позволяет записям быть загруженными в память по одному, которая может сделать его более эффективным, чем регулярный метод записей. (Однако также необходимо перенестись цикл перечисления в автовыпуске объединяют и истощают пул в конце цикла. Иначе, предшествующие записи не будут освобождены, до когда-то после того, как цикл заканчивается.)
Если
sortDescriptors
пусто илиnil
, записи не будут сортированы.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Возвращает массив дополнительных элементов XML за пределами стандартов Atom и/или RSS.
Параметры
nameSpace
Пространство имен дополнительных элементов XML; передача
nil
получить все дополнительные элементы XML.Возвращаемое значение
Массив
NSXMLElement
объекты, содержащие надлежащие дополнительные элементы XML.Обсуждение
Передача
nil
дляnameSpace
получить все дополнительные элементы XML, независимо от их пространства имен. Это работает на уровне канала только. Можно использовать тот же метод на записи для получения дополнительных элементов XML на том уровне. При использованииnameSpace
параметр, удостоверьтесь, что передали полное пространство имен, такой какhttp://www.itunes.com/dtds/podcast-1.0.dtd
, вместо префикса пространства имен.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
initWithData:URL: - initWithData:URL:
(OS X v10.9)Возвращает временный объект канала, инициализированный указанным данным XML, расположенным в указанном URL.
Параметры
data
Объект данных, содержащий канал. Этот объект может быть получен при помощи NSURL или
NSURLConnection
загружать канал полностью.aURL
URL канала.
Возвращаемое значение
Канал проанализирован от указанных данных.
Обсуждение
Этот метод не вызывает сетевой активности. Канал анализируется непосредственно от предоставленных данных XML. Если этот объект позже подписан на, параметр URL требуется только разрешить относительный URLs, и для использования в будущем.
Посмотрите обсуждение под
initWithURL:
метод для получения дополнительной информации о временной подаче.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
initWithURL: - initWithURL:
(OS X v10.9)Возвращает временный объект канала, инициализированный из указанного URL.
Объявление
Objective C
- (id)initWithURL:(NSURL *)
aURL
Параметры
aURL
URL канала.
Возвращаемое значение
Канал от указанного URL.
Обсуждение
Этот метод не вызывает сетевой активности. Записи и метаданные канала не будут доступны, пока канал не будет добавлен к клиенту (через
addFeedWithURL:
методPSClient
) или его метод обновления вызывают, и канал был загружен и проанализирован.Временная подача не связана ни с кем
PSClient
, и их содержание постоянно не будет сохранено. При желании этот канал может позже быть сделан персистентным и 'подписанным на' путем вызова addFeed: на aPSClient
объект.Временная подача автоматически не обновляется в расписании. Вместо этого необходимо вызвать «обновление» каждый раз, когда Вы хотите проверить на обновления.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
обновление: - обновление:
(OS X v10.9)Вызывает обновление канала.
Объявление
Objective C
- (BOOL)refresh:(NSError **)
error
Обсуждение
Если с какой-либо непосредственной проблемой встречаются, этот метод возвраты
NO
false
и устанавливает параметр ошибок. Однако обновление является асинхронной работой, и ошибки, более вероятно, обнаружатся позже. К ним можно получить доступ через каналlatestError
свойство после того, как это отправит уведомление, что это закончило обновление.Для проверения состояния обновления зарегистрируйтесь для
PSFeedRefreshingNotification
уведомление и затем проверяетisRefreshing
свойство.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
setPassword: - setPassword:
(OS X v10.9)Устанавливает пароль для использования для канала, сервер которого требует аутентификации.
Объявление
Objective C
- (void)setPassword:(NSString *)
password
Обсуждение
Пароль сохранен в цепочке для ключей пользователя по умолчанию, связанной с URL этого канала.
Нет преднамеренно никакого соответствия
getPassword
метод, потому что только сам PubSub должен получить доступ к паролю.Этот метод является дополнительным. Если никакой пароль не будет найден в цепочке для ключей, когда канал будет обновлен, то Подписка Публикации предложит пользователю одного и добавит его к цепочке для ключей. Однако UI Вашего приложения может хотеть позволить пользователю ввести пароль в то же время, что и он вводит имя пользователя.
Этот метод пытается связаться с процессом PubSubAgent и заставляет агент запускаться, если это уже не работает. Если с PubSubAgent нельзя связаться, исключение будет выдано с именем
PSException
. Для предотвращения проблем Вы должны всегда подготавливаться поймать исключение, выданное этим методом.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
XMLRepresentation - XMLRepresentation
(OS X v10.9)Возвращает необработанный канал, включая записи.
Объявление
Objective C
- (NSXMLElement *)XMLRepresentation
Возвращаемое значение
Необработанный канал включая запись и элементы статьи.
Обсуждение
Эквивалентный вызову
XMLRepresentationWithEntries:YES
.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Возвращает необработанный канал, с или без элементов статьи и записи.
Объявление
Objective C
- (NSXMLElement *)XMLRepresentationWithEntries:(BOOL)
withEntries
Параметры
withEntries
Булево значение, чтобы определить, действительно ли получающееся
NSXMLElement
Возвращаемое значение
Необработанный канал.
Обсуждение
Необработанные данные канала анализируются в дерево DOM, и корневой элемент (<канал> или <rss>) возвращается. Никакая другая обработка не выполняется. Установка
withEntries
флаг кNO
false
заставляет <запись> или <статья> элементы быть разделенными; другие нестандартные дочерние элементы сохранены, как бы то ни было.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
URL к исходному расположению канала.
Объявление
Objective C
@property(readonly, retain) NSURL *URL
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Число непрочитанных записей в канале. (только для чтения)
Объявление
Objective C
@property(readonly) int unreadCount
Обсуждение
Отслеживать это значение (путем отображения его в UI, например), вызывают этот метод когда это
PSFeed
отправляет aPSFeedEntriesChangedNotification
.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Строка, содержащая заголовок данного канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSString *title
Обсуждение
Возвращенный заголовок соответствует элементу и в Atom и в RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Строка, содержащая подзаголовок (или описание) данного канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSString *subtitle
Обсуждение
Возвращенный подзаголовок соответствует <подзаголовок> элементу в Atom и <описанию> в RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Текущие настройки канала.
Объявление
Objective C
@property(retain) PSFeedSettings *settings
Обсуждение
Настройки клиента используются каждый раз, когда настройки канала не определены.
Это свойство пытается связаться с процессом PubSubAgent и заставляет агент запускаться, если это уже не работает. Если с PubSubAgent нельзя связаться, исключение будет выдано с именем
PSException
. Для предотвращения проблем Вы должны всегда подготавливаться поймать исключение, выданное этим свойством.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Юридическая информация данного канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSString *rights
Обсуждение
Возвращаемая строка соответствует <права> элементам в Atom и <авторскому праву> в RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Булево значение, указывающее, обновляется ли в настоящее время канал. (только для чтения)
Объявление
Objective C
@property(readonly, getter=isRefreshing) BOOL refreshing
Обсуждение
Если это свойство возвращает значение
NO
false
, это может быть то, потому что канал закончил обновляться или потому что канал не начал обновляться. Для получения более точного вывода зарегистрируйтесь дляPSFeedRefreshingNotification
уведомление и затем вызывает этот метод.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
URL к текущему расположению данного канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSURL *redirectedURL
Обсуждение
URL к текущему расположению канала после любых перенаправлений.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
URL к логотипу канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSURL *logoURL
Обсуждение
Даже при том, что Atom утверждает, что логотипы должны иметь форматное соотношение 2:1, RSS предпочитает размер по умолчанию 88 x 31 пикселя. Возвращенный URL соответствует <логотип> элементу в Atom и <изображение> элемент в RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Если канал требует аутентификации, имя пользователя использовало.
Объявление
Objective C
@property(retain) NSString *login
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Дата, когда канал и/или его записи были обновлены в локальной Базе данных подписчика Публикации. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSDate *localDateUpdated
Обсуждение
Это - дата/время, изменяющаяся в канале, были получены, тогда как
dateUpdated
время, которое изменения были опубликованы сервером.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Массив объектов ссылки, обеспечивающих ссылки к другому URLs, объявляющемуся в этом канале. (только для чтения)
Объявление
Objective C
@property(readonly) NSArray *links
Обсуждение
Подача и страницы HTML могут содержать оба тега «ссылки» (которые определяют явные ссылки к другому URLs), и цели тех ссылок. Это часто используется для «автооткрытия», где веб-страница содержит ссылку на свой канал.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Новая ошибка, произошедшая во время обновления канала, или
nil
если это было успешно. (только для чтения)Объявление
Objective C
@property(readonly) NSError *lastError
Обсуждение
Может использоваться для получения состояния отказа, такого как «Канал, 404», «Сервер не отвечает», и т.д.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Строка, однозначно определяющая канал. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSString *identifier
Обсуждение
Этот идентификатор может использоваться в качестве ключа для отображения между
PSFeed
объекты и собственные объекты модели данных Вашего приложения. Этот идентификатор сгенерирован внутренне платформой Подписки Публикации. Вы не должны делать предположения о его формате или размере, поскольку они могут измениться. Несмотря на то, что Atom определяет обязательное <ID> элемент, это не может использоваться с этой целью, так как RSS, эквивалентный (<гуид>), является дополнительным. Таким образом Подписка Публикации использует свой собственный механизм для однозначного определения подачи. Клиенты могут вручную проанализировать XMLRepresentation, если им нужен Atom <ID> элемент или RSS <гуид> элемент.Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
URL к значку канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSURL *iconURL
Обсуждение
Значки должны иметь форматное соотношение 1:1 и подойти для представления в небольшом размере. URL соответствует <значок> элементу в Atom. Нет никакого эквивалентного RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Формат данных канала (RSS или Atom). (только для чтения)
Объявление
Objective C
@property(readonly) int feedFormat
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Массив объектов записи, содержащий записи канала. (только для чтения)
Объявление
Objective C
@property(readonly) NSArray *entries
Обсуждение
Соответствует <запись> в Atom и <элемент> в RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Была изменена дата, представляющая новое время канал. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSDate *dateUpdated
Обсуждение
Дата сохранена в канале и наборе программным обеспечением, создающим его. Поэтому это связано с сервером канала, не машиной, на которой работает Ваше приложение. Возвращенная дата соответствует <обновленному> элементу в Atom и <lastBuildDate> элементу в RSS.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
Возвращает клиент, что получатель принадлежит, или
nil
если получатель не был добавлен ни к какому клиенту.Объявление
Objective C
@property(readonly) PSClient *client
Возвращаемое значение
Клиент связался с получателем.
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.
-
URL к альтернативной версии ресурса канала. (только для чтения)
Объявление
Objective C
@property(readonly, retain) NSURL *alternateURL
Обсуждение
Традиционно, альтернативный URL соответствует домашней странице, связанной с каналом. URL анализируется от элемента в Atom и <hd_link posstarget = «элемент в RSS».> элемент в RSS.}
Оператор импорта
Objective C
@import PubSub;
Доступность
Доступный в OS X v10.5 и позже.
Осуждаемый в OS X v10.9.