当前位置: 首页>>代码示例>>Java>>正文


Java QueryPagers类代码示例

本文整理汇总了Java中org.apache.cassandra.service.pager.QueryPagers的典型用法代码示例。如果您正苦于以下问题:Java QueryPagers类的具体用法?Java QueryPagers怎么用?Java QueryPagers使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


QueryPagers类属于org.apache.cassandra.service.pager包,在下文中一共展示了QueryPagers类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: executeInternalWithPaging

import org.apache.cassandra.service.pager.QueryPagers; //导入依赖的package包/类
public static UntypedResultSet executeInternalWithPaging(String query, int pageSize, Object... values)
{
    try
    {
        ParsedStatement.Prepared prepared = prepareInternal(query);
        if (!(prepared.statement instanceof SelectStatement))
            throw new IllegalArgumentException("Only SELECTs can be paged");

        SelectStatement select = (SelectStatement)prepared.statement;
        QueryPager pager = QueryPagers.localPager(select.getPageableCommand(makeInternalOptions(prepared, values)));
        return UntypedResultSet.create(select, pager, pageSize);
    }
    catch (RequestValidationException e)
    {
        throw new RuntimeException("Error validating query" + e);
    }
}
 
开发者ID:vcostet,项目名称:cassandra-kmean,代码行数:18,代码来源:QueryProcessor.java

示例2: indexRow

import org.apache.cassandra.service.pager.QueryPagers; //导入依赖的package包/类
/**
 * @param key row to index
 * @param cfs ColumnFamily to index row in
 * @param idxNames columns to index, in comparator order
 */
public static void indexRow(DecoratedKey key, ColumnFamilyStore cfs, Set<String> idxNames)
{
    if (logger.isDebugEnabled())
        logger.debug("Indexing row {} ", cfs.metadata.getKeyValidator().getString(key.getKey()));

    try (OpOrder.Group opGroup = cfs.keyspace.writeOrder.start())
    {
        Set<SecondaryIndex> indexes = cfs.indexManager.getIndexesByNames(idxNames);

        Iterator<ColumnFamily> pager = QueryPagers.pageRowLocally(cfs, key.getKey(), DEFAULT_PAGE_SIZE);
        while (pager.hasNext())
        {
            ColumnFamily cf = pager.next();
            ColumnFamily cf2 = cf.cloneMeShallow();
            for (Cell cell : cf)
            {
                if (cfs.indexManager.indexes(cell.name(), indexes))
                    cf2.addColumn(cell);
            }
            cfs.indexManager.indexRow(key.getKey(), cf2, opGroup);
        }
    }
}
 
开发者ID:vcostet,项目名称:cassandra-kmean,代码行数:29,代码来源:Keyspace.java

示例3: indexRow

import org.apache.cassandra.service.pager.QueryPagers; //导入依赖的package包/类
/**
 * @param key row to index
 * @param cfs ColumnFamily to index row in
 * @param idxNames columns to index, in comparator order
 */
public static void indexRow(DecoratedKey key, ColumnFamilyStore cfs, Set<String> idxNames)
{
    if (logger.isDebugEnabled())
        logger.debug("Indexing row {} ", cfs.metadata.getKeyValidator().getString(key.key));

    try (OpOrder.Group opGroup = cfs.keyspace.writeOrder.start())
    {
        Set<SecondaryIndex> indexes = cfs.indexManager.getIndexesByNames(idxNames);

        Iterator<ColumnFamily> pager = QueryPagers.pageRowLocally(cfs, key.key, DEFAULT_PAGE_SIZE);
        while (pager.hasNext())
        {
            ColumnFamily cf = pager.next();
            ColumnFamily cf2 = cf.cloneMeShallow();
            for (Cell cell : cf)
            {
                if (cfs.indexManager.indexes(cell.name(), indexes))
                    cf2.addColumn(cell);
            }
            cfs.indexManager.indexRow(key.key, cf2, opGroup);
        }
    }
}
 
开发者ID:rajath26,项目名称:cassandra-trunk,代码行数:29,代码来源:Keyspace.java

示例4: indexRow

import org.apache.cassandra.service.pager.QueryPagers; //导入依赖的package包/类
/**
 * @param key row to index
 * @param cfs ColumnFamily to index row in
 * @param idxNames columns to index, in comparator order
 */
public static void indexRow(DecoratedKey key, ColumnFamilyStore cfs, Set<String> idxNames)
{
    if (logger.isDebugEnabled())
        logger.debug("Indexing row {} ", cfs.metadata.getKeyValidator().getString(key.key));

    Collection<SecondaryIndex> indexes = cfs.indexManager.getIndexesByNames(idxNames);

    switchLock.readLock().lock();
    try
    {
        Iterator<ColumnFamily> pager = QueryPagers.pageRowLocally(cfs, key.key, DEFAULT_PAGE_SIZE);
        while (pager.hasNext())
        {
            ColumnFamily cf = pager.next();
            ColumnFamily cf2 = cf.cloneMeShallow();
            for (Column column : cf)
            {
                if (cfs.indexManager.indexes(column.name(), indexes))
                    cf2.addColumn(column);
            }
            cfs.indexManager.indexRow(key.key, cf2);
        }
    }
    finally
    {
        switchLock.readLock().unlock();
    }
}
 
开发者ID:pgaref,项目名称:ACaZoo,代码行数:34,代码来源:Keyspace.java

示例5: indexRow

import org.apache.cassandra.service.pager.QueryPagers; //导入依赖的package包/类
/**
 * @param key row to index
 * @param cfs ColumnFamily to index row in
 * @param idxNames columns to index, in comparator order
 */
public static void indexRow(DecoratedKey key, ColumnFamilyStore cfs, Set<String> idxNames)
{
    if (logger.isDebugEnabled())
        logger.debug("Indexing row {} ", cfs.metadata.getKeyValidator().getString(key.key));

    Collection<SecondaryIndex> indexes = cfs.indexManager.getIndexesByNames(idxNames);

    switchLock.readLock().lock();
    try
    {
        Iterator<ColumnFamily> pager = QueryPagers.pageRowLocally(cfs, key.key, DEFAULT_PAGE_SIZE);
        while (pager.hasNext())
        {
            ColumnFamily cf = pager.next();
            ColumnFamily cf2 = cf.cloneMeShallow();
            for (Cell cell : cf)
            {
                if (cfs.indexManager.indexes(cell.name(), indexes))
                    cf2.addColumn(cell);
            }
            cfs.indexManager.indexRow(key.key, cf2);
        }
    }
    finally
    {
        switchLock.readLock().unlock();
    }
}
 
开发者ID:mafernandez-stratio,项目名称:cassandra-cqlMod,代码行数:34,代码来源:Keyspace.java


注:本文中的org.apache.cassandra.service.pager.QueryPagers类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。