github.com/cloudbase/juju-core@v0.0.0-20140504232958-a7271ac7912f/cmd/jujud/unit_windows.go (about)

     1  package main
     2  
     3  import (
     4      "launchpad.net/juju-core/worker"
     5      // "launchpad.net/juju-core/worker/rsyslog"
     6      "launchpad.net/juju-core/worker/uniter"
     7      "launchpad.net/juju-core/worker/upgrader"
     8      workerlogger "launchpad.net/juju-core/worker/logger"
     9  )
    10  
    11  func (a *UnitAgent) APIWorkers() (worker.Worker, error) {
    12      agentConfig := a.Conf.config
    13      st, entity, err := openAPIState(agentConfig, a)
    14      if err != nil {
    15          return nil, err
    16      }
    17      dataDir := a.Conf.dataDir
    18      runner := worker.NewRunner(connectionIsFatal(st), moreImportant)
    19      runner.StartWorker("upgrader", func() (worker.Worker, error) {
    20          return upgrader.NewUpgrader(st.Upgrader(), agentConfig), nil
    21      })
    22      runner.StartWorker("logger", func() (worker.Worker, error) {
    23          return workerlogger.NewLogger(st.Logger(), agentConfig), nil
    24      })
    25      runner.StartWorker("uniter", func() (worker.Worker, error) {
    26          return uniter.NewUniter(st.Uniter(), entity.Tag(), dataDir), nil
    27      })
    28      // runner.StartWorker("rsyslog", func() (worker.Worker, error) {
    29      //     return newRsyslogConfigWorker(st.Rsyslog(), agentConfig, rsyslog.RsyslogModeForwarding)
    30      // })
    31      return newCloseWorker(runner, st), nil
    32  }