Package com.tinkerpop.rexster.server

Source Code of com.tinkerpop.rexster.server.GrizzlyIoStrategyFactory

package com.tinkerpop.rexster.server;

import org.glassfish.grizzly.IOStrategy;
import org.glassfish.grizzly.strategies.LeaderFollowerNIOStrategy;
import org.glassfish.grizzly.strategies.SameThreadIOStrategy;
import org.glassfish.grizzly.strategies.SimpleDynamicNIOStrategy;
import org.glassfish.grizzly.strategies.WorkerThreadIOStrategy;

/**
* Creates various IOStrategy implementations for Grizzly.  Defaults to leader-follower.
*
* http://grizzly.java.net/nonav/docs/docbkx2.0/html/iostrategies.html
*
* @author Stephen Mallette (http://stephen.genoprime.com)
*/
public class GrizzlyIoStrategyFactory {

    private static final String WORKER = "worker";
    private static final String SAME = "same";
    private static final String DYNAMIC = "dynamic";
    private static final String LEADER_FOLLOWER = "leader-follower";

    public static IOStrategy createIoStrategy(final String strategy) {
        final IOStrategy ioStrategy;
        if (strategy.equals(WORKER)) {
            ioStrategy = WorkerThreadIOStrategy.getInstance();
        } else if (strategy.equals(SAME)) {
            ioStrategy = SameThreadIOStrategy.getInstance();
        } else if (strategy.equals(DYNAMIC))  {
            ioStrategy = SimpleDynamicNIOStrategy.getInstance();
        } else if (strategy.equals(LEADER_FOLLOWER)) {
            ioStrategy = LeaderFollowerNIOStrategy.getInstance();
        } else {
            ioStrategy = LeaderFollowerNIOStrategy.getInstance();
        }

        return ioStrategy;
    }
}
TOP

Related Classes of com.tinkerpop.rexster.server.GrizzlyIoStrategyFactory

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.