diff --git a/_examples/file-server/basic/main.go b/_examples/file-server/basic/main.go
index 6ce716e8c..2c19cfd3e 100644
--- a/_examples/file-server/basic/main.go
+++ b/_examples/file-server/basic/main.go
@@ -26,7 +26,7 @@ func newApp() *iris.Application {
// List the files inside the current requested directory if `IndexName` not found.
ShowList: false,
// If `ShowList` is true then this function will be used instead of the default one to show the list of files of a current requested directory(dir).
- // DirList: func(ctx context.Context, dirName string, dir http.File) error { ... }
+ // DirList: func(ctx iris.Context, dirName string, dir http.File) error { ... }
//
// Optional validator that loops through each requested resource.
// AssetValidator: func(ctx iris.Context, name string) bool { ... }
diff --git a/_examples/hero/smart-contract/main.go b/_examples/hero/smart-contract/main.go
index 7a29e5ad4..af321cece 100644
--- a/_examples/hero/smart-contract/main.go
+++ b/_examples/hero/smart-contract/main.go
@@ -147,7 +147,7 @@ func (h httpError) Error() string {
return fmt.Sprintf("Status Code: %d\nReason: %s", h.Code, h.Reason)
}
-func fail(ctx context.Context, statusCode int, format string, a ...interface{}) {
+func fail(ctx iris.Context, statusCode int, format string, a ...interface{}) {
err := httpError{
Code: statusCode,
Reason: fmt.Sprintf(format, a...),
diff --git a/_examples/http_request/extract-referer/main.go b/_examples/http_request/extract-referer/main.go
index 3e2436c56..bfe8e8d76 100644
--- a/_examples/http_request/extract-referer/main.go
+++ b/_examples/http_request/extract-referer/main.go
@@ -2,23 +2,22 @@ package main
import (
"github.com/kataras/iris"
- "github.com/kataras/iris/context"
)
func main() {
app := iris.New()
- app.Get("/", func(ctx context.Context) /* or iris.Context, it's the same for Go 1.9+. */ {
+ app.Get("/", func(ctx iris.Context) {
// GetReferrer extracts and returns the information from the "Referer" header as specified
// in https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy or by the URL query parameter "referer".
r := ctx.GetReferrer()
switch r.Type {
- case context.ReferrerSearch:
+ case iris.ReferrerSearch:
ctx.Writef("Search %s: %s\n", r.Label, r.Query)
ctx.Writef("Google: %s\n", r.GoogleType)
- case context.ReferrerSocial:
+ case iris.ReferrerSocial:
ctx.Writef("Social %s\n", r.Label)
- case context.ReferrerIndirect:
+ case iris.ReferrerIndirect:
ctx.Writef("Indirect: %s\n", r.URL)
}
})
diff --git a/_examples/http_responsewriter/sse/main.go b/_examples/http_responsewriter/sse/main.go
index b537524b2..761328f3e 100644
--- a/_examples/http_responsewriter/sse/main.go
+++ b/_examples/http_responsewriter/sse/main.go
@@ -10,10 +10,6 @@ import (
"github.com/kataras/golog"
"github.com/kataras/iris"
- // Note:
- // For some reason the latest vscode-go language extension does not provide enough intelligence (parameters documentation and go to definition features)
- // for the `iris.Context` alias, therefore if you use VS Code, import the original import path of the `Context`, that will do it:
- "github.com/kataras/iris/context"
)
// A Broker holds open client connections,
@@ -76,7 +72,7 @@ func (b *Broker) listen() {
}
}
-func (b *Broker) ServeHTTP(ctx context.Context) {
+func (b *Broker) ServeHTTP(ctx iris.Context) {
// Make sure that the writer supports flushing.
flusher, ok := ctx.ResponseWriter().Flusher()
@@ -172,7 +168,7 @@ func main() {
}()
app := iris.New()
- app.Get("/", func(ctx context.Context) {
+ app.Get("/", func(ctx iris.Context) {
ctx.HTML(
`
SSE` + script + `
diff --git a/_examples/http_responsewriter/transactions/main.go b/_examples/http_responsewriter/transactions/main.go
index ce8fcd9d9..006a39f9b 100644
--- a/_examples/http_responsewriter/transactions/main.go
+++ b/_examples/http_responsewriter/transactions/main.go
@@ -10,7 +10,7 @@ func main() {
// subdomains works with all available routers, like other features too.
- app.Get("/", func(ctx context.Context) {
+ app.Get("/", func(ctx iris.Context) {
ctx.BeginTransaction(func(t *context.Transaction) {
// OPTIONAl STEP: , if true then the next transictions will not be executed if this transiction fails
// t.SetScope(context.RequestTransactionScope)
diff --git a/_examples/mvc/login/web/viewmodels/README.md b/_examples/mvc/login/web/viewmodels/README.md
index a559f581e..0999932d9 100644
--- a/_examples/mvc/login/web/viewmodels/README.md
+++ b/_examples/mvc/login/web/viewmodels/README.md
@@ -8,6 +8,7 @@ Example:
import (
"github.com/kataras/iris/_examples/mvc/login/datamodels"
+ "github.com/kataras/iris"
"github.com/kataras/iris/context"
)
@@ -41,7 +42,7 @@ so theoretically, something like the following is permitted if it's really neces
// This is called where the return value from a controller's method functions
// is type of `User`.
// For example the `controllers/user_controller.go#GetBy`.
-func (m User) Dispatch(ctx context.Context) {
+func (m User) Dispatch(ctx iris.Context) {
if !m.IsValid() {
ctx.NotFound()
return
diff --git a/_examples/mvc/overview/web/viewmodels/README.md b/_examples/mvc/overview/web/viewmodels/README.md
index 22d4ad9d4..0afe13e24 100644
--- a/_examples/mvc/overview/web/viewmodels/README.md
+++ b/_examples/mvc/overview/web/viewmodels/README.md
@@ -8,6 +8,7 @@ Example:
import (
"github.com/kataras/iris/_examples/mvc/overview/datamodels"
+ "github.com/kataras/iris"
"github.com/kataras/iris/context"
)
@@ -41,7 +42,7 @@ so theoretically, something like the following is permitted if it's really neces
// This is called where the return value from a controller's method functions
// is type of `Movie`.
// For example the `controllers/movie_controller.go#GetBy`.
-func (m Movie) Dispatch(ctx context.Context) {
+func (m Movie) Dispatch(ctx iris.Context) {
if !m.IsValid() {
ctx.NotFound()
return
diff --git a/_examples/routing/README.md b/_examples/routing/README.md
index 225b0d3b3..704d77e28 100644
--- a/_examples/routing/README.md
+++ b/_examples/routing/README.md
@@ -663,7 +663,7 @@ func internalServerError(ctx iris.Context) {
ctx.WriteString("Oups something went wrong, try again")
}
-func index(ctx context.Context) {
+func index(ctx iris.Context) {
ctx.View("index.html")
}
```
@@ -1149,7 +1149,7 @@ type Context interface {
// to be executed. Next handlers are being executed on iris because you can alt the
// error code and change it to a more specific one, i.e
// users := app.Party("/users")
- // users.Done(func(ctx context.Context){ if ctx.StatusCode() == 400 { /* custom error code for /users */ }})
+ // users.Done(func(ctx iris.Context){ if ctx.StatusCode() == 400 { /* custom error code for /users */ }})
NotFound()
// +------------------------------------------------------------+
diff --git a/_examples/routing/custom-context/method-overriding/main.go b/_examples/routing/custom-context/method-overriding/main.go
index 15108123a..55ff7fdb2 100644
--- a/_examples/routing/custom-context/method-overriding/main.go
+++ b/_examples/routing/custom-context/method-overriding/main.go
@@ -15,10 +15,10 @@ import (
// Create your own custom Context, put any fields you wanna need.
type MyContext struct {
// Optional Part 1: embed (optional but required if you don't want to override all context's methods)
- context.Context // it's the context/context.go#context struct but you don't need to know it.
+ iris.Context
}
-var _ context.Context = &MyContext{} // optionally: validate on compile-time if MyContext implements context.Context.
+var _ iris.Context = &MyContext{} // optionally: validate on compile-time if MyContext implements context.Context.
// The only one important if you will override the Context
// with an embedded context.Context inside it.
@@ -51,7 +51,7 @@ func main() {
// The only one Required:
// here is how you define how your own context will
// be created and acquired from the iris' generic context pool.
- app.ContextPool.Attach(func() context.Context {
+ app.ContextPool.Attach(func() iris.Context {
return &MyContext{
// Optional Part 3:
Context: context.NewContext(app),
@@ -62,14 +62,14 @@ func main() {
app.RegisterView(iris.HTML("./view", ".html"))
// register your route, as you normally do
- app.Handle("GET", "/", recordWhichContextJustForProofOfConcept, func(ctx context.Context) {
+ app.Handle("GET", "/", recordWhichContextJustForProofOfConcept, func(ctx iris.Context) {
// use the context's overridden HTML method.
ctx.HTML(" Hello from my custom context's HTML!
")
})
// this will be executed by the MyContext.Context
// if MyContext is not directly define the View function by itself.
- app.Handle("GET", "/hi/{firstname:alphabetical}", recordWhichContextJustForProofOfConcept, func(ctx context.Context) {
+ app.Handle("GET", "/hi/{firstname:alphabetical}", recordWhichContextJustForProofOfConcept, func(ctx iris.Context) {
firstname := ctx.Values().GetString("firstname")
ctx.ViewData("firstname", firstname)
@@ -82,7 +82,7 @@ func main() {
}
// should always print "($PATH) Handler is executing from 'MyContext'"
-func recordWhichContextJustForProofOfConcept(ctx context.Context) {
+func recordWhichContextJustForProofOfConcept(ctx iris.Context) {
ctx.Application().Logger().Infof("(%s) Handler is executing from: '%s'", ctx.Path(), reflect.TypeOf(ctx).Elem().Name())
ctx.Next()
}
diff --git a/_examples/routing/custom-high-level-router/main.go b/_examples/routing/custom-high-level-router/main.go
index 77830024c..abdd88d48 100644
--- a/_examples/routing/custom-high-level-router/main.go
+++ b/_examples/routing/custom-high-level-router/main.go
@@ -4,17 +4,16 @@ import (
"strings"
"github.com/kataras/iris"
- "github.com/kataras/iris/context"
"github.com/kataras/iris/core/router"
)
/* A Router should contain all three of the following methods:
- HandleRequest should handle the request based on the Context.
- HandleRequest(ctx context.Context)
+ HandleRequest(ctx iris.Context)
- Build should builds the handler, it's being called on router's BuildRouter.
Build(provider router.RoutesProvider) error
- RouteExists reports whether a particular route exists.
- RouteExists(ctx context.Context, method, path string) bool
+ RouteExists(ctx iris.Context, method, path string) bool
For a more detailed, complete and useful example
you can take a look at the iris' router itself which is located at:
@@ -30,7 +29,7 @@ type customRouter struct {
// HandleRequest a silly example which finds routes based only on the first part of the requested path
// which must be a static one as well, the rest goes to fill the parameters.
-func (r *customRouter) HandleRequest(ctx context.Context) {
+func (r *customRouter) HandleRequest(ctx iris.Context) {
path := ctx.Path()
ctx.Application().Logger().Infof("Requested resource path: %s", path)
@@ -67,7 +66,7 @@ func (r *customRouter) Build(provider router.RoutesProvider) error {
return nil
}
-func (r *customRouter) RouteExists(ctx context.Context, method, path string) bool {
+func (r *customRouter) RouteExists(ctx iris.Context, method, path string) bool {
// [...]
return false
}
@@ -79,12 +78,12 @@ func main() {
// your custom router if you fetch by the Route's Handler
// because they are middlewares under the hood, so you don't have to implement the logic of handling them manually,
// though you have to match what requested path is what route and fill the ctx.Params(), this is the work of your custom router.
- app.Get("/hello/{name}", func(ctx context.Context) {
+ app.Get("/hello/{name}", func(ctx iris.Context) {
name := ctx.Params().Get("name")
ctx.Writef("Hello %s\n", name)
})
- app.Get("/cs/{num:uint64 min(10) else 400}", func(ctx context.Context) {
+ app.Get("/cs/{num:uint64 min(10) else 400}", func(ctx iris.Context) {
num := ctx.Params().GetUint64Default("num", 0)
ctx.Writef("num is: %d\n", num)
})
diff --git a/_examples/routing/macros/main.go b/_examples/routing/macros/main.go
index c19430014..278ad055e 100644
--- a/_examples/routing/macros/main.go
+++ b/_examples/routing/macros/main.go
@@ -42,7 +42,7 @@ func main() {
// The new value and its type(from string to your new custom type) it is stored only once now,
// you don't have to do any conversions for simple cases like this.
context.ParamResolvers[reflect.TypeOf([]string{})] = func(paramIndex int) interface{} {
- return func(ctx context.Context) []string {
+ return func(ctx iris.Context) []string {
// When you want to retrieve a parameter with a value type that it is not supported by-default, such as ctx.Params().GetInt
// then you can use the `GetEntry` or `GetEntryAt` and cast its underline `ValueRaw` to the desired type.
// The type should be the same as the macro's evaluator function (last argument on the Macros#Register) return value.
@@ -65,7 +65,7 @@ func main() {
http://localhost:8080/test_slice_contains/value1/value2 ->
myparam's value (a trailing path parameter type) is: []string{"value1", "value2"}
*/
- app.Get("/test_slice_contains/{myparam:slice contains([value1,value2])}", func(ctx context.Context) {
+ app.Get("/test_slice_contains/{myparam:slice contains([value1,value2])}", func(ctx iris.Context) {
// When it is not a builtin function available to retrieve your value with the type you want, such as ctx.Params().GetInt
// then you can use the `GetEntry.ValueRaw` to get the real value, which is set-ed by your macro above.
myparam := ctx.Params().GetEntry("myparam").ValueRaw.([]string)