summaryrefslogtreecommitdiffstats
path: root/lib/modelfunctions.lua
diff options
context:
space:
mode:
authorttrask <ttrask@ab2d0c66-481e-0410-8bed-d214d4d58bed>2009-03-17 20:39:56 +0000
committerttrask <ttrask@ab2d0c66-481e-0410-8bed-d214d4d58bed>2009-03-17 20:39:56 +0000
commitc700c97cb992cdc3eb62d93a52e1bf56ed5ea585 (patch)
treefb6446b8fbe31833808ab1319d845b0614047fee /lib/modelfunctions.lua
parent5dc15abba740eae84b4202a6a7319cad163fe87c (diff)
downloadacf-core-c700c97cb992cdc3eb62d93a52e1bf56ed5ea585.tar.bz2
acf-core-c700c97cb992cdc3eb62d93a52e1bf56ed5ea585.tar.xz
Changed the way startstop works in core to add a list of allowed actions. Modified all ACFs that don't use the standard functions to work with new library method.
git-svn-id: svn://svn.alpinelinux.org/acf/core/trunk@1730 ab2d0c66-481e-0410-8bed-d214d4d58bed
Diffstat (limited to 'lib/modelfunctions.lua')
-rw-r--r--lib/modelfunctions.lua13
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/modelfunctions.lua b/lib/modelfunctions.lua
index 076d1bb..d7be73d 100644
--- a/lib/modelfunctions.lua
+++ b/lib/modelfunctions.lua
@@ -16,10 +16,15 @@ function getenabled(processname)
return result
end
-function startstop_service(servicename, action)
- -- action is validated in daemoncontrol
- local cmdmessage,cmderror = processinfo.daemoncontrol(servicename, action)
- return cfe({ value=cmdmessage or "", errtxt=cmderror, label="Start/Stop result" })
+function startstop_service(servicename, action, actions)
+ -- action is validated against actions in daemoncontrol
+ local result = {}
+ result.actions = cfe({ type="list", value=actions or {"start", "stop", "restart"}, label="Start/Stop actions" })
+ if action then
+ local cmdmessage,cmderror = processinfo.daemoncontrol(servicename, action, result.actions.value)
+ result.result = cfe({ value=cmdmessage or "", errtxt=cmderror, label="Start/Stop result" })
+ end
+ return cfe({ type="group", value=result, label="Start/Stop result" })
end
function getstatus(processname, packagename, label, servicename)