# File lib/puppet/provider/service/launchd.rb, line 158
158:   def start
159:     job_path, job_plist = plist_from_label(resource[:name])
160:     did_enable_job = false
161:     cmds = []
162:     cmds << :launchctl << :load
163:     if self.enabled? == :false  # launchctl won't load disabled jobs
164:       cmds << "-w"
165:       did_enable_job = true
166:     end
167:     cmds << job_path
168:     begin
169:       execute(cmds)
170:     rescue Puppet::ExecutionFailure
171:       raise Puppet::Error.new("Unable to start service: #{resource[:name]} at path: #{job_path}")
172:     end
173:     # As load -w clears the Disabled flag, we need to add it in after
174:     self.disable if did_enable_job and resource[:enable] == :false
175:   end