1// Copyright Istio Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package istio.mixer.adapter.sample.myApa;
18
19import "mixer/adapter/model/v1beta1/extensions.proto";
20import "policy/v1beta1/type.proto";
21
22option (istio.mixer.adapter.model.v1beta1.template_variety) = TEMPLATE_VARIETY_ATTRIBUTE_GENERATOR;
23
24/* myapa template is ..
25*/
26message Template {
27    int64 int64Primitive = 1;
28
29    bool boolPrimitive = 2;
30
31    double doublePrimitive = 3;
32
33    string stringPrimitive = 4;
34
35    map<string, int64> dimensionsFixedInt64ValueDType = 5;
36
37    istio.policy.v1beta1.TimeStamp timeStamp = 6;
38
39    istio.policy.v1beta1.Duration duration = 7;
40
41    map<string, Resource3> res3_map = 8;
42
43    istio.policy.v1beta1.IPAddress ip_addr = 11;
44
45    istio.policy.v1beta1.DNSName dns_name = 12;
46
47    istio.policy.v1beta1.EmailAddress email_addr = 13;
48
49    istio.policy.v1beta1.Uri uri = 14;
50}
51
52message OutputTemplate {
53
54    int64 int64Primitive = 1;
55
56    bool boolPrimitive = 2;
57
58    double doublePrimitive = 3;
59
60    string stringPrimitive = 4;
61
62    istio.policy.v1beta1.TimeStamp timeStamp = 6;
63
64    istio.policy.v1beta1.Duration duration = 7;
65
66    istio.policy.v1beta1.IPAddress ip_addr = 11;
67
68    istio.policy.v1beta1.DNSName dns_name = 12;
69
70    istio.policy.v1beta1.EmailAddress email_addr = 13;
71
72    istio.policy.v1beta1.Uri uri = 14;
73
74    map<string, string> out_str_map = 15;
75}
76
77
78message Resource1 {
79    string str = 1;
80    Resource1 self_ref_res1 = 3;
81    Resource2 resRef2 = 2;
82}
83
84message Resource2 {
85    string str = 1;
86    Resource3 res3 = 2;
87    map<string, Resource3> res3_map = 3;
88}
89
90// resource3 comment
91message Resource3 {
92
93    int64 int64Primitive = 1;
94
95    bool boolPrimitive = 2;
96
97    double doublePrimitive = 3;
98
99    string stringPrimitive = 4;
100
101    map<string, int64> dimensionsFixedInt64ValueDType = 5;
102
103    istio.policy.v1beta1.TimeStamp timeStamp = 6;
104
105    istio.policy.v1beta1.Duration duration = 7;
106}
107