func NewTimeLimitTaskCmd(taskName string, hardLimit string, softLimit string) *TimeLimitTaskCmd {
	return &TimeLimitTaskCmd{
		baseCmd: baseCmd{
			Command:     "time_limit",
			Destination: "",
		},
		Arguments: timeLimitTaskArgs{
			TaskName:  taskName,
			HardLimit: hardLimit,
			SoftLimit: softLimit,
		},
	}
}
/*
NewTimeLimitTaskCmd creates a new command for rate limiting a task

taskName: Name of task to change rate limit for
hardLimit: New hard time limit (in seconds)
softLimit: New soft time limit (in seconds)
package celeriac
import ()
type baseCmd struct {
	Command     string `json:"method"`
	Destination string `json:"destination"`
}
type revokeTaskArgs struct {
	TaskID    string `json:"task_id"`
	Terminate bool   `json:"terminate"`
	Signal    string `josn:"signal"`
}
type RevokeTaskCmd struct {
	baseCmd
	Arguments revokeTaskArgs `json:"arguments"`
}
func NewRevokeTaskCmd(taskID string, terminateProcess bool) *RevokeTaskCmd {
	return &RevokeTaskCmd{
		baseCmd: baseCmd{
			Command:     "revoke",
			Destination: "",
		},
		Arguments: revokeTaskArgs{
			TaskID:    taskID,
			Terminate: terminateProcess,
			Signal:    "SIGTERM",
		},
	}
}
type PingCmd struct {
	baseCmd
}
func NewPingCmd() *PingCmd {
	return &PingCmd{
		baseCmd: baseCmd{
			Command:     "ping",
			Destination: "",
		},
	}
}
type rateLimitTaskArgs struct {
	TaskName  string `json:"task_name"`
	RateLimit string `json:"rate_limit"`
}
type RateLimitTaskCmd struct {
	baseCmd
	Arguments rateLimitTaskArgs `json:"arguments"`
}
func NewRateLimitTaskCmd(taskName string, rateLimit string) *RateLimitTaskCmd {
	return &RateLimitTaskCmd{
		baseCmd: baseCmd{
			Command:     "rate_limit",
			Destination: "",
		},
		Arguments: rateLimitTaskArgs{
			TaskName:  taskName,
			RateLimit: rateLimit,
		},
	}
}
type timeLimitTaskArgs struct {
	TaskName  string `json:"task_name"`
	HardLimit string `json:"hard"`
	SoftLimit string `json:"soft"`
}
type TimeLimitTaskCmd struct {
	baseCmd
	Arguments timeLimitTaskArgs `json:"arguments"`
}