<?xml version="1.0" ?>

<feature-spec xmlns="urn:jboss:galleon:feature-spec:2.0" name="subsystem.messaging-activemq.server.pooled-connection-factory" stability="default">
    <annotation name="jboss-op">
        <elem name="name" value="add"/>
        <elem name="op-params" value="auto-group,block-on-acknowledge,block-on-durable-send,block-on-non-durable-send,cache-large-message-client,call-failover-timeout,call-timeout,client-failure-check-period,client-id,compress-large-messages,confirmation-window-size,connection-load-balancing-policy-class-name,connection-ttl,connectors,consumer-max-rate,consumer-window-size,credential-reference,deserialization-allow-list,deserialization-black-list,deserialization-block-list,deserialization-white-list,discovery-group,dups-ok-batch-size,enlistment-trace,entries,failover-on-initial-connection,group-id,ha,initial-connect-attempts,initial-message-packet-size,managed-connection-pool,max-pool-size,max-retry-interval,min-large-message-size,min-pool-size,password,pre-acknowledge,producer-max-rate,producer-window-size,protocol-manager-factory,reconnect-attempts,retry-interval,retry-interval-multiplier,scheduled-thread-pool-max-size,statistics-enabled,thread-pool-max-size,transaction,transaction-batch-size,use-auto-recovery,use-global-pools,use-topology-for-load-balancing,user,jndi-params,rebalance-connections,setup-attempts,setup-interval,use-jndi,use-local-tx,allow-local-transactions"/>
        <elem name="addr-params" value="profile,subsystem,server,pooled-connection-factory"/>
    </annotation>
    <annotation name="feature-branch">
        <elem name="id" value="subsystem.messaging-activemq"/>
    </annotation>
    <provides>
        <capability name="$profile.org.wildfly.messaging.activemq.server.pooled-connection-factory.$server.$pooled-connection-factory"/>
    </provides>
    <requires>
        <capability name="$profile.org.wildfly.messaging.activemq.connector.$server.$connectors" optional="true"/>
    </requires>
    <refs>
        <ref feature="subsystem.messaging-activemq.server"/>
        <ref feature="subsystem.messaging-activemq"/>
        <ref feature="profile" nillable="true"/>
    </refs>
    <params>
        <param name="connectors" nillable="true" type="List&lt;String&gt;" stability="default"/>
        <param name="protocol-manager-factory" nillable="true" stability="default"/>
        <param name="failover-on-initial-connection" nillable="true" stability="default"/>
        <param name="group-id" nillable="true" stability="default"/>
        <param name="subsystem" feature-id="true" default="messaging-activemq"/>
        <param name="dups-ok-batch-size" nillable="true" stability="default"/>
        <param name="call-timeout" nillable="true" stability="default"/>
        <param name="statistics-enabled" nillable="true" stability="default"/>
        <param name="block-on-durable-send" nillable="true" stability="default"/>
        <param name="transaction-batch-size" nillable="true" stability="default"/>
        <param name="pooled-connection-factory" feature-id="true"/>
        <param name="block-on-non-durable-send" nillable="true" stability="default"/>
        <param name="password" nillable="true" stability="default"/>
        <param name="use-jndi" nillable="true" stability="default"/>
        <param name="setup-interval" nillable="true" stability="default"/>
        <param name="use-local-tx" nillable="true" stability="default"/>
        <param name="consumer-window-size" nillable="true" stability="default"/>
        <param name="initial-message-packet-size" nillable="true" stability="default"/>
        <param name="block-on-acknowledge" nillable="true" stability="default"/>
        <param name="discovery-group" nillable="true" stability="default"/>
        <param name="max-retry-interval" nillable="true" stability="default"/>
        <param name="profile" feature-id="true" default="GLN_UNDEFINED"/>
        <param name="credential-reference" nillable="true" stability="default"/>
        <param name="producer-max-rate" nillable="true" stability="default"/>
        <param name="reconnect-attempts" nillable="true" stability="default"/>
        <param name="managed-connection-pool" nillable="true" stability="default"/>
        <param name="entries" type="List&lt;String&gt;" stability="default"/>
        <param name="connection-load-balancing-policy-class-name" nillable="true" stability="default"/>
        <param name="deserialization-black-list" nillable="true" type="List&lt;String&gt;" stability="default"/>
        <param name="deserialization-block-list" nillable="true" type="List&lt;String&gt;" stability="default"/>
        <param name="retry-interval-multiplier" nillable="true" stability="default"/>
        <param name="allow-local-transactions" nillable="true" stability="default"/>
        <param name="scheduled-thread-pool-max-size" nillable="true" stability="default"/>
        <param name="auto-group" nillable="true" stability="default"/>
        <param name="server" feature-id="true"/>
        <param name="confirmation-window-size" nillable="true" stability="default"/>
        <param name="producer-window-size" nillable="true" stability="default"/>
        <param name="retry-interval" nillable="true" stability="default"/>
        <param name="consumer-max-rate" nillable="true" stability="default"/>
        <param name="use-auto-recovery" nillable="true" stability="default"/>
        <param name="use-topology-for-load-balancing" nillable="true" stability="default"/>
        <param name="setup-attempts" nillable="true" stability="default"/>
        <param name="thread-pool-max-size" nillable="true" stability="default"/>
        <param name="compress-large-messages" nillable="true" stability="default"/>
        <param name="enlistment-trace" nillable="true" stability="default"/>
        <param name="connection-ttl" nillable="true" stability="default"/>
        <param name="min-large-message-size" nillable="true" stability="default"/>
        <param name="client-id" nillable="true" stability="default"/>
        <param name="min-pool-size" nillable="true" stability="default"/>
        <param name="deserialization-allow-list" nillable="true" type="List&lt;String&gt;" stability="default"/>
        <param name="deserialization-white-list" nillable="true" type="List&lt;String&gt;" stability="default"/>
        <param name="cache-large-message-client" nillable="true" stability="default"/>
        <param name="use-global-pools" nillable="true" stability="default"/>
        <param name="pre-acknowledge" nillable="true" stability="default"/>
        <param name="jndi-params" nillable="true" stability="default"/>
        <param name="max-pool-size" nillable="true" stability="default"/>
        <param name="client-failure-check-period" nillable="true" stability="default"/>
        <param name="rebalance-connections" nillable="true" stability="default"/>
        <param name="ha" nillable="true" stability="default"/>
        <param name="initial-connect-attempts" nillable="true" stability="default"/>
        <param name="user" nillable="true" stability="default"/>
        <param name="transaction" nillable="true" stability="default"/>
        <param name="call-failover-timeout" nillable="true" stability="default"/>
    </params>
</feature-spec>