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


C++ KVEngine::getAllIdents方法代码示例

本文整理汇总了C++中KVEngine::getAllIdents方法的典型用法代码示例。如果您正苦于以下问题:C++ KVEngine::getAllIdents方法的具体用法?C++ KVEngine::getAllIdents怎么用?C++ KVEngine::getAllIdents使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在KVEngine的用法示例。


在下文中一共展示了KVEngine::getAllIdents方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: opCtx

    TEST( KVEngineTestHarness, SimpleRS1 ) {
        unique_ptr<KVHarnessHelper> helper( KVHarnessHelper::create() );
        KVEngine* engine = helper->getEngine();
        ASSERT( engine );

        string ns = "a.b";
        unique_ptr<RecordStore> rs;
        {
            MyOperationContext opCtx( engine );
            ASSERT_OK( engine->createRecordStore( &opCtx, ns, ns, CollectionOptions() ) );
            rs.reset( engine->getRecordStore( &opCtx, ns, ns, CollectionOptions() ) );
            ASSERT( rs );
        }


        RecordId loc;
        {
            MyOperationContext opCtx( engine );
            WriteUnitOfWork uow( &opCtx );
            StatusWith<RecordId> res = rs->insertRecord( &opCtx, "abc", 4, false );
            ASSERT_OK( res.getStatus() );
            loc = res.getValue();
            uow.commit();
        }

        {
            MyOperationContext opCtx( engine );
            ASSERT_EQUALS( string("abc"), rs->dataFor( &opCtx, loc ).data() );
        }

        {
            MyOperationContext opCtx( engine );
            std::vector<std::string> all = engine->getAllIdents( &opCtx );
            ASSERT_EQUALS( 1U, all.size() );
            ASSERT_EQUALS( ns, all[0] );
        }

    }
开发者ID:Amosvista,项目名称:mongo,代码行数:38,代码来源:kv_engine_test_harness.cpp

示例2: opCtx

TEST(KVEngineTestHarness, TemporaryRecordStoreSimple) {
    unique_ptr<KVHarnessHelper> helper(KVHarnessHelper::create());
    KVEngine* engine = helper->getEngine();
    ASSERT(engine);

    string ident = "temptemp";
    unique_ptr<RecordStore> rs;
    {
        MyOperationContext opCtx(engine);
        rs = engine->makeTemporaryRecordStore(&opCtx, ident);
        ASSERT(rs);
    }

    RecordId loc;
    {
        MyOperationContext opCtx(engine);
        WriteUnitOfWork uow(&opCtx);
        StatusWith<RecordId> res = rs->insertRecord(&opCtx, "abc", 4, Timestamp());
        ASSERT_OK(res.getStatus());
        loc = res.getValue();
        uow.commit();
    }

    {
        MyOperationContext opCtx(engine);
        ASSERT_EQUALS(string("abc"), rs->dataFor(&opCtx, loc).data());

        std::vector<std::string> all = engine->getAllIdents(&opCtx);
        ASSERT_EQUALS(1U, all.size());
        ASSERT_EQUALS(ident, all[0]);

        WriteUnitOfWork wuow(&opCtx);
        ASSERT_OK(engine->dropIdent(&opCtx, ident));
        wuow.commit();
    }
}
开发者ID:acmorrow,项目名称:mongo,代码行数:36,代码来源:kv_engine_test_harness.cpp


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