Documentation ¶
Index ¶
- Constants
- func Booting(f func(Initiator))
- func ConvertAssign(dest, src interface{}) error
- func InSlice(array interface{}, item interface{}) bool
- func NewMap(dst interface{}) error
- type Application
- func (app *Application) AsyncCachePreheat(f func(repo *Repository))
- func (app *Application) BindController(relativePath string, controller interface{}, handlers ...context.Handler)
- func (app *Application) BindControllerByParty(party iris.Party, controller interface{})
- func (app *Application) BindInfra(single bool, com interface{})
- func (app *Application) BindRepository(f interface{})
- func (app *Application) BindService(f interface{})
- func (app *Application) CachePreheat(f func(repo *Repository))
- func (app *Application) Closeing(f func())
- func (app *Application) CreateH2CRunner(addr string, configurators ...host.Configurator) iris.Runner
- func (app *Application) CreateParty(relativePath string, handlers ...context.Handler) iris.Party
- func (app *Application) CreateRunner(addr string, configurators ...host.Configurator) iris.Runner
- func (app *Application) EventsPath(infra interface{}) map[string]string
- func (app *Application) GetInfra(ctx iris.Context, com interface{})
- func (app *Application) GetService(ctx iris.Context, service interface{})
- func (app *Application) InjectController(f interface{})
- func (app *Application) InstallDomainEventInfra(eventInfra DomainEventInfra)
- func (app *Application) InstallGorm(f func() (db *gorm.DB))
- func (app *Application) InstallMiddleware(handler iris.Handler)
- func (app *Application) InstallParty(relativePath string)
- func (app *Application) InstallRedis(f func() (client redis.Cmdable))
- func (app *Application) Iris() *iris.Application
- func (app *Application) ListenEvent(eventName string, objectMethod string, appointInfra ...interface{})
- func (app *Application) Logger() *golog.Logger
- func (app *Application) Run(serve iris.Runner, irisConf iris.Configuration)
- type BeginRequest
- type Bus
- type DomainEventInfra
- type Entity
- type EventBus
- type GORMRepository
- type Group
- type Infra
- type InfraPool
- type Initiator
- type JMap
- func (jm *JMap) AllKey() []interface{}
- func (jm *JMap) DelAll()
- func (jm *JMap) Exist(key interface{}) bool
- func (jm *JMap) Get(key interface{}, value interface{}) error
- func (jm *JMap) Interface(key interface{}) interface{}
- func (jm *JMap) Remove(key interface{})
- func (jm *JMap) Set(key interface{}, value interface{})
- func (jm *JMap) SetOrStore(key interface{}, value interface{}) (v interface{}, set bool)
- type Logger
- type Pager
- type Prometheus
- type QueryBuilder
- type Reorder
- type Repository
- func (repo *Repository) BeginRequest(rt Runtime)
- func (repo *Repository) DB() (db *gorm.DB)
- func (repo *Repository) MadeEntity(entity interface{})
- func (repo *Repository) NewAscOrder(field string, fields ...string) *Reorder
- func (repo *Repository) NewDescOrder(field string, fields ...string) *Reorder
- func (repo *Repository) NewFastRequest(url string) Request
- func (repo *Repository) NewH2CRequest(url string) Request
- func (repo *Repository) Redis() redis.Cmdable
- func (repo *Repository) SingleFlight(key string, value, takeObject interface{}, fn func() (interface{}, error)) error
- type RepositoryPool
- type Request
- type Result
- type Runtime
- type Scanner
- type ServicePool
- type SingleBoot
- type Store
- func (s *Store) Exist(key interface{}) bool
- func (s *Store) Get(key interface{}, value interface{}) error
- func (s *Store) Keys() []interface{}
- func (s *Store) Remove(key interface{})
- func (s *Store) RemoveAll()
- func (s *Store) Set(key interface{}, value interface{})
- func (s *Store) SetOrStore(key interface{}, value interface{}) (v interface{}, set bool)
- func (s *Store) ToInterface(key interface{}) interface{}
- func (s *Store) ToMap() map[interface{}]interface{}
- func (s *Store) Values() []interface{}
- type UnitTest
- type UnitTestImpl
- func (u *UnitTestImpl) GetRepository(repository interface{})
- func (u *UnitTestImpl) GetService(service interface{})
- func (u *UnitTestImpl) InstallDomainEventInfra(eventInfra DomainEventInfra)
- func (u *UnitTestImpl) InstallGorm(f func() (db *gorm.DB))
- func (u *UnitTestImpl) InstallRedis(f func() (client redis.Cmdable))
- func (u *UnitTestImpl) MadeEntity(entity interface{})
- func (u *UnitTestImpl) NewDomainEventInfra(call ...func(producer, topic string, data []byte, header map[string]string)) DomainEventInfra
- func (u *UnitTestImpl) Run()
- func (u *UnitTestImpl) SetRequest(request *http.Request)
Constants ¶
const (
RuntimeKey = "runtime-ctx"
)
Variables ¶
This section is empty.
Functions ¶
func Booting ¶
func Booting(f func(Initiator))
Booting app.BindController or app.BindControllerByParty.
func ConvertAssign ¶
func ConvertAssign(dest, src interface{}) error
Types ¶
type Application ¶
type Application struct { IrisApp *iris.Application Database struct { Install func() (db *gorm.DB) // contains filtered or unexported fields } Cache struct { Install func() (client redis.Cmdable) // contains filtered or unexported fields } Middleware []context.Handler Prometheus *Prometheus ControllerDep []interface{} // contains filtered or unexported fields }
Application .
func (*Application) AsyncCachePreheat ¶
func (app *Application) AsyncCachePreheat(f func(repo *Repository))
AsyncCachePreheat .
func (*Application) BindController ¶
func (app *Application) BindController(relativePath string, controller interface{}, handlers ...context.Handler)
BindController .
func (*Application) BindControllerByParty ¶
func (app *Application) BindControllerByParty(party iris.Party, controller interface{})
BindControllerByParty .
func (*Application) BindInfra ¶ added in v1.3.0
func (app *Application) BindInfra(single bool, com interface{})
BindInfra .
func (*Application) BindRepository ¶
func (app *Application) BindRepository(f interface{})
BindRepository .
func (*Application) CachePreheat ¶
func (app *Application) CachePreheat(f func(repo *Repository))
CachePreheat .
func (*Application) Closeing ¶ added in v1.5.0
func (app *Application) Closeing(f func())
Register .
func (*Application) CreateH2CRunner ¶ added in v1.0.5
func (app *Application) CreateH2CRunner(addr string, configurators ...host.Configurator) iris.Runner
func (*Application) CreateParty ¶
CreateParty .
func (*Application) CreateRunner ¶ added in v1.5.0
func (app *Application) CreateRunner(addr string, configurators ...host.Configurator) iris.Runner
func (*Application) EventsPath ¶ added in v1.3.0
func (app *Application) EventsPath(infra interface{}) map[string]string
EventsPath .
func (*Application) GetInfra ¶ added in v1.3.0
func (app *Application) GetInfra(ctx iris.Context, com interface{})
GetInfra .
func (*Application) GetService ¶
func (app *Application) GetService(ctx iris.Context, service interface{})
GetService .
func (*Application) InjectController ¶ added in v1.1.0
func (app *Application) InjectController(f interface{})
InjectController .
func (*Application) InstallDomainEventInfra ¶ added in v1.3.7
func (app *Application) InstallDomainEventInfra(eventInfra DomainEventInfra)
InstallDomainEventInfra .
func (*Application) InstallGorm ¶ added in v1.0.5
func (app *Application) InstallGorm(f func() (db *gorm.DB))
InstallGorm .
func (*Application) InstallMiddleware ¶ added in v1.0.5
func (app *Application) InstallMiddleware(handler iris.Handler)
InstallMiddleware .
func (*Application) InstallParty ¶ added in v1.2.1
func (app *Application) InstallParty(relativePath string)
InstallParty .
func (*Application) InstallRedis ¶ added in v1.0.5
func (app *Application) InstallRedis(f func() (client redis.Cmdable))
InstallRedis .
func (*Application) ListenEvent ¶ added in v1.3.0
func (app *Application) ListenEvent(eventName string, objectMethod string, appointInfra ...interface{})
ListenMessage .
func (*Application) Logger ¶ added in v1.0.5
func (app *Application) Logger() *golog.Logger
Logger .
func (*Application) Run ¶
func (app *Application) Run(serve iris.Runner, irisConf iris.Configuration)
Run .
type DomainEventInfra ¶ added in v1.3.7
type EventBus ¶ added in v1.3.0
type EventBus struct {
// contains filtered or unexported fields
}
EventBus .
func (*EventBus) EventsPath ¶ added in v1.3.0
EventsPath .
type Group ¶ added in v1.4.2
type Group struct {
// contains filtered or unexported fields
}
Group represents a class of work and forms a namespace in which units of work can be executed with duplicate suppression.
func (*Group) Do ¶ added in v1.4.2
func (g *Group) Do(key string, fn func() (interface{}, error)) (v interface{}, err error, shared bool)
Do executes and returns the results of the given function, making sure that only one execution is in-flight for a given key at a time. If a duplicate comes in, the duplicate caller waits for the original to complete and receives the same results. The return value shared indicates whether v was given to multiple callers.
type Infra ¶ added in v1.3.0
type Infra struct {
Runtime Runtime `json:"-"`
}
Infra .
func (*Infra) BeginRequest ¶ added in v1.3.0
BeginRequest .子实现多态
func (*Infra) NewFastRequest ¶ added in v1.3.0
NewFastRequest .
func (*Infra) NewH2CRequest ¶ added in v1.3.0
NewH2CRequest .
type InfraPool ¶ added in v1.3.0
type InfraPool struct {
// contains filtered or unexported fields
}
InfraPool .
type Initiator ¶
type Initiator interface { CreateParty(relativePath string, handlers ...context.Handler) iris.Party BindController(relativePath string, controller interface{}, handlers ...context.Handler) BindControllerByParty(party iris.Party, controller interface{}) BindService(f interface{}) InjectController(f interface{}) BindRepository(f interface{}) GetService(ctx iris.Context, service interface{}) AsyncCachePreheat(f func(repo *Repository)) CachePreheat(f func(repo *Repository)) //BindInfra 如果是单例 com是对象, 如果是多例,com是函数 BindInfra(single bool, com interface{}) GetInfra(ctx iris.Context, com interface{}) //监听事件 ListenEvent(eventName string, objectMethod string, appointInfra ...interface{}) }
Initiator .
type JMap ¶
type JMap struct {
// contains filtered or unexported fields
}
func (*JMap) SetOrStore ¶
type Logger ¶
type Logger interface { Print(v ...interface{}) Printf(format string, args ...interface{}) Println(v ...interface{}) Log(level golog.Level, v ...interface{}) Logf(level golog.Level, format string, args ...interface{}) Fatal(v ...interface{}) Fatalf(format string, args ...interface{}) Error(v ...interface{}) Errorf(format string, args ...interface{}) Warn(v ...interface{}) Warnf(format string, args ...interface{}) Info(v ...interface{}) Infof(format string, args ...interface{}) Debug(v ...interface{}) Debugf(format string, args ...interface{}) }
Logger .
type Pager ¶ added in v1.1.0
type Pager struct {
// contains filtered or unexported fields
}
Pager 分页器
type Prometheus ¶
type Prometheus struct {
// contains filtered or unexported fields
}
Prometheus is a handler that exposes prometheus metrics for the number of requests, the latency and the response size, partitioned by status code, method and HTTP path.
Usage: pass its `ServeHTTP` to a route or globally.
type QueryBuilder ¶
type QueryBuilder interface { Execute(db *gorm.DB, object interface{}) (e error) Order() interface{} }
QueryBuilder .
type Reorder ¶ added in v1.1.0
type Reorder struct {
// contains filtered or unexported fields
}
Reorder .
type Repository ¶
type Repository struct {
Runtime Runtime
}
Repository .
func (*Repository) MadeEntity ¶ added in v1.3.7
func (repo *Repository) MadeEntity(entity interface{})
MadeEntity .
func (*Repository) NewAscOrder ¶
func (repo *Repository) NewAscOrder(field string, fields ...string) *Reorder
NewAscOrder .
func (*Repository) NewDescOrder ¶
func (repo *Repository) NewDescOrder(field string, fields ...string) *Reorder
NewDescOrder .
func (*Repository) NewFastRequest ¶
func (repo *Repository) NewFastRequest(url string) Request
NewFastRequest .
func (*Repository) NewH2CRequest ¶
func (repo *Repository) NewH2CRequest(url string) Request
NewH2CRequest .
func (*Repository) SingleFlight ¶ added in v1.4.2
func (repo *Repository) SingleFlight(key string, value, takeObject interface{}, fn func() (interface{}, error)) error
SingleFlight .
type RepositoryPool ¶
type RepositoryPool struct {
// contains filtered or unexported fields
}
RepositoryPool .
type Result ¶ added in v1.4.2
type Result struct { Val interface{} Err error }
Result holds the results of Do, so they can be passed on a channel.
type Runtime ¶
type Runtime interface { Ctx() iris.Context Logger() Logger Store() *memstore.Store Prometheus() *Prometheus }
Runtime .
type ServicePool ¶
type ServicePool struct {
// contains filtered or unexported fields
}
ServicePool .
type SingleBoot ¶ added in v1.1.9
type SingleBoot interface { Iris() *iris.Application EventsPath(infra interface{}) map[string]string Closeing(func()) }
SingleBoot .
type Store ¶
type Store struct {
// contains filtered or unexported fields
}
func (*Store) SetOrStore ¶
SetOrStore .
type UnitTest ¶ added in v1.4.0
type UnitTest interface { GetService(service interface{}) GetRepository(repository interface{}) InstallGorm(f func() (db *gorm.DB)) InstallRedis(f func() (client redis.Cmdable)) Run() SetRequest(request *http.Request) MadeEntity(entity interface{}) InstallDomainEventInfra(eventInfra DomainEventInfra) NewDomainEventInfra(call ...func(producer, topic string, data []byte, header map[string]string)) DomainEventInfra }
type UnitTestImpl ¶ added in v1.4.1
type UnitTestImpl struct {
// contains filtered or unexported fields
}
func (*UnitTestImpl) GetRepository ¶ added in v1.4.1
func (u *UnitTestImpl) GetRepository(repository interface{})
func (*UnitTestImpl) GetService ¶ added in v1.4.1
func (u *UnitTestImpl) GetService(service interface{})
func (*UnitTestImpl) InstallDomainEventInfra ¶ added in v1.4.1
func (u *UnitTestImpl) InstallDomainEventInfra(eventInfra DomainEventInfra)
func (*UnitTestImpl) InstallGorm ¶ added in v1.4.1
func (u *UnitTestImpl) InstallGorm(f func() (db *gorm.DB))
func (*UnitTestImpl) InstallRedis ¶ added in v1.4.1
func (u *UnitTestImpl) InstallRedis(f func() (client redis.Cmdable))
func (*UnitTestImpl) MadeEntity ¶ added in v1.4.1
func (u *UnitTestImpl) MadeEntity(entity interface{})
func (*UnitTestImpl) NewDomainEventInfra ¶ added in v1.4.1
func (u *UnitTestImpl) NewDomainEventInfra(call ...func(producer, topic string, data []byte, header map[string]string)) DomainEventInfra
func (*UnitTestImpl) Run ¶ added in v1.4.1
func (u *UnitTestImpl) Run()
func (*UnitTestImpl) SetRequest ¶ added in v1.4.1
func (u *UnitTestImpl) SetRequest(request *http.Request)