aboutsummaryrefslogtreecommitdiffstats
path: root/slobrok/src/vespa/slobrok/server/map_listener.h
blob: 377f8126144649a4e7cdf3cba7490e441cfc8b43 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.

#pragma once

#include "service_mapping.h"

namespace slobrok {

/**
 * Interface for getting incremental updates from a MapSource.
 **/
struct MapListener {
    virtual void add(const ServiceMapping &mapping) = 0;
    virtual void remove(const ServiceMapping &mapping) = 0;
    virtual void update(const ServiceMapping &old_mapping,
                        const ServiceMapping &new_mapping);
    virtual ~MapListener();
};

} // namespace slobrok