-
Notifications
You must be signed in to change notification settings - Fork 28
/
servicebroker_gen.go
64 lines (54 loc) · 1.36 KB
/
servicebroker_gen.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
// GENERATED. DO NOT MODIFY!
package types
import (
"encoding/json"
"github.com/Peripli/service-manager/pkg/util"
)
const ServiceBrokerType ObjectType = "types.ServiceBroker"
type ServiceBrokers struct {
ServiceBrokers []*ServiceBroker `json:"service_brokers"`
}
func (e *ServiceBrokers) Add(object Object) {
e.ServiceBrokers = append(e.ServiceBrokers, object.(*ServiceBroker))
}
func (e *ServiceBrokers) ItemAt(index int) Object {
return e.ServiceBrokers[index]
}
func (e *ServiceBrokers) Len() int {
return len(e.ServiceBrokers)
}
func (e *ServiceBroker) GetType() ObjectType {
return ServiceBrokerType
}
// MarshalJSON override json serialization for http response
func (e *ServiceBroker) MarshalJSON() ([]byte, error) {
type E ServiceBroker
toMarshal := struct {
*E
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
Labels Labels `json:"labels,omitempty"`
}{
E: (*E)(e),
Labels: e.Labels,
}
if !e.CreatedAt.IsZero() {
str := util.ToRFCFormat(e.CreatedAt)
toMarshal.CreatedAt = &str
}
if !e.UpdatedAt.IsZero() {
str := util.ToRFCFormat(e.UpdatedAt)
toMarshal.UpdatedAt = &str
}
hasNoLabels := true
for key, values := range e.Labels {
if key != "" && len(values) != 0 {
hasNoLabels = false
break
}
}
if hasNoLabels {
toMarshal.Labels = nil
}
return json.Marshal(toMarshal)
}