Documentation ¶
Index ¶
- func ClientIP(r *http.Request) string
- func ExtractPagingParams(req *restful.Request, minPageSize, maxPageSize int) (int, int, error)
- func FirstLower(s string) string
- func FirstUpper(s string) string
- func GenerateVersion(pre string) string
- func GetDefaultUIType(apiType string, haveOptions bool, subType string, haveSub bool) string
- func RenderLabel(source interface{}) string
- func StringsContain(items []string, source string) bool
- type GroupOption
- type MemoryCache
- type Option
- type ResponseCapture
- type Style
- type UIParameter
- type UISchema
- type Validate
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExtractPagingParams ¶
ExtractPagingParams extract `page` and `pageSize` params from request
func FirstLower ¶
FirstLower Sets the first letter of the string to lowercase.
func FirstUpper ¶
FirstUpper Sets the first letter of the string to upper.
func GenerateVersion ¶
GenerateVersion Generate version numbers by time
func GetDefaultUIType ¶
GetDefaultUIType Set the default mapping for API Schema Type
func StringsContain ¶
StringsContain strings contain
Types ¶
type GroupOption ¶
GroupOption define multiple data structure composition options.
type MemoryCache ¶
type MemoryCache struct {
// contains filtered or unexported fields
}
MemoryCache memory cache, support time expired
func NewMemoryCache ¶
func NewMemoryCache(data interface{}, cacheDuration time.Duration) *MemoryCache
NewMemoryCache new memory cache instance
func (*MemoryCache) IsExpired ¶
func (m *MemoryCache) IsExpired() bool
IsExpired whether the cache data expires
type Option ¶
type Option struct { Label string `json:"label"` Value interface{} `json:"value"` }
Option select option
type ResponseCapture ¶
type ResponseCapture struct { http.ResponseWriter // contains filtered or unexported fields }
ResponseCapture capture response and get response info
func NewResponseCapture ¶
func NewResponseCapture(w http.ResponseWriter) *ResponseCapture
NewResponseCapture new response capture
func (ResponseCapture) Bytes ¶
func (c ResponseCapture) Bytes() []byte
Bytes return response body bytes
func (ResponseCapture) Header ¶
func (c ResponseCapture) Header() http.Header
Header return response writer header
func (ResponseCapture) StatusCode ¶
func (c ResponseCapture) StatusCode() int
StatusCode return status code
func (ResponseCapture) Write ¶
func (c ResponseCapture) Write(data []byte) (int, error)
Write write data to response writer and body
func (*ResponseCapture) WriteHeader ¶
func (c *ResponseCapture) WriteHeader(statusCode int)
WriteHeader write header to response writer
type Style ¶
type Style struct { // ColSpan the width of a responsive layout ColSpan int `json:"colSpan"` }
Style ui style
type UIParameter ¶
type UIParameter struct { Sort uint `json:"sort"` Label string `json:"label"` Description string `json:"description"` Validate *Validate `json:"validate,omitempty"` JSONKey string `json:"jsonKey"` UIType string `json:"uiType"` Style *Style `json:"style,omitempty"` // means disable parameter in ui Disable *bool `json:"disable,omitempty"` SubParameterGroupOption []GroupOption `json:"subParameterGroupOption,omitempty"` SubParameters []*UIParameter `json:"subParameters,omitempty"` AdditionalParameter *UIParameter `json:"additionalParameter,omitempty"` Additional *bool `json:"additional,omitempty"` }
UIParameter Structured import table simple UI model
type Validate ¶
type Validate struct { Required bool `json:"required,omitempty"` Max *float64 `json:"max,omitempty"` MaxLength *uint64 `json:"maxLength,omitempty"` Min *float64 `json:"min,omitempty"` MinLength uint64 `json:"minLength,omitempty"` Pattern string `json:"pattern,omitempty"` Options []Option `json:"options,omitempty"` DefaultValue interface{} `json:"defaultValue,omitempty"` // the parameter cannot be changed twice. Immutable bool `json:"immutable"` }
Validate parameter validate rule