func newImageHTTPHandler() http.Handler { var handler http.Handler handler = &imageserver_http.Handler{ Parser: imageserver_http.ListParser([]imageserver_http.Parser{ &imageserver_http.SourceTransformParser{ Parser: &imageserver_http.SourcePathParser{}, Transform: func(source string) string { return strings.TrimPrefix(source, "/") }, }, &imageserver_http_gift.Parser{}, &imageserver_http.FormatParser{}, &imageserver_http.QualityParser{}, &imageserver_http.GammaCorrectionParser{}, }), Server: newServer(), ETagFunc: imageserver_http.NewParamsHashETagFunc(sha256.New), ErrorFunc: func(err error, req *http.Request) { log.Printf("Internal error: %s", err) }, } if flagHTTPExpires != 0 { handler = &imageserver_http.ExpiresHandler{ Handler: handler, Expires: flagHTTPExpires, } } return handler }
func newImageHTTPHandler() http.Handler { var handler http.Handler handler = &imageserver_http.Handler{ Parser: imageserver_http.ListParser([]imageserver_http.Parser{ &imageserver_http.SourcePathParser{}, &imageserver_http_gift.Parser{}, &imageserver_http_image.FormatParser{}, &imageserver_http_image.QualityParser{}, &imageserver_http_gamma.CorrectionParser{}, }), Server: newServer(), ETagFunc: imageserver_http.NewParamsHashETagFunc(sha256.New), ErrorFunc: func(err error, req *http.Request) { log.Printf("Internal error: %s", err) }, } handler = &imageserver_http.ExpiresHandler{ Handler: handler, Expires: time.Duration(7 * 24 * time.Hour), } handler = &imageserver_http.CacheControlPublicHandler{ Handler: handler, } return handler }
func newImageHTTPHandler() http.Handler { return &imageserver_http.Handler{ Parser: imageserver_http.ListParser([]imageserver_http.Parser{ &imageserver_http.SourcePathParser{}, &imageserver_http_gift.ResizeParser{}, &imageserver_http_image.FormatParser{}, &imageserver_http_image.QualityParser{}, }), Server: newServer(), } }
func main() { http.Handle("/", &imageserver_http.Handler{ Parser: imageserver_http.ListParser([]imageserver_http.Parser{ &imageserver_http.SourceParser{}, &imageserver_http_gift.ResizeParser{}, &imageserver_http_image.FormatParser{}, &imageserver_http_image.QualityParser{}, }), Server: &imageserver.HandlerServer{ Server: imageserver_testdata.Server, Handler: &imageserver_image.Handler{ Processor: &imageserver_image_gift.ResizeProcessor{}, }, }, }) err := http.ListenAndServe(":8080", nil) if err != nil { panic(err) } }
func main() { server := imageserver_testdata.Server server = &imageserver_image.Server{ Server: server, Processor: &imageserver_image_nfntresize.Processor{}, } handler := &imageserver_http.Handler{ Parser: imageserver_http.ListParser([]imageserver_http.Parser{ &imageserver_http.SourceParser{}, &imageserver_http_nfntresize.Parser{}, &imageserver_http.FormatParser{}, &imageserver_http.QualityParser{}, }), Server: server, } http.Handle("/", handler) err := http.ListenAndServe(":8080", nil) if err != nil { panic(err) } }
func newImageHTTPHandler() http.Handler { var handler http.Handler handler = &imageserver_http.Handler{ Parser: imageserver_http.ListParser([]imageserver_http.Parser{ &imageserver_http.SourcePathParser{}, &imageserver_http_crop.Parser{}, &imageserver_http_gift.RotateParser{}, &imageserver_http_gift.ResizeParser{}, &imageserver_http_image.FormatParser{}, &imageserver_http_image.QualityParser{}, &imageserver_http_gamma.CorrectionParser{}, }), Server: newServer(), ETagFunc: imageserver_http.NewParamsHashETagFunc(sha256.New), } handler = &imageserver_http.ExpiresHandler{ Handler: handler, Expires: 7 * 24 * time.Hour, } handler = &imageserver_http.CacheControlPublicHandler{ Handler: handler, } return handler }