/*
 * Decompiled with CFR 0.152.
 * 
 * Could not load the following classes:
 *  com.l7tech.gateway.common.transport.jms.JmsConnection
 */
package com.l7tech.server.transport.jms2;

import com.l7tech.gateway.common.transport.jms.JmsConnection;
import com.l7tech.server.transport.jms.JmsBag;
import com.l7tech.server.transport.jms2.JmsEndpointConfig;
import com.l7tech.server.transport.jms2.JmsResourceManagerConfig;
import com.l7tech.server.transport.jms2.NonCachedSessionHolder;
import com.l7tech.server.transport.jms2.PooledSessionHolder;
import com.l7tech.server.transport.jms2.SessionHolder;
import com.l7tech.server.transport.jms2.SingleSessionHolder;

public class SessionHolderFactory {
    private SessionHolderFactory() {
    }

    public static SessionHolder createSessionHolder(JmsEndpointConfig jmsEndpointConfig, JmsBag jmsBag, JmsResourceManagerConfig jmsResourceManagerConfig) {
        int n2 = Integer.parseInt(jmsEndpointConfig.getConnection().properties().getProperty(JmsConnection.PROP_SESSION_POOL_SIZE, String.valueOf(jmsResourceManagerConfig.getSessionPoolSize())));
        if (n2 > 0) {
            return new PooledSessionHolder(jmsEndpointConfig, jmsBag, jmsResourceManagerConfig);
        }
        return new NonCachedSessionHolder(jmsEndpointConfig, jmsBag);
    }

    public static SessionHolder createSessionHolder(JmsEndpointConfig jmsEndpointConfig, JmsBag jmsBag) throws Exception {
        return new SingleSessionHolder(jmsEndpointConfig, jmsBag);
    }
}

