aboutsummaryrefslogtreecommitdiffstats
path: root/searchcore/src/vespa/searchcore/proton/attribute/attribute_manager_reconfig.cpp
blob: 4638dd476b03f8d593b8b3cf07ead53890c0b96e (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
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.

#include "attribute_manager_reconfig.h"
#include "attributemanager.h"
#include "sequential_attributes_initializer.h"
#include <cassert>

namespace proton {

AttributeManagerReconfig::AttributeManagerReconfig(std::shared_ptr<AttributeManager> mgr,
                             std::unique_ptr<SequentialAttributesInitializer> initializer)
    : _mgr(std::move(mgr)),
      _initializer(std::move(initializer))
{
}

AttributeManagerReconfig::~AttributeManagerReconfig() = default;

std::shared_ptr<IAttributeManager>
AttributeManagerReconfig::create(uint32_t docid_limit, search::SerialNum serial_num)
{
    assert(_mgr);
    _mgr->addInitializedAttributes(_initializer->getInitializedAttributes(), docid_limit, serial_num);
    return std::move(_mgr);
}


}