public int blockFor()

in cassandra-analytics-common/src/main/java/org/apache/cassandra/spark/data/partitioner/ConsistencyLevel.java [86:123]


    public int blockFor(@NotNull ReplicationFactor replicationFactor, @Nullable String dataCenter)
    {
        switch (this)
        {
            case ONE:
            case LOCAL_ONE:
            case ANY:
                return 1;
            case TWO:
                return 2;
            case THREE:
                return 3;
            case QUORUM:
            case SERIAL:
                return quorumFor(replicationFactor);
            case ALL:
                return replicationFactor.getTotalReplicationFactor();
            case LOCAL_QUORUM:
            case LOCAL_SERIAL:
                return localQuorumFor(replicationFactor, dataCenter);
            case EACH_QUORUM:
                if (replicationFactor.getReplicationStrategy() == ReplicationFactor.ReplicationStrategy.NetworkTopologyStrategy)
                {
                    int count = 0;
                    for (String datacenter : replicationFactor.getOptions().keySet())
                    {
                        count += localQuorumFor(replicationFactor, datacenter);
                    }
                    return count;
                }
                else
                {
                    return quorumFor(replicationFactor);
                }
            default:
                throw new UnsupportedOperationException("Invalid consistency level: " + toString());
        }
    }