mirror of
https://github.com/harness/drone.git
synced 2025-05-04 09:52:08 +08:00
76 lines
1.5 KiB
Go
76 lines
1.5 KiB
Go
// Copyright 2022 Harness Inc. All rights reserved.
|
|
// Use of this source code is governed by the Polyform Free Trial License
|
|
// that can be found in the LICENSE.md file for this repository.
|
|
|
|
package enum
|
|
|
|
import "github.com/harness/gitness/gitrpc/rpc"
|
|
|
|
type RefType int
|
|
|
|
const (
|
|
RefTypeUndefined RefType = iota
|
|
RefTypeRaw
|
|
RefTypeBranch
|
|
RefTypeTag
|
|
RefTypePullReqHead
|
|
RefTypePullReqMerge
|
|
)
|
|
|
|
func RefFromRPC(t rpc.RefType) RefType {
|
|
switch t {
|
|
case rpc.RefType_RefRaw:
|
|
return RefTypeRaw
|
|
case rpc.RefType_RefBranch:
|
|
return RefTypeBranch
|
|
case rpc.RefType_RefTag:
|
|
return RefTypeTag
|
|
case rpc.RefType_RefPullReqHead:
|
|
return RefTypePullReqHead
|
|
case rpc.RefType_RefPullReqMerge:
|
|
return RefTypePullReqMerge
|
|
case rpc.RefType_Undefined:
|
|
return RefTypeUndefined
|
|
default:
|
|
return RefTypeUndefined
|
|
}
|
|
}
|
|
|
|
func RefToRPC(t RefType) rpc.RefType {
|
|
switch t {
|
|
case RefTypeRaw:
|
|
return rpc.RefType_RefRaw
|
|
case RefTypeBranch:
|
|
return rpc.RefType_RefBranch
|
|
case RefTypeTag:
|
|
return rpc.RefType_RefTag
|
|
case RefTypePullReqHead:
|
|
return rpc.RefType_RefPullReqHead
|
|
case RefTypePullReqMerge:
|
|
return rpc.RefType_RefPullReqMerge
|
|
case RefTypeUndefined:
|
|
return rpc.RefType_Undefined
|
|
default:
|
|
return rpc.RefType_Undefined
|
|
}
|
|
}
|
|
|
|
func (t RefType) String() string {
|
|
switch t {
|
|
case RefTypeRaw:
|
|
return "raw"
|
|
case RefTypeBranch:
|
|
return "branch"
|
|
case RefTypeTag:
|
|
return "tag"
|
|
case RefTypePullReqHead:
|
|
return "head"
|
|
case RefTypePullReqMerge:
|
|
return "merge"
|
|
case RefTypeUndefined:
|
|
fallthrough
|
|
default:
|
|
return ""
|
|
}
|
|
}
|