aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src/tests/proton/common/dummydbowner.h
blob: a514f0ae9a7394083fdc4b3d4d06bdf6bb64b41f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.

#pragma once

#include <vespa/searchcore/proton/server/idocumentdbowner.h>
#include <vespa/searchcore/proton/reference/document_db_referent_registry.h>
#include <vespa/searchcorespi/plugin/iindexmanagerfactory.h>
#include <vespa/vespalib/stllike/string.h>

namespace proton
{

struct DummyDBOwner : IDocumentDBOwner {
    std::shared_ptr<IDocumentDBReferentRegistry> _registry;

    DummyDBOwner()
        : _registry(std::make_shared<DocumentDBReferentRegistry>())
    {
    }

    bool isInitializing() const override { return false; }

    searchcorespi::IIndexManagerFactory::SP
    getIndexManagerFactory(const vespalib::stringref & ) const override {
        return searchcorespi::IIndexManagerFactory::SP();
    }
    uint32_t getDistributionKey() const override { return -1; }
    std::shared_ptr<IDocumentDBReferentRegistry> getDocumentDBReferentRegistry() const override {
        return _registry;
    }
};

} // namespace proton