本文整理汇总了Golang中github.com/facette/facette/pkg/worker.Worker.ReturnErr方法的典型用法代码示例。如果您正苦于以下问题:Golang Worker.ReturnErr方法的具体用法?Golang Worker.ReturnErr怎么用?Golang Worker.ReturnErr使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/facette/facette/pkg/worker.Worker
的用法示例。
在下文中一共展示了Worker.ReturnErr方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: workerServeShutdown
func workerServeShutdown(w *worker.Worker, args ...interface{}) {
logger.Log(logger.LevelDebug, "serveWorker", "shutdown")
w.SendJobSignal(jobSignalShutdown)
w.ReturnErr(nil)
}
示例2: workerServeRun
func workerServeRun(w *worker.Worker, args ...interface{}) {
var server = w.Props[0].(*Server)
defer w.Shutdown()
logger.Log(logger.LevelDebug, "serveWorker", "starting")
// Prepare router
router := NewRouter(server)
router.HandleFunc(urlStaticPath, server.serveStatic)
router.HandleFunc(urlCatalogPath, server.serveCatalog)
router.HandleFunc(urlLibraryPath, server.serveLibrary)
router.HandleFunc(urlAdminPath, server.serveAdmin)
router.HandleFunc(urlBrowsePath, server.serveBrowse)
router.HandleFunc(urlShowPath, server.serveShow)
router.HandleFunc(urlReloadPath, server.serveReload)
router.HandleFunc(urlStatsPath, server.serveStats)
router.HandleFunc("/", server.serveBrowse)
http.Handle("/", router)
// Start serving HTTP requests
listener, err := net.Listen("tcp", server.Config.BindAddr)
if err != nil {
w.ReturnErr(err)
return
}
logger.Log(logger.LevelInfo, "serveWorker", "listening on %s", server.Config.BindAddr)
go http.Serve(listener, nil)
for {
select {
case cmd := <-w.ReceiveJobSignals():
switch cmd {
case jobSignalShutdown:
logger.Log(logger.LevelInfo, "serveWorker", "received shutdown command, stopping job")
listener.Close()
logger.Log(logger.LevelInfo, "serveWorker", "server listener closed")
w.State = worker.JobStopped
return
default:
logger.Log(logger.LevelInfo, "serveWorker", "received unknown command, ignoring")
}
}
}
w.ReturnErr(nil)
}
示例3: workerServeInit
func workerServeInit(w *worker.Worker, args ...interface{}) {
var server = args[0].(*Server)
logger.Log(logger.LevelDebug, "serveWorker", "init")
// Worker properties:
// 0: server instance (*Server)
w.Props = append(w.Props, server)
w.ReturnErr(nil)
}
示例4: workerCatalogInit
func workerCatalogInit(w *worker.Worker, args ...interface{}) {
var catalog = args[0].(*catalog.Catalog)
logger.Log(logger.LevelDebug, "catalogWorker", "init")
// Worker properties:
// 0: catalog instance (*catalog.Catalog)
w.Props = append(w.Props, catalog)
w.ReturnErr(nil)
}
示例5: workerProviderInit
func workerProviderInit(w *worker.Worker, args ...interface{}) {
var (
prov = args[0].(*provider.Provider)
connectorType = args[1].(string)
)
logger.Log(logger.LevelDebug, "provider", "%s: init", prov.Name)
// Instanciate the connector according to its type
conn, err := connector.Connectors[connectorType](prov.Name, prov.Config.Connector)
if err != nil {
w.ReturnErr(err)
return
}
prov.Connector = conn.(connector.Connector)
// Worker properties:
// 0: provider instance (*provider.Provider)
w.Props = append(w.Props, prov)
w.ReturnErr(nil)
}
示例6: workerServeRun
func workerServeRun(w *worker.Worker, args ...interface{}) {
var server = w.Props[0].(*Server)
defer w.Shutdown()
logger.Log(logger.LevelDebug, "serveWorker", "starting")
// Prepare router
router := NewRouter(server)
router.HandleFunc(urlStaticPath, server.serveStatic)
router.HandleFunc(urlCatalogPath, server.serveCatalog)
router.HandleFunc(urlLibraryPath, server.serveLibrary)
router.HandleFunc(urlPlotsPath, server.servePlots)
router.HandleFunc(urlAdminPath, server.serveAdmin)
router.HandleFunc(urlBrowsePath, server.serveBrowse)
router.HandleFunc(urlShowPath, server.serveShow)
router.HandleFunc(urlStatsPath, server.serveStats)
router.HandleFunc("/", server.serveBrowse)
http.Handle("/", router)
// Start serving HTTP requests
netType := "tcp"
address := server.Config.BindAddr
for _, scheme := range [...]string{"tcp", "tcp4", "tcp6", "unix"} {
prefix := scheme + "://"
if strings.HasPrefix(address, prefix) {
netType = scheme
address = strings.TrimPrefix(address, prefix)
break
}
}
listener, err := net.Listen(netType, address)
if err != nil {
w.ReturnErr(err)
return
}
logger.Log(logger.LevelInfo, "serveWorker", "listening on %s", server.Config.BindAddr)
if netType == "unix" {
// Change owning user and group
if server.Config.SocketUser >= 0 || server.Config.SocketGroup >= 0 {
logger.Log(logger.LevelDebug, "serveWorker", "changing ownership of unix socket to UID %v and GID %v",
server.Config.SocketUser, server.Config.SocketGroup)
err = os.Chown(address, server.Config.SocketUser, server.Config.SocketGroup)
if err != nil {
listener.Close()
w.ReturnErr(err)
return
}
}
// Change mode
if server.Config.SocketMode != nil {
mode, err := strconv.ParseUint(*server.Config.SocketMode, 8, 32)
if err != nil {
logger.Log(logger.LevelError, "serveWorker", "socket_mode is invalid")
listener.Close()
w.ReturnErr(err)
return
}
logger.Log(logger.LevelDebug, "serveWorker", "changing file permissions mode of unix socket to %04o", mode)
err = os.Chmod(address, os.FileMode(mode))
if err != nil {
listener.Close()
w.ReturnErr(err)
return
}
}
}
go http.Serve(listener, nil)
for {
select {
case cmd := <-w.ReceiveJobSignals():
switch cmd {
case jobSignalShutdown:
logger.Log(logger.LevelInfo, "serveWorker", "received shutdown command, stopping job")
listener.Close()
logger.Log(logger.LevelInfo, "serveWorker", "server listener closed")
w.State = worker.JobStopped
return
default:
logger.Log(logger.LevelInfo, "serveWorker", "received unknown command, ignoring")
}
}
}
//.........这里部分代码省略.........