Top |
Functions
#define | FEEDS_PUBLISHER() |
#define | FEEDS_PUBLISHER_CLASS() |
#define | FEEDS_PUBLISHER_GET_CLASS() |
GrssFeedsPublisher * | grss_feeds_publisher_new () |
gchar * | grss_feeds_publisher_format_content () |
gboolean | grss_feeds_publisher_publish_web () |
gboolean | grss_feeds_publisher_publish_file () |
void | grss_feeds_publisher_hub_set_port () |
void | grss_feeds_publisher_hub_set_topics () |
void | grss_feeds_publisher_hub_switch () |
Description
GrssFeedsPublisher may be used to expose contents for any given GrssFeedChannel, both writing a file to be dispatched by the local webserver or providing himself to distribute it, and implements a server able to receive subscriptions by PubSubHubbub clients and deliver them new contents in real-time.
Functions
FEEDS_PUBLISHER()
#define FEEDS_PUBLISHER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), FEEDS_PUBLISHER_TYPE, GrssFeedsPublisher))
FEEDS_PUBLISHER_CLASS()
#define FEEDS_PUBLISHER_CLASS(c) (G_TYPE_CHECK_CLASS_CAST ((c), FEEDS_PUBLISHER_TYPE, GrssFeedsPublisherClass))
FEEDS_PUBLISHER_GET_CLASS()
#define FEEDS_PUBLISHER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), FEEDS_PUBLISHER_TYPE, GrssFeedsPublisherClass))
grss_feeds_publisher_new ()
GrssFeedsPublisher * grss_feeds_publisher_new ();
Allocates a new GrssFeedsPublisher.
grss_feeds_publisher_format_content ()
gchar * grss_feeds_publisher_format_content (GrssFeedsPublisher *pub
,GrssFeedChannel *channel
,GList *items
,GError **error
);
grss_feeds_publisher_format_content
has been deprecated since version 0.6 and should not be used in newly-written code.
Use grss_feed_formatter_format()
instead.
Format a GrssFeedChannel in Atom and returns the resulting string.
Parameters
pub |
||
channel |
the GrssFeedChannel to dump in the file. |
|
items |
list of GrssFeedItems to be added in the feed. |
[element-type GrssFeedItem] |
error |
if an error occurred, |
grss_feeds_publisher_publish_web ()
gboolean grss_feeds_publisher_publish_web (GrssFeedsPublisher *pub
,GrssFeedChannel *channel
,GList *items
,const gchar *id
,GError **error
);
If the local web server has been executed (with
grss_feeds_publisher_hub_switch()
) this function exposes the given channel
as an Atom formatted file avalable to http://[LOCAL_IP:DEFINED_PORT]/id
.
Parameters
pub |
||
channel |
the GrssFeedChannel to dump in the file. |
|
items |
list of GrssFeedItems to be added in the feed. |
[element-type GrssFeedItem] |
id |
name used in the external URL of the feed. |
|
error |
if an error occurred, |
grss_feeds_publisher_publish_file ()
gboolean grss_feeds_publisher_publish_file (GrssFeedsPublisher *pub
,GrssFeedChannel *channel
,GList *items
,const gchar *uri
,GError **error
);
Dump the given channel
in an Atom formatted file in path
. If the local
PubSubHubbub hub has been activated (with grss_feeds_publisher_hub_switch()
)
notifies remote subscribers about the new items which has been added since
previous invocation of this function for the same GrssFeedChannel.
Parameters
pub |
||
channel |
the GrssFeedChannel to dump in the file. |
|
items |
list of GrssFeedItems to be added in the feed. |
[element-type GrssFeedItem] |
uri |
URI of the file to write. The full path must exists. |
|
error |
if an error occurred, |
grss_feeds_publisher_hub_set_port ()
void grss_feeds_publisher_hub_set_port (GrssFeedsPublisher *pub
,int port
);
To customize the port opened by the local server to deliver feeds and catch incoming subscriptions. By default this is 80. Changing the port while the hub is running imply restart the local server.
grss_feeds_publisher_hub_set_topics ()
void grss_feeds_publisher_hub_set_topics (GrssFeedsPublisher *pub
,GList *topics
);
To define a list of valid "topics" for which the GrssFeedsPublisher will
deliver contents. Sources of those channels, as retrieved by
grss_feed_channel_get_source()
, are accepted as "hub.topic" parameter in
PubSubHubbub registration requests from remote subscribers.
Pay attention to the fact subscriptions requests for different topic are
now rejected.
grss_feeds_publisher_hub_switch ()
void grss_feeds_publisher_hub_switch (GrssFeedsPublisher *pub
,gboolean run
);
Permits to start and stop the webserver implemented by this object.
Signal Details
The “delete-subscription”
signal
void user_function (GrssFeedsPublisher *grssfeedspublisher, GrssFeedChannel *arg1, gchar *arg2, gpointer user_data)
Flags: Run Last
The “new-subscription”
signal
void user_function (GrssFeedsPublisher *grssfeedspublisher, GrssFeedChannel *arg1, gchar *arg2, gpointer user_data)
Flags: Run Last