extensions.proto 2.3 KB
Newer Older
wu-sheng's avatar
wu-sheng 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
// Copyright 2018 Istio Authors
//
// 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.

syntax = "proto3";

package istio.mixer.adapter.model.v1beta1;

option go_package="istio.io/api/mixer/adapter/model/v1beta1";
20 21
option java_package = "io.istio.api.mixer.adapter.model.v1beta1";
option java_outer_classname = "ExtensionsProto";
wu-sheng's avatar
wu-sheng 已提交
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50

import "google/protobuf/descriptor.proto";


// The available varieties of templates, controlling the semantics of what an adapter does with each instance.
enum TemplateVariety {
    // Makes the template applicable for Mixer's check calls. Instances of such template are created during
    // report calls in Mixer and passed to the handlers based on the rule configurations.
    TEMPLATE_VARIETY_CHECK = 0;
    // Makes the template applicable for Mixer's report calls. Instances of such template are created during
    // check calls in Mixer and passed to the handlers based on the rule configurations.
    TEMPLATE_VARIETY_REPORT = 1;
    // Makes the template applicable for Mixer's quota calls. Instances of such template are created during
    // quota check calls in Mixer and passed to the handlers based on the rule configurations.
    TEMPLATE_VARIETY_QUOTA = 2;
    // Makes the template applicable for Mixer's attribute generation phase. Instances of such template are created during
    // pre-processing attribute generation phase and passed to the handlers based on the rule configurations.
    TEMPLATE_VARIETY_ATTRIBUTE_GENERATOR = 3;
}

// File level options for the template.
extend google.protobuf.FileOptions {
    // Required: option for the TemplateVariety.
    TemplateVariety template_variety = 72295727;
    // Optional: option for the template name.
    // If not specified, the last segment of the template proto's package name is used to
    // derive the template name.
    string template_name = 72295888;
}