Documentation ¶
Directories ¶
Path | Synopsis |
---|---|
used to keep compatible with v1.x
|
used to keep compatible with v1.x |
cache
Package cache provide a Cache interface and some implement engine Usage: import( "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memory", `{"interval":60}`) Use it like this: bm.Put("astaxie", 1, 10 * time.Second) bm.Get("astaxie") bm.IsExist("astaxie") bm.Delete("astaxie") more docs http://radiant.me/docs/module/cache.md
|
Package cache provide a Cache interface and some implement engine Usage: import( "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memory", `{"interval":60}`) Use it like this: bm.Put("astaxie", 1, 10 * time.Second) bm.Get("astaxie") bm.IsExist("astaxie") bm.Delete("astaxie") more docs http://radiant.me/docs/module/cache.md |
cache/memcache
Package memcache for cache provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/memcache" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memcache", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md
|
Package memcache for cache provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/memcache" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memcache", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md |
cache/redis
Package redis for cache provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/redis" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("redis", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md
|
Package redis for cache provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/redis" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("redis", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md |
config
Package config is used to parse config.
|
Package config is used to parse config. |
config/env
Package env is used to parse environment.
|
Package env is used to parse environment. |
config/xml
Package xml for config provider.
|
Package xml for config provider. |
config/yaml
Package yaml for config provider depend on github.com/radiant/goyaml2 go install github.com/radiant/goyaml2 Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/core/config/yaml" "github.com/W3-Engineers-Ltd/Radiant/core/config" ) cnf, err := config.NewConfig("yaml", "config.yaml") More docs http://radiant.me/docs/module/config.md
|
Package yaml for config provider depend on github.com/radiant/goyaml2 go install github.com/radiant/goyaml2 Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/core/config/yaml" "github.com/W3-Engineers-Ltd/Radiant/core/config" ) cnf, err := config.NewConfig("yaml", "config.yaml") More docs http://radiant.me/docs/module/config.md |
context
Package context provide the context utils Usage: import "github.com/W3-Engineers-Ltd/Radiant/server/web/context" ctx := context.Context{Request:req,ResponseWriter:rw} more docs http://radiant.me/docs/module/context.md
|
Package context provide the context utils Usage: import "github.com/W3-Engineers-Ltd/Radiant/server/web/context" ctx := context.Context{Request:req,ResponseWriter:rw} more docs http://radiant.me/docs/module/context.md |
grace
Package grace use to hot reload Description: http://grisha.org/blog/2014/06/03/graceful-restart-in-golang/ Usage: import( "log" "net/http" "os" "github.com/W3-Engineers-Ltd/Radiant/server/web/grace" ) func handler(w http.ResponseWriter, r *http.Request) { w.Write([]byte("WORLD!")) } func main() { mux := http.NewServeMux() mux.HandleFunc("/hello", handler) err := grace.ListenAndServe("localhost:8080", mux) if err != nil { log.Println(err) } log.Println("Server on 8080 stopped") os.Exit(0) }
|
Package grace use to hot reload Description: http://grisha.org/blog/2014/06/03/graceful-restart-in-golang/ Usage: import( "log" "net/http" "os" "github.com/W3-Engineers-Ltd/Radiant/server/web/grace" ) func handler(w http.ResponseWriter, r *http.Request) { w.Write([]byte("WORLD!")) } func main() { mux := http.NewServeMux() mux.HandleFunc("/hello", handler) err := grace.ListenAndServe("localhost:8080", mux) if err != nil { log.Println(err) } log.Println("Server on 8080 stopped") os.Exit(0) } |
httplib
Package httplib is used as http.Client Usage: import "github.com/W3-Engineers-Ltd/Radiant/client/httplib" b := httplib.Post("http://radiant.me/") b.Param("username","astaxie") b.Param("password","123456") b.PostFile("uploadfile1", "httplib.pdf") b.PostFile("uploadfile2", "httplib.txt") str, err := b.String() if err != nil { t.Fatal(err) } fmt.Println(str) more docs http://radiant.me/docs/module/httplib.md
|
Package httplib is used as http.Client Usage: import "github.com/W3-Engineers-Ltd/Radiant/client/httplib" b := httplib.Post("http://radiant.me/") b.Param("username","astaxie") b.Param("password","123456") b.PostFile("uploadfile1", "httplib.pdf") b.PostFile("uploadfile2", "httplib.txt") str, err := b.String() if err != nil { t.Fatal(err) } fmt.Println(str) more docs http://radiant.me/docs/module/httplib.md |
logs
Package logs provide a general log interface Usage: import "github.com/W3-Engineers-Ltd/Radiant/core/logs" log := NewLogger(10000) log.SetLogger("console", "") > the first params stand for how many channel Use it like this: log.Trace("trace") log.Info("info") log.Warn("warning") log.Debug("debug") log.Critical("critical") more docs http://radiant.me/docs/module/logs.md
|
Package logs provide a general log interface Usage: import "github.com/W3-Engineers-Ltd/Radiant/core/logs" log := NewLogger(10000) log.SetLogger("console", "") > the first params stand for how many channel Use it like this: log.Trace("trace") log.Info("info") log.Warn("warning") log.Debug("debug") log.Critical("critical") more docs http://radiant.me/docs/module/logs.md |
migration
Package migration enables you to generate migrations back and forth.
|
Package migration enables you to generate migrations back and forth. |
orm
Package orm provide ORM for MySQL/PostgreSQL/sqlite Simple Usage package main import ( "fmt" "github.com/W3-Engineers-Ltd/Radiant/client/orm" _ "github.com/go-sql-driver/mysql" // import your used driver ) // Model Struct type User struct { Id int `orm:"auto"` Name string `orm:"size(100)"` } func init() { orm.RegisterDataBase("default", "mysql", "root:root@/my_db?charset=utf8", 30) } func main() { o := orm.NewOrm() user := User{Name: "slene"} // insert id, err := o.Insert(&user) // update user.Name = "astaxie" num, err := o.Update(&user) // read one u := User{Id: user.Id} err = o.Read(&u) // delete num, err = o.Delete(&u) } more docs: http://radiant.me/docs/mvc/model/overview.md
|
Package orm provide ORM for MySQL/PostgreSQL/sqlite Simple Usage package main import ( "fmt" "github.com/W3-Engineers-Ltd/Radiant/client/orm" _ "github.com/go-sql-driver/mysql" // import your used driver ) // Model Struct type User struct { Id int `orm:"auto"` Name string `orm:"size(100)"` } func init() { orm.RegisterDataBase("default", "mysql", "root:root@/my_db?charset=utf8", 30) } func main() { o := orm.NewOrm() user := User{Name: "slene"} // insert id, err := o.Insert(&user) // update user.Name = "astaxie" num, err := o.Update(&user) // read one u := User{Id: user.Id} err = o.Read(&u) // delete num, err = o.Delete(&u) } more docs: http://radiant.me/docs/mvc/model/overview.md |
plugins/apiauth
Package apiauth provides handlers to enable apiauth support.
|
Package apiauth provides handlers to enable apiauth support. |
plugins/auth
Package auth provides handlers to enable basic auth support.
|
Package auth provides handlers to enable basic auth support. |
plugins/authz
Package authz provides handlers to enable ACL, RBAC, ABAC authorization support.
|
Package authz provides handlers to enable ACL, RBAC, ABAC authorization support. |
plugins/cors
Package cors provides handlers to enable CORS support.
|
Package cors provides handlers to enable CORS support. |
session
Package session provider Usage: import( "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memory", `{"cookieName":"gosessionid", "enableSetCookie,omitempty": true, "gclifetime":3600, "maxLifetime": 3600, "secure": false, "cookieLifeTime": 3600, "providerConfig": ""}`) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package session provider Usage: import( "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memory", `{"cookieName":"gosessionid", "enableSetCookie,omitempty": true, "gclifetime":3600, "maxLifetime": 3600, "secure": false, "cookieLifeTime": 3600, "providerConfig": ""}`) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/couchbase
Package couchbase for session provider depend on github.com/couchbaselabs/go-couchbasee go install github.com/couchbaselabs/go-couchbase Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/couchbase" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("couchbase", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"http://host:port/, Pool, Bucket"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package couchbase for session provider depend on github.com/couchbaselabs/go-couchbasee go install github.com/couchbaselabs/go-couchbase Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/couchbase" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("couchbase", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"http://host:port/, Pool, Bucket"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/ledis
Package ledis provide session Provider
|
Package ledis provide session Provider |
session/memcache
Package memcache for session provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/memcache" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memcache", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:11211"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package memcache for session provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/memcache" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memcache", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:11211"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/mysql
Package mysql for session provider depends on github.com/go-sql-driver/mysql: go install github.com/go-sql-driver/mysql mysql session support need create table as sql: CREATE TABLE `session` ( `session_key` char(64) NOT NULL, `session_data` blob, `session_expiry` int(11) unsigned NOT NULL, PRIMARY KEY (`session_key`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/mysql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("mysql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"[username[:password]@][protocol[(address)]]/dbname[?param1=value1&...¶mN=valueN]"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package mysql for session provider depends on github.com/go-sql-driver/mysql: go install github.com/go-sql-driver/mysql mysql session support need create table as sql: CREATE TABLE `session` ( `session_key` char(64) NOT NULL, `session_data` blob, `session_expiry` int(11) unsigned NOT NULL, PRIMARY KEY (`session_key`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/mysql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("mysql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"[username[:password]@][protocol[(address)]]/dbname[?param1=value1&...¶mN=valueN]"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/postgres
Package postgres for session provider depends on github.com/lib/pq: go install github.com/lib/pq needs this table in your database: CREATE TABLE session ( session_key char(64) NOT NULL, session_data bytea, session_expiry timestamp NOT NULL, CONSTRAINT session_key PRIMARY KEY(session_key) ); will be activated with these settings in app.conf: SessionOn = true SessionProvider = postgresql SessionSavePath = "user=a password=b dbname=c sslmode=disable" SessionName = session Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/postgresql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("postgresql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"user=pqgotest dbname=pqgotest sslmode=verify-full"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package postgres for session provider depends on github.com/lib/pq: go install github.com/lib/pq needs this table in your database: CREATE TABLE session ( session_key char(64) NOT NULL, session_data bytea, session_expiry timestamp NOT NULL, CONSTRAINT session_key PRIMARY KEY(session_key) ); will be activated with these settings in app.conf: SessionOn = true SessionProvider = postgresql SessionSavePath = "user=a password=b dbname=c sslmode=disable" SessionName = session Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/postgresql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("postgresql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"user=pqgotest dbname=pqgotest sslmode=verify-full"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/redis
Package redis for session provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package redis for session provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/redis_cluster
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_cluster" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_cluster", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070;127.0.0.1:7071"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_cluster" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_cluster", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070;127.0.0.1:7071"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
session/redis_sentinel
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_sentinel" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_sentinel", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:26379;127.0.0.2:26379"}“) go globalSessions.GC() } more detail about params: please check the notes on the function SessionInit in this package
|
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_sentinel" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_sentinel", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:26379;127.0.0.2:26379"}“) go globalSessions.GC() } more detail about params: please check the notes on the function SessionInit in this package |
swagger
Package swagger struct definition
|
Package swagger struct definition |
toolbox
Package toolbox healthcheck type DatabaseCheck struct { } func (dc *DatabaseCheck) Check() error { if dc.isConnected() { return nil } else { return errors.New("can't connect database") } } AddHealthCheck("database",&DatabaseCheck{}) more docs: http://radiant.me/docs/module/toolbox.md
|
Package toolbox healthcheck type DatabaseCheck struct { } func (dc *DatabaseCheck) Check() error { if dc.isConnected() { return nil } else { return errors.New("can't connect database") } } AddHealthCheck("database",&DatabaseCheck{}) more docs: http://radiant.me/docs/module/toolbox.md |
utils/captcha
Package captcha implements generation and verification of image CAPTCHAs.
|
Package captcha implements generation and verification of image CAPTCHAs. |
utils/pagination
Package pagination provides utilities to setup a paginator within the context of a http request.
|
Package pagination provides utilities to setup a paginator within the context of a http request. |
validation
Package validation for validations import ( "github.com/W3-Engineers-Ltd/Radiant/core/validation" "log" ) type User struct { Name string Age int } func main() { u := User{"man", 40} valid := validation.Validation{} valid.Required(u.Name, "name") valid.MaxSize(u.Name, 15, "nameMax") valid.Range(u.Age, 0, 140, "age") if valid.HasErrors() { // validation does not pass // print invalid message for _, err := range valid.Errors { log.Println(err.Key, err.Message) } } // or use like this if v := valid.Max(u.Age, 140, "ageMax"); !v.Ok { log.Println(v.Error.Key, v.Error.Message) } } more info: http://radiant.me/docs/mvc/controller/validation.md
|
Package validation for validations import ( "github.com/W3-Engineers-Ltd/Radiant/core/validation" "log" ) type User struct { Name string Age int } func main() { u := User{"man", 40} valid := validation.Validation{} valid.Required(u.Name, "name") valid.MaxSize(u.Name, 15, "nameMax") valid.Range(u.Age, 0, 140, "age") if valid.HasErrors() { // validation does not pass // print invalid message for _, err := range valid.Errors { log.Println(err.Key, err.Message) } } // or use like this if v := valid.Max(u.Age, 140, "ageMax"); !v.Ok { log.Println(v.Error.Key, v.Error.Message) } } more info: http://radiant.me/docs/mvc/controller/validation.md |
client
|
|
cache
Package cache provide a Cache interface and some implement engine Usage: import( "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memory", `{"interval":60}`) Use it like this: bm.Put("astaxie", 1, 10 * time.Second) bm.Get("astaxie") bm.IsExist("astaxie") bm.Delete("astaxie") more docs http://radiant.me/docs/module/cache.md
|
Package cache provide a Cache interface and some implement engine Usage: import( "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memory", `{"interval":60}`) Use it like this: bm.Put("astaxie", 1, 10 * time.Second) bm.Get("astaxie") bm.IsExist("astaxie") bm.Delete("astaxie") more docs http://radiant.me/docs/module/cache.md |
cache/memcache
Package memcache for cache provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/memcache" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memcache", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md
|
Package memcache for cache provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/memcache" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("memcache", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md |
cache/redis
Package redis for cache provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/redis" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("redis", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md
|
Package redis for cache provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/client/cache/redis" "github.com/W3-Engineers-Ltd/Radiant/client/cache" ) bm, err := cache.NewCache("redis", `{"conn":"127.0.0.1:11211"}`) more docs http://radiant.me/docs/module/cache.md |
httplib
Package httplib is used as http.Client Usage: import "github.com/W3-Engineers-Ltd/Radiant/client/httplib" b := httplib.Post("http://radiant.me/") b.Param("username","astaxie") b.Param("password","123456") b.PostFile("uploadfile1", "httplib.pdf") b.PostFile("uploadfile2", "httplib.txt") str, err := b.String() if err != nil { t.Fatal(err) } fmt.Println(str) more docs http://radiant.me/docs/module/httplib.md
|
Package httplib is used as http.Client Usage: import "github.com/W3-Engineers-Ltd/Radiant/client/httplib" b := httplib.Post("http://radiant.me/") b.Param("username","astaxie") b.Param("password","123456") b.PostFile("uploadfile1", "httplib.pdf") b.PostFile("uploadfile2", "httplib.txt") str, err := b.String() if err != nil { t.Fatal(err) } fmt.Println(str) more docs http://radiant.me/docs/module/httplib.md |
orm
Package orm provide ORM for MySQL/PostgreSQL/sqlite Simple Usage package main import ( "fmt" "github.com/W3-Engineers-Ltd/Radiant/client/orm" _ "github.com/go-sql-driver/mysql" // import your used driver ) // Model Struct type User struct { Id int `orm:"auto"` Name string `orm:"size(100)"` } func init() { orm.RegisterDataBase("default", "mysql", "root:root@/my_db?charset=utf8", 30) } func main() { o := orm.NewOrm() user := User{Name: "slene"} // insert id, err := o.Insert(&user) // update user.Name = "astaxie" num, err := o.Update(&user) // read one u := User{Id: user.Id} err = o.Read(&u) // delete num, err = o.Delete(&u) } more docs: http://radiant.me/docs/mvc/model/overview.md
|
Package orm provide ORM for MySQL/PostgreSQL/sqlite Simple Usage package main import ( "fmt" "github.com/W3-Engineers-Ltd/Radiant/client/orm" _ "github.com/go-sql-driver/mysql" // import your used driver ) // Model Struct type User struct { Id int `orm:"auto"` Name string `orm:"size(100)"` } func init() { orm.RegisterDataBase("default", "mysql", "root:root@/my_db?charset=utf8", 30) } func main() { o := orm.NewOrm() user := User{Name: "slene"} // insert id, err := o.Insert(&user) // update user.Name = "astaxie" num, err := o.Update(&user) // read one u := User{Id: user.Id} err = o.Read(&u) // delete num, err = o.Delete(&u) } more docs: http://radiant.me/docs/mvc/model/overview.md |
orm/migration
Package migration enables you to generate migrations back and forth.
|
Package migration enables you to generate migrations back and forth. |
core
|
|
admin
Package admin healthcheck type DatabaseCheck struct { } func (dc *DatabaseCheck) Check() error { if dc.isConnected() { return nil } else { return errors.New("can't connect database") } } AddHealthCheck("database",&DatabaseCheck{}) more docs: http://radiant.me/docs/module/toolbox.md
|
Package admin healthcheck type DatabaseCheck struct { } func (dc *DatabaseCheck) Check() error { if dc.isConnected() { return nil } else { return errors.New("can't connect database") } } AddHealthCheck("database",&DatabaseCheck{}) more docs: http://radiant.me/docs/module/toolbox.md |
bean
bean is a basic package it should not depend on other modules except common module, log module and config module
|
bean is a basic package it should not depend on other modules except common module, log module and config module |
config
Package config is used to parse config.
|
Package config is used to parse config. |
config/env
Package env is used to parse environment.
|
Package env is used to parse environment. |
config/xml
Package xml for config provider.
|
Package xml for config provider. |
config/yaml
Package yaml for config provider Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/core/config/yaml" "github.com/W3-Engineers-Ltd/Radiant/core/config" ) cnf, err := config.NewConfig("yaml", "config.yaml") More docs http://radiant.me/docs/module/config.md
|
Package yaml for config provider Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/core/config/yaml" "github.com/W3-Engineers-Ltd/Radiant/core/config" ) cnf, err := config.NewConfig("yaml", "config.yaml") More docs http://radiant.me/docs/module/config.md |
logs
Package logs provide a general log interface Usage: import "github.com/W3-Engineers-Ltd/Radiant/core/logs" log := NewLogger(10000) log.SetLogger("console", "") > the first params stand for how many channel Use it like this: log.Trace("trace") log.Info("info") log.Warn("warning") log.Debug("debug") log.Critical("critical") more docs http://radiant.me/docs/module/logs.md
|
Package logs provide a general log interface Usage: import "github.com/W3-Engineers-Ltd/Radiant/core/logs" log := NewLogger(10000) log.SetLogger("console", "") > the first params stand for how many channel Use it like this: log.Trace("trace") log.Info("info") log.Warn("warning") log.Debug("debug") log.Critical("critical") more docs http://radiant.me/docs/module/logs.md |
logs/alils
Package alils implements the SDK(v0.5.0) of Simple Log Service(abbr.
|
Package alils implements the SDK(v0.5.0) of Simple Log Service(abbr. |
utils/pagination
Package pagination provides utilities to setup a paginator within the context of a http request.
|
Package pagination provides utilities to setup a paginator within the context of a http request. |
validation
Package validation for validations import ( "github.com/W3-Engineers-Ltd/Radiant/core/validation" "log" ) type User struct { Name string Age int } func main() { u := User{"man", 40} valid := validation.Validation{} valid.Required(u.Name, "name") valid.MaxSize(u.Name, 15, "nameMax") valid.Range(u.Age, 0, 140, "age") if valid.HasErrors() { // validation does not pass // print invalid message for _, err := range valid.Errors { log.Println(err.Key, err.Message) } } // or use like this if v := valid.Max(u.Age, 140, "ageMax"); !v.Ok { log.Println(v.Error.Key, v.Error.Message) } } more info: http://radiant.me/docs/mvc/controller/validation.md
|
Package validation for validations import ( "github.com/W3-Engineers-Ltd/Radiant/core/validation" "log" ) type User struct { Name string Age int } func main() { u := User{"man", 40} valid := validation.Validation{} valid.Required(u.Name, "name") valid.MaxSize(u.Name, 15, "nameMax") valid.Range(u.Age, 0, 140, "age") if valid.HasErrors() { // validation does not pass // print invalid message for _, err := range valid.Errors { log.Println(err.Key, err.Message) } } // or use like this if v := valid.Max(u.Age, 140, "ageMax"); !v.Ok { log.Println(v.Error.Key, v.Error.Message) } } more info: http://radiant.me/docs/mvc/controller/validation.md |
server
|
|
web
Package radiant provide a MVC framework radiant: an open-source, high-performance, modular, full-stack web framework It is used for rapid development of RESTful APIs, web apps and backend services in Go.
|
Package radiant provide a MVC framework radiant: an open-source, high-performance, modular, full-stack web framework It is used for rapid development of RESTful APIs, web apps and backend services in Go. |
web/captcha
Package captcha implements generation and verification of image CAPTCHAs.
|
Package captcha implements generation and verification of image CAPTCHAs. |
web/context
Package context provide the context utils Usage: import "github.com/W3-Engineers-Ltd/Radiant/server/web/context" ctx := context.Context{Request:req,ResponseWriter:rw} more docs http://radiant.me/docs/module/context.md
|
Package context provide the context utils Usage: import "github.com/W3-Engineers-Ltd/Radiant/server/web/context" ctx := context.Context{Request:req,ResponseWriter:rw} more docs http://radiant.me/docs/module/context.md |
web/filter/apiauth
Package apiauth provides handlers to enable apiauth support.
|
Package apiauth provides handlers to enable apiauth support. |
web/filter/auth
Package auth provides handlers to enable basic auth support.
|
Package auth provides handlers to enable basic auth support. |
web/filter/authz
Package authz provides handlers to enable ACL, RBAC, ABAC authorization support.
|
Package authz provides handlers to enable ACL, RBAC, ABAC authorization support. |
web/filter/cors
Package cors provides handlers to enable CORS support.
|
Package cors provides handlers to enable CORS support. |
web/grace
Package grace use to hot reload Description: http://grisha.org/blog/2014/06/03/graceful-restart-in-golang/ Usage: import( "log" "net/http" "os" "github.com/W3-Engineers-Ltd/Radiant/server/web/grace" ) func handler(w http.ResponseWriter, r *http.Request) { w.Write([]byte("WORLD!")) } func main() { mux := http.NewServeMux() mux.HandleFunc("/hello", handler) err := grace.ListenAndServe("localhost:8080", mux) if err != nil { log.Println(err) } log.Println("Server on 8080 stopped") os.Exit(0) }
|
Package grace use to hot reload Description: http://grisha.org/blog/2014/06/03/graceful-restart-in-golang/ Usage: import( "log" "net/http" "os" "github.com/W3-Engineers-Ltd/Radiant/server/web/grace" ) func handler(w http.ResponseWriter, r *http.Request) { w.Write([]byte("WORLD!")) } func main() { mux := http.NewServeMux() mux.HandleFunc("/hello", handler) err := grace.ListenAndServe("localhost:8080", mux) if err != nil { log.Println(err) } log.Println("Server on 8080 stopped") os.Exit(0) } |
web/session
Package session provider Usage: import( "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memory", `{"cookieName":"gosessionid", "enableSetCookie,omitempty": true, "gclifetime":3600, "maxLifetime": 3600, "secure": false, "cookieLifeTime": 3600, "providerConfig": ""}`) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package session provider Usage: import( "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memory", `{"cookieName":"gosessionid", "enableSetCookie,omitempty": true, "gclifetime":3600, "maxLifetime": 3600, "secure": false, "cookieLifeTime": 3600, "providerConfig": ""}`) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/couchbase
Package couchbase for session provider depend on github.com/couchbaselabs/go-couchbasee go install github.com/couchbaselabs/go-couchbase Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/couchbase" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("couchbase", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"http://host:port/, Pool, Bucket"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package couchbase for session provider depend on github.com/couchbaselabs/go-couchbasee go install github.com/couchbaselabs/go-couchbase Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/couchbase" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("couchbase", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"http://host:port/, Pool, Bucket"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/ledis
Package ledis provide session Provider
|
Package ledis provide session Provider |
web/session/memcache
Package memcache for session provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/memcache" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memcache", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:11211"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package memcache for session provider depend on github.com/bradfitz/gomemcache/memcache go install github.com/bradfitz/gomemcache/memcache Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/memcache" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("memcache", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:11211"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/mysql
Package mysql for session provider depends on github.com/go-sql-driver/mysql: go install github.com/go-sql-driver/mysql mysql session support need create table as sql: CREATE TABLE `session` ( `session_key` char(64) NOT NULL, `session_data` blob, `session_expiry` int(11) unsigned NOT NULL, PRIMARY KEY (`session_key`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/mysql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("mysql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"[username[:password]@][protocol[(address)]]/dbname[?param1=value1&...¶mN=valueN]"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package mysql for session provider depends on github.com/go-sql-driver/mysql: go install github.com/go-sql-driver/mysql mysql session support need create table as sql: CREATE TABLE `session` ( `session_key` char(64) NOT NULL, `session_data` blob, `session_expiry` int(11) unsigned NOT NULL, PRIMARY KEY (`session_key`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/mysql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("mysql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"[username[:password]@][protocol[(address)]]/dbname[?param1=value1&...¶mN=valueN]"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/postgres
Package postgres for session provider depends on github.com/lib/pq: go install github.com/lib/pq needs this table in your database: CREATE TABLE session ( session_key char(64) NOT NULL, session_data bytea, session_expiry timestamp NOT NULL, CONSTRAINT session_key PRIMARY KEY(session_key) ); will be activated with these settings in app.conf: SessionOn = true SessionProvider = postgresql SessionSavePath = "user=a password=b dbname=c sslmode=disable" SessionName = session Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/postgresql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("postgresql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"user=pqgotest dbname=pqgotest sslmode=verify-full"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package postgres for session provider depends on github.com/lib/pq: go install github.com/lib/pq needs this table in your database: CREATE TABLE session ( session_key char(64) NOT NULL, session_data bytea, session_expiry timestamp NOT NULL, CONSTRAINT session_key PRIMARY KEY(session_key) ); will be activated with these settings in app.conf: SessionOn = true SessionProvider = postgresql SessionSavePath = "user=a password=b dbname=c sslmode=disable" SessionName = session Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/postgresql" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("postgresql", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"user=pqgotest dbname=pqgotest sslmode=verify-full"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/redis
Package redis for session provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package redis for session provider depend on github.com/gomodule/redigo/redis go install github.com/gomodule/redigo/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/redis_cluster
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_cluster" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_cluster", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070;127.0.0.1:7071"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md
|
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_cluster" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_cluster", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:7070;127.0.0.1:7071"}“) go globalSessions.GC() } more docs: http://radiant.me/docs/module/session.md |
web/session/redis_sentinel
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_sentinel" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_sentinel", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:26379;127.0.0.2:26379"}“) go globalSessions.GC() } more detail about params: please check the notes on the function SessionInit in this package
|
Package redis for session provider depend on github.com/go-redis/redis go install github.com/go-redis/redis Usage: import( _ "github.com/W3-Engineers-Ltd/Radiant/server/web/session/redis_sentinel" "github.com/W3-Engineers-Ltd/Radiant/server/web/session" ) func init() { globalSessions, _ = session.NewManager("redis_sentinel", “{"cookieName":"gosessionid","gclifetime":3600,"ProviderConfig":"127.0.0.1:26379;127.0.0.2:26379"}“) go globalSessions.GC() } more detail about params: please check the notes on the function SessionInit in this package |
web/swagger
Package swagger struct definition
|
Package swagger struct definition |
Click to show internal directories.
Click to hide internal directories.