org.mule.modules

mule-module-pubsubhubbub


Namespacehttp://www.mulesoft.org/schema/mule/PuSH-hub
Schema Locationhttp://www.mulesoft.org/schema/mule/PuSH-hub/current/mule-PuSH-hub.xsd  (View Schema)
Schema Version3.3
Minimum Mule Version3.2

Module Overview

Allows Mule to act as a PubSubHubbub (aka PuSH) hub.
Pubsubhubbub is a simple, open, web-hook-based pubsub protocol & open source reference implementation.
This module implements the PubSubHubbub Core 0.3 -- Working Draft specification, except 7.5 Aggregated Content Distribution.

Summary

Configuration
<PuSH-hub:config>
Configure an instance of this module
Message Processors
<PuSH-hub:hub>
Handle all hub requests.

Configuration

To use the this module within a flow the namespace to the module must be included. The resulting flow will look similar to the following:

<mule xmlns="http://www.mulesoft.org/schema/mule/core"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xmlns:PuSH-hub="http://www.mulesoft.org/schema/mule/PuSH-hub"
      xsi:schemaLocation="
               http://www.mulesoft.org/schema/mule/core
               http://www.mulesoft.org/schema/mule/core/current/mule.xsd
               http://www.mulesoft.org/schema/mule/PuSH-hub
               http://www.mulesoft.org/schema/mule/PuSH-hub/current/mule-PuSH-hub.xsd">

      <!-- here goes your flows and configuration elements -->

</mule>

This module is configured using the config element. This element must be placed outside of your flows and at the root of your Mule application. You can create as many configurations as you deem necessary as long as each carries its own name.

Each message processor, message source or transformer carries a config-ref attribute that allows the invoker to specify which configuration to use.

Attributes
TypeNameDefault ValueDescription
xs:string name Optional. Give a name to this configuration so it can be later referenced.
xs:long defaultLeaseSeconds 604800 Optional. The default lease time in milliseconds.
objectStore Any implementation of PartitionableObjectStore can be used as a back-end for the hub.
xs:int retryCount 12 Optional. The retry count.
xs:int retryFrequency 300000 Optional. The retry frequency in milliseconds.

Message Processors

<PuSH-hub:hub>

Handle all hub requests.

XML Sample
INCLUDE_ERROR

Attributes
NameDefault ValueDescription
config-ref Optional. Specify which configuration to use.
httpMethod The HTTP method name
contentType The content-type of the request
payload The message payload
Child Elements
<PuSH-hub:response-headers>
The outbound/response headers
Return Payload
  • the response body
Exception Payloads
Payload ClassDescription
MuleException
DecoderException
MuleException