# circuits.app package

## Submodules

- circuits.app.daemon module
  - `daemonize`
  - `daemonized`
  - `deletepid`
  - `writepid`
  - `Daemon`
    - `Daemon.channel`
    - `Daemon.init()`
    - `Daemon.deletepid()`
    - `Daemon.writepid()`
    - `Daemon.daemonize()`
    - `Daemon.registered()`
    - `Daemon.on_started()`

## Module contents

Application Components

Contains various components useful for application development and tasks common to applications.

class circuits.app.Daemon(*args, **kwargs)

  Bases: `Component`

  Daemon Component

  Parameters:

    - pidfile (str or unicode) – .pid filename

    - stdin (str or unicode) – filename to log stdin

    - stdout (str or unicode) – filename to log stdout

    - stderr (str or unicode) – filename to log stderr

  Initializes x; see x.__class__.__doc__ for signature

  channel = 'daemon'
  daemonize()
  deletepid()
  init(pidfile, path='/', stdin=None, stdout=None, stderr=None, channel='daemon')
  on_started(component)
  registered(component, manager)
  writepid()

class circuits.app.DropPrivileges(*args, **kwargs)

  Bases: `BaseComponent`

  Initializes x; see x.__class__.__doc__ for signature

  drop_privileges()
  init(user='nobody', group='nobody', umask=63, **kwargs)
  on_ready(server, bind)