|
|
|||||||||||||||||||||||||||||
|
Windows RSS Platform в Delphi. Интерфейс IFeed.Источник: wwwwebdelphiru lad
Сегодня мы рассмотрим методы и свойства интерфейса IFeed, который предоставляет нам всё необходимое для работы с RSS-каналом сайта. Интерфейс IFeed предназначен в первую очередь именно для работы с каналом, а не отдельным элементом фида, соответственно сегодня не пойдет речи о том как прочитать заголовки постов и т.д. - только основа работы с каналами. Вначале рассмотрим методы. Методы интерфейса IFeedМетоды AsyncDownload и CancelAsyncDownloadprocedure AsyncDownload; safecall AsyncDownload начинает, а CancelAsyncDownload прерывает асинхронную загрузку содержимого RSS-канала. Метод Deleteprocedure Delete Метод Downloadprocedure Download Метод GetItemfunction GetItem(itemId: Integer): IDispatch; safecall Метод MarkAllItemsReadprocedure MarkAllItemsRead; safecall Метод Mergeprocedure Merge(const feedXml: WideString; const feedUrl: WideString); safecall feedXML - XML-код, подлежащий объединению; feedURL - URL с которого будет грузиться новый фид для объединения. XML-должен быть составлен по всем правилам RSS 2.0., а URL должен начинаться либо с http, либо https. Метод Moveprocedure Move(const newParentPath: WideString); safecall Метод Renameprocedure Rename(const Name: WideString); safecall Метод XMLfunction Xml(Count: Integer; sortProperty: FEEDS_XML_SORT_PROPERTY Count - количество элементов фида, которое должно быть загружено. sortProperty - способ сортировки содержимого. Может принимать одно из следующих значений:
sortOrder - направление сортировки элементов. Может принимать одно из следующих значений:
filterFlags - параметр, указывающий стоит ли включать в содержимое элементы по их метке о прочтении. Может принимать одно из следующих значений:
includeFlags - параметр, указывающий на то, стоит ли включать в исходник пространства имен для канала. Принимает одно из следующих значений:
Свойства интерфейса IFeedСвойство Copyrightproperty Copyright: WideString read Get_Copyright Свойство Descriptionproperty Description: WideString read Get_Description Свойство DownloadEnclosuresAutomaticallyproperty DownloadEnclosuresAutomatically: WordBool read Get_DownloadEnclosuresAutomatically Свойство DownloadStatusproperty DownloadStatus: FEEDS_DOWNLOAD_STATUS read Get_DownloadStatus
Свойство DownloadUrlproperty DownloadUrl: WideString read Get_DownloadUrl Свойство Imageproperty Image: WideString read Get_Image Свойство Intervalproperty Interval: Integer read Get_Interval write Set_Interval Свойство IsListproperty IsList: WordBool read Get_IsList Свойство ItemCountproperty ItemCount: Integer read Get_ItemCount Свойство Itemsproperty Items: IDispatch read Get_Items Свойство Languageproperty Language: WideString read Get Language Свойство LastBuildDate
Возвращает дату последнего обновления содержимого фида. Может вернуть 0 в случае, если канал только что добавлен или он никогда не загружался. Свойство LastDownloadError
Возвращает последнюю ошибку загрузки фида. Может принимать одно из следующих значений:
Свойство LastDownloadTime
Время последней успешной попытки обновления содержимого фида. Свойство LastWriteTime
Возвращает дату и время последнего изменения фида. Свойство Link
Возвращает URL фида. Свойство LocalEnclosurePath
Возвращает путь к локальному хранилищу содержимого RSS-канала. Свойство LocalId
Возвращает GUID для фида. Свойство MaxItemCount
Возвращает или устанавливает максимальное количество элементов фида, которые будут загружены. Свойство Name
Возвращает имя RSS-канала. Свойство Parent
Возвращает интерфейс родителя RSS-канала ( IFeedFolder ). Свойство Path
Возвращает путь до текущего RSS-канала в Feed-менеджере. Свойство PubDate
Возвращает дату и время публикации фида. Свойство SyncSetting
Возвращает или устанавливает свойства синхронизации содержимого RSS-канала. Может принимать одно из следующих значений:
Свойство Title
Возвращает заголовок RSS-канала. Свойство Ttl
Возвращает время жизни фида, т.е. время в минутах в течение которого фид будет находиться в кэше до обновления содержимого из источника. Свойство UnreadItemCount
Возвращает количество непрочитанных элементов фида. Вот, пожалуй основные методы и свойства интерфейса IFeed. Как видите, с помощью этого интерфейса можно вытянуть максимум информации по каналу, начиная от копирайтов и картинок для канала и, заканчивая XML-кодом, приложив к которому свои навыки по работе с NativeXML или MSXML можно на ходу проводить поиск по содержимому всего канала, определенных фраз типа "лимузины санкт-петербург", "программирование в Delphi", "новости" и т.д. Осталось рассмотреть работу ещё одного интерфейса - IFeedItem (элемент фида) и можно будет написать небольшой примерчик иллюстрирующий работу с Windows RSS Platform во всей её красе. Но это уже в следующем посте. Оставайтесь с нами.
|
|