2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements. See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership. The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License. You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
19 package org
.apache
.hadoop
.hbase
.master
;
21 import org
.apache
.hadoop
.hbase
.CompatibilitySingletonFactory
;
22 import org
.apache
.yetus
.audience
.InterfaceAudience
;
24 @InterfaceAudience.Private
25 public class MetricsSnapshot
{
27 private final MetricsSnapshotSource source
;
29 public MetricsSnapshot() {
30 source
= CompatibilitySingletonFactory
.getInstance(MetricsSnapshotSource
.class);
34 * Record a single instance of a snapshot
35 * @param time time that the snapshot took
37 public void addSnapshot(long time
) {
38 source
.updateSnapshotTime(time
);
42 * Record a single instance of a snapshot
43 * @param time time that the snapshot restore took
45 public void addSnapshotRestore(long time
) {
46 source
.updateSnapshotRestoreTime(time
);
50 * Record a single instance of a snapshot cloned table
51 * @param time time that the snapshot clone took
53 public void addSnapshotClone(long time
) {
54 source
.updateSnapshotCloneTime(time
);