blob: b530dee24ead4b2d7a65841234d9ccc24272450f [file] [log] [blame]
Matt Jeanneretcab955f2019-04-10 15:45:57 -04001/*
2 * Copyright 2018-present Open Networking Foundation
3
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7
8 * http://www.apache.org/licenses/LICENSE-2.0
9
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17package model
18
19// CallbackType is an enumerated value to express when a callback should be executed
20type CallbackType uint8
21
22// Enumerated list of callback types
23const (
24 GET CallbackType = iota
25 PRE_UPDATE
26 POST_UPDATE
27 PRE_ADD
28 POST_ADD
29 PRE_REMOVE
30 POST_REMOVE
31 POST_LISTCHANGE
32)
33
34var enumCallbackTypes = []string{
35 "GET",
36 "PRE_UPDATE",
37 "POST_UPDATE",
38 "PRE_ADD",
39 "POST_ADD",
40 "PRE_REMOVE",
41 "POST_REMOVE",
42 "POST_LISTCHANGE",
43}
44
45func (t CallbackType) String() string {
46 return enumCallbackTypes[t]
47}