diff options
author | lj1412 <lji@research.att.com> | 2017-02-14 15:11:37 +0000 |
---|---|---|
committer | lj1412 <lji@research.att.com> | 2017-02-14 15:11:39 +0000 |
commit | 21f2f785e12c961a7c19dbf6aecc0f7dd136506d (patch) | |
tree | bc7da0bb678cfe2c6d75eb8f78b5eb1b9e98aabe /ncomp-openstack-model/src/main/xcore/ceilometer.xcore | |
parent | 48b5b4b734db2b757ad9091129cdeca2b2a26c5c (diff) |
Init ncomp.openstack
Change-Id: Ica7bc6ac64c8359e7e3d9846450f9fe15dd38146
Signed-off-by: lj1412 <lji@research.att.com>
Diffstat (limited to 'ncomp-openstack-model/src/main/xcore/ceilometer.xcore')
-rw-r--r-- | ncomp-openstack-model/src/main/xcore/ceilometer.xcore | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/ncomp-openstack-model/src/main/xcore/ceilometer.xcore b/ncomp-openstack-model/src/main/xcore/ceilometer.xcore new file mode 100644 index 0000000..cc5d9aa --- /dev/null +++ b/ncomp-openstack-model/src/main/xcore/ceilometer.xcore @@ -0,0 +1,130 @@ + +/*- + * ============LICENSE_START========================================== + * OPENECOMP - DCAE + * =================================================================== + * Copyright (c) 2017 AT&T Intellectual Property. All rights reserved. + * =================================================================== + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END============================================ + */ + +@GenModel(modelDirectory="/ncomp-openstack-model/src/main/xcore-gen") + +package org.openecomp.ncomp.openstack.ceilometer + +import org.openecomp.ncomp.openstack.core.OpenStackRequest +import org.openecomp.ncomp.core.NamedEntity +import org.openecomp.ncomp.openstack.compute.Link +import org.openecomp.ncomp.openstack.compute.Metadata + +annotation "http://openecomp.org/sirius/openstack" as openstack + +abstract class CeilometerService { + op CeilometerAlarm createAlarm(CreateAlarmRequest request) + op void deleteAlarm(String projectName, String name) + op CeilometerSample[] createAlarm(SampleRequest request) + String[] ceilometerAvailableCapabilites + String[] ceilometerUnavailableCapabilites +} + +abstract class CeilometerProject { + contains CeilometerAlarm[] alarms + contains CeilometerResource[] resources + contains CeilometerMeter[] meters +} + +abstract class CeilometerAlarm extends NamedEntity { + String ^id + String user_id + Date timestamp + Boolean enabled + String state + Date state_timestamp + String description + String[] alarm_actions + String[] ok_actions + String[] insufficient_data_actions + Boolean repeat_actions + String[] time_constraints +} + +class CeilometerThresholdAlarm extends CeilometerAlarm { + contains CeilometerThresholdAlarmRule threshold_rule + +} + +class CeilometerThresholdAlarmRule { + String meter_name + Long evaluation_periods + Long period + String statistic + double threshold + String[] query + String comparison_operator + Boolean exclude_outliers +} + + +class CeilometerResource { + String ^id + String user_id + String project_id + Date first_sample_timestamp + Date last_sample_timestamp + contains Link[] links + contains Metadata metadata +} +class CeilometerMeter {} + +class CeilometerQuery { + contains CeilometerFilter[] filter + contains CeilometerOrderedBy[] orderby + Long limit +} + +class CeilometerFilter { + String operation + String value + String field + contains CeilometerFilter[] filters +} + +class CeilometerOrderedBy { + String field + String direction +} + +abstract class CeilometerRequest extends OpenStackRequest { + +} + +class CreateAlarmRequest extends CeilometerRequest { +} + +class SampleRequest extends CeilometerRequest { + contains CeilometerQuery query +} + +class CeilometerSample { + String counter_name + String user_id + String resource_id + Date timestamp + Date recorded_at + String message_id + String source + String counter_unit + double counter_volume + String project_id +} |