blob: 98b580d8288fe51db36ae54cdb5e91a0573f2ce8 [file] [log] [blame]
Jian Lib9fe3492018-06-07 17:19:07 +09001/*
2 * Copyright 2018-present Open Networking Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16package org.onosproject.openstacktelemetry.api;
17
Jian Lib9fe3492018-06-07 17:19:07 +090018/**
19 * Admin service API for publishing openstack telemetry.
20 */
Jian Lid1ce10a2018-06-12 13:47:23 +090021public interface TelemetryAdminService extends TelemetryService {
Jian Lib9fe3492018-06-07 17:19:07 +090022
23 /**
24 * Prepares and launches the telemetry producer.
Jian Lia61e0b62018-12-28 19:10:10 +090025 *
26 * @param name telemetry service name
Jian Li667c6eb2019-01-07 23:01:12 +090027 * @return true if the service is successfully started, false otherwise
Jian Lib9fe3492018-06-07 17:19:07 +090028 */
Jian Li667c6eb2019-01-07 23:01:12 +090029 boolean start(String name);
Jian Lib9fe3492018-06-07 17:19:07 +090030
31 /**
32 * Terminates the telemetry producer.
Jian Lia61e0b62018-12-28 19:10:10 +090033 *
34 * @param name telemetry service name
Jian Lib9fe3492018-06-07 17:19:07 +090035 */
Jian Lia61e0b62018-12-28 19:10:10 +090036 void stop(String name);
Jian Lib9fe3492018-06-07 17:19:07 +090037
38 /**
39 * Restarts the telemetry producer.
Jian Lia61e0b62018-12-28 19:10:10 +090040 *
41 * @param name telemetry service name
Jian Li667c6eb2019-01-07 23:01:12 +090042 * @return true if the service is successfully restarted, false otherwise
Jian Lib9fe3492018-06-07 17:19:07 +090043 */
Jian Li667c6eb2019-01-07 23:01:12 +090044 boolean restart(String name);
Jian Lia61e0b62018-12-28 19:10:10 +090045
46 /**
47 * Launches all telemetry services.
48 */
49 void startAll();
50
51 /**
52 * Terminates all telemetry services.
53 */
54 void stopAll();
55
56 /**
57 * Restarts all telemetry services.
58 */
59 void restartAll();
Jian Lib9fe3492018-06-07 17:19:07 +090060}