 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- Variables
- type Entry
- func (e *Entry) AddLabel(labels ...*Label) EntryDecorator
- func (e *Entry) Copy() *Entry
- func (*Entry) Descriptor() ([]byte, []int)deprecated
- func (e *Entry) DisableAuditLog() EntryDecorator
- func (e *Entry) DisableAuth() EntryDecorator
- func (e *Entry) DisablePermission() EntryDecorator
- func (e *Entry) DisableRequiredNamespace() EntryDecorator
- func (e *Entry) EnableAuditLog() EntryDecorator
- func (e *Entry) EnableAuth() EntryDecorator
- func (e *Entry) EnablePermission() EntryDecorator
- func (e *Entry) EnableRequreNamespace() EntryDecorator
- func (x *Entry) GetAllow() []string
- func (x *Entry) GetAuditLog() bool
- func (x *Entry) GetAuthEnable() bool
- func (x *Entry) GetExtension() map[string]string
- func (x *Entry) GetFunctionName() string
- func (x *Entry) GetLabels() map[string]string
- func (e *Entry) GetLableValue(key string) string
- func (x *Entry) GetMethod() string
- func (x *Entry) GetPath() string
- func (x *Entry) GetPermissionEnable() bool
- func (x *Entry) GetRequiredNamespace() bool
- func (x *Entry) GetResource() string
- func (e *Entry) IsAllow(target fmt.Stringer) bool
- func (*Entry) ProtoMessage()
- func (x *Entry) ProtoReflect() protoreflect.Message
- func (x *Entry) Reset()
- func (e *Entry) SetAllow(targets ...fmt.Stringer) EntryDecorator
- func (x *Entry) String() string
- func (e *Entry) UniquePath() string
 
- type EntryDecorator
- type EntrySet
- func (s *EntrySet) AddEntry(es ...Entry)
- func (s *EntrySet) AuthEnableEntry() []*Entry
- func (s *EntrySet) GetEntry(path, mothod string) *Entry
- func (s *EntrySet) Merge(target *EntrySet)
- func (s *EntrySet) PermissionEnableEntry() []*Entry
- func (s *EntrySet) String() string
- func (s *EntrySet) UniquePathEntry() []*Entry
 
- type Label
Constants ¶
This section is empty.
Variables ¶
      View Source
      
  var (
	// optional infraboard.mcube.http.Entry rest_api = 20210228;
	E_RestApi = &file_mcube_pb_http_entry_proto_extTypes[0]
)
    Extension fields to descriptorpb.MethodOptions.
      View Source
      
  
var File_mcube_pb_http_entry_proto protoreflect.FileDescriptor
    Functions ¶
This section is empty.
Types ¶
type Entry ¶
type Entry struct {
	// 函数名称
	// @gotags: bson:"function_name" json:"function_name"
	FunctionName string `protobuf:"bytes,2,opt,name=function_name,json=functionName,proto3" json:"function_name" bson:"function_name"`
	// HTTP path 用于自动生成http api
	// @gotags: bson:"path" json:"path"
	Path string `protobuf:"bytes,3,opt,name=path,proto3" json:"path" bson:"path"`
	// HTTP method 用于自动生成http api
	// @gotags: bson:"method" json:"method"
	Method string `protobuf:"bytes,4,opt,name=method,proto3" json:"method" bson:"method"`
	// 资源名称
	// @gotags: bson:"resource" json:"resource"
	Resource string `protobuf:"bytes,5,opt,name=resource,proto3" json:"resource" bson:"resource"`
	// 是否校验用户身份 (acccess_token)
	// @gotags: bson:"auth_enable" json:"auth_enable"
	AuthEnable bool `protobuf:"varint,6,opt,name=auth_enable,json=authEnable,proto3" json:"auth_enable" bson:"auth_enable"`
	// 是否校验用户权限
	// @gotags: bson:"permission_enable" json:"permission_enable"
	PermissionEnable bool `protobuf:"varint,7,opt,name=permission_enable,json=permissionEnable,proto3" json:"permission_enable" bson:"permission_enable"`
	// 允许的通过的身份标识符, 比如角色, 用户类型之类
	// @gotags: bson:"allow" json:"allow"
	Allow []string `protobuf:"bytes,12,rep,name=allow,proto3" json:"allow" bson:"allow"`
	// 是否开启操作审计, 开启后这次操作将被记录
	// @gotags: bson:"audit_log" json:"audit_log"
	AuditLog bool `protobuf:"varint,9,opt,name=audit_log,json=auditLog,proto3" json:"audit_log" bson:"audit_log"`
	// 名称空间不能为空
	// @gotags: bson:"required_namespace" json:"required_namespace"
	RequiredNamespace bool `` /* 130-byte string literal not displayed */
	// 标签
	// @gotags: bson:"labels" json:"labels"
	Labels map[string]string `` /* 157-byte string literal not displayed */
	// 扩展属性
	// @gotags: bson:"extension" json:"extension"
	Extension map[string]string `` /* 167-byte string literal not displayed */
	// contains filtered or unexported fields
}
    Entry 路由条目
        
          
            func (*Entry) Descriptor
            deprecated
            
          
  
    
  
      
      
    func (*Entry) DisableAuditLog ¶
func (e *Entry) DisableAuditLog() EntryDecorator
DisableAuth 不启用身份验证
func (*Entry) DisablePermission ¶
func (e *Entry) DisablePermission() EntryDecorator
DisablePermission 禁用授权验证
func (*Entry) DisableRequiredNamespace ¶
func (e *Entry) DisableRequiredNamespace() EntryDecorator
DisableAuth 不启用身份验证
func (*Entry) EnablePermission ¶
func (e *Entry) EnablePermission() EntryDecorator
EnablePermission 启用授权验证
func (*Entry) EnableRequreNamespace ¶
func (e *Entry) EnableRequreNamespace() EntryDecorator
EnableAuth 启动身份验证
func (*Entry) GetAuditLog ¶
func (*Entry) GetAuthEnable ¶
func (*Entry) GetExtension ¶
func (*Entry) GetFunctionName ¶
func (*Entry) GetLableValue ¶
GetLableValue 获取Lable的值
func (*Entry) GetPermissionEnable ¶
func (*Entry) GetRequiredNamespace ¶
func (*Entry) GetResource ¶
func (*Entry) ProtoMessage ¶
func (*Entry) ProtoMessage()
func (*Entry) ProtoReflect ¶
func (x *Entry) ProtoReflect() protoreflect.Message
type EntryDecorator ¶
type EntryDecorator interface {
	// SetLabel 设置子路由标签, 作用于Entry上
	AddLabel(...*Label) EntryDecorator
	EnableAuth() EntryDecorator
	DisableAuth() EntryDecorator
	EnablePermission() EntryDecorator
	DisablePermission() EntryDecorator
	SetAllow(targets ...fmt.Stringer) EntryDecorator
	EnableAuditLog() EntryDecorator
	DisableAuditLog() EntryDecorator
	EnableRequreNamespace() EntryDecorator
	DisableRequiredNamespace() EntryDecorator
}
    EntryDecorator 装饰
type EntrySet ¶
type EntrySet struct {
	Items []*Entry `json:"items"`
}
    EntrySet 路由条目集
func (*EntrySet) AuthEnableEntry ¶
AuthEnableEntry todo
func (*EntrySet) PermissionEnableEntry ¶
PermissionEnableEntry todo
 Click to show internal directories. 
   Click to hide internal directories.