aboutsummaryrefslogtreecommitdiffstats
path: root/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/container/metrics/Gauge.java
blob: d97db8f0242e61c5efcd3c84290366b7ff8e93d7 (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
// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.node.admin.container.metrics;

/**
 * @author freva
 */
public class Gauge implements MetricValue {
    private final Object lock = new Object();

    private double value;

    public void sample(double x) {
        synchronized (lock) {
            this.value = x;
        }
    }

    @Override
    public Number getValue() {
        synchronized (lock) {
            return value;
        }
    }
}