forked from knative/eventing
/
typemeta.go
87 lines (67 loc) · 2.97 KB
/
typemeta.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
/*
Copyright 2019 The Knative 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.
*/
package common
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"knative.dev/eventing/test/base/resources"
)
// SubscriptionTypeMeta is the TypeMeta ref for Subscription.
var SubscriptionTypeMeta = MessagingTypeMeta(resources.SubscriptionKind)
// BrokerTypeMeta is the TypeMeta ref for Broker.
var BrokerTypeMeta = EventingTypeMeta(resources.BrokerKind)
// TriggerTypeMeta is the TypeMeta ref for Trigger.
var TriggerTypeMeta = EventingTypeMeta(resources.TriggerKind)
// EventingTypeMeta returns the TypeMeta ref for an eventing resource.
func EventingTypeMeta(kind string) *metav1.TypeMeta {
return &metav1.TypeMeta{
Kind: kind,
APIVersion: resources.EventingAPIVersion,
}
}
// CronJobSourceTypeMeta is the TypeMeta ref for CronJobSource.
var CronJobSourceTypeMeta = SourcesTypeMeta(resources.CronJobSourceKind)
// ContainerSourceTypeMeta is the TypeMeta ref for ContainerSource.
var ContainerSourceTypeMeta = SourcesTypeMeta(resources.ContainerSourceKind)
// ApiServerSourceTypeMeta is the TypeMeta ref for ApiServerSource.
var ApiServerSourceTypeMeta = SourcesTypeMeta(resources.ApiServerSourceKind)
// SourcesTypeMeta returns the TypeMeta ref for an eventing sources resource.
func SourcesTypeMeta(kind string) *metav1.TypeMeta {
return &metav1.TypeMeta{
Kind: kind,
APIVersion: resources.SourcesAPIVersion,
}
}
// ChannelTypeMeta is the TypeMeta ref for Channel.
var ChannelTypeMeta = MessagingTypeMeta(resources.ChannelKind)
// SequenceTypeMeta is the TypeMeta ref for Sequence.
var SequenceTypeMeta = MessagingTypeMeta(resources.SequenceKind)
// ParallelTypeMeta is the TypeMeta ref for Parallel.
var ParallelTypeMeta = MessagingTypeMeta(resources.ParallelKind)
// MessagingTypeMeta returns the TypeMeta ref for an eventing messaging resource.
func MessagingTypeMeta(kind string) *metav1.TypeMeta {
return &metav1.TypeMeta{
Kind: kind,
APIVersion: resources.MessagingAPIVersion,
}
}
// FlowsParallelTypeMeta is the TypeMeta ref for Parallel (in flows.knative.dev).
var FlowsParallelTypeMeta = FlowsTypeMeta(resources.FlowsParallelKind)
// FlowsSequenceTypeMeta is the TypeMeta ref for Sequence (in flows.knative.dev).
var FlowsSequenceTypeMeta = FlowsTypeMeta(resources.FlowsSequenceKind)
// FlowsTypeMeta returns the TypeMeta ref for an eventing messaing resource.
func FlowsTypeMeta(kind string) *metav1.TypeMeta {
return &metav1.TypeMeta{
Kind: kind,
APIVersion: resources.FlowsAPIVersion,
}
}