
package org.mule.modules.amazon.config;

import org.springframework.beans.factory.xml.NamespaceHandlerSupport;


/**
 * Registers bean definitions parsers for handling elements in <code>http://www.mulesoft.org/schema/mule/sqs</code>.
 * 
 */
public class SQSConnectorNamespaceHandler
    extends NamespaceHandlerSupport
{


    /**
     * Invoked by the {@link DefaultBeanDefinitionDocumentReader} after construction but before any custom elements are parsed. 
     * @see NamespaceHandlerSupport#registerBeanDefinitionParser(String, BeanDefinitionParser)
     * 
     */
    public void init() {
        registerBeanDefinitionParser("config", new SQSConnectorConfigDefinitionParser());
        registerBeanDefinitionParser("send-message", new SendMessageDefinitionParser());
        registerBeanDefinitionParser("get-url", new GetUrlDefinitionParser());
        registerBeanDefinitionParser("delete-message", new DeleteMessageDefinitionParser());
        registerBeanDefinitionParser("delete-queue", new DeleteQueueDefinitionParser());
        registerBeanDefinitionParser("get-queue-attributes", new GetQueueAttributesDefinitionParser());
        registerBeanDefinitionParser("set-queue-attribute", new SetQueueAttributeDefinitionParser());
        registerBeanDefinitionParser("add-permission", new AddPermissionDefinitionParser());
        registerBeanDefinitionParser("remove-permission", new RemovePermissionDefinitionParser());
        registerBeanDefinitionParser("get-approximate-number-of-messages", new GetApproximateNumberOfMessagesDefinitionParser());
        registerBeanDefinitionParser("receive-messages", new ReceiveMessagesDefinitionParser());
    }

}
