<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="unity" type="Microsoft.Practices.Unity.Configuration.UnityConfigurationSection, Microsoft.Practices.Unity.Configuration" />
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler" />
  </configSections>
  <unity>
    <namespace name="Lextm.SharpSnmpLib.Compiler" />
    <namespace name="Lextm.SharpSnmpLib.Mib" />
    <assembly name="SharpSnmpLib.Mib" />
    <assembly name="Compiler" />
    <assembly name="SharpSnmpLib" />
    <aliases>
      <add alias="DockContent" type="WeifenLuo.WinFormsUI.Docking.DockContent, WeifenLuo.WinFormsUI.Docking" />
      <add alias="Compiler" type="Lextm.SharpSnmpLib.Compiler.CompilerCore, Compiler" />
      <add alias="singleton" type="Microsoft.Practices.Unity.ContainerControlledLifetimeManager, Microsoft.Practices.Unity" />
    </aliases>
    <containers>
      <container name="compiler">
        <register type="Compiler">
          <lifetime type="singleton" />
          <property name="Parser" dependencyType="Parser" />
          <property name="Assembler" dependencyType="Assembler" />
        </register>
        <register type="Parser" />
        <register type="Assembler">
          <lifetime type="singleton" />
          <constructor>
            <param name="folder" value="modules" />
          </constructor>
        </register>
        <register type="DockContent" mapTo="OutputPanel" name="Output">
          <lifetime type="singleton" />
        </register>
        <register type="DockContent" mapTo="DocumentListPanel" name="DocumentList">
          <lifetime type="singleton" />
          <property name="Compiler" dependencyType="Compiler" />
        </register>
        <register type="DockContent" mapTo="ModuleListPanel" name="ModuleList">
          <lifetime type="singleton" />
          <property name="Assembler" dependencyType="Assembler" />
          <property name="Compiler" dependencyType="Compiler" />
        </register>
      </container>
    </containers>
  </unity>
  <log4net>
    <!-- Define some output appenders -->
    <appender name="OutputPanelAppender" type="Lextm.SharpSnmpLib.OutputPanelAppender">
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%message%newline" />
      </layout>
    </appender>
    <!-- Setup the root category, add the appenders and set the default level -->
    <root>
      <level value="WARN" />
    </root>
    <!-- Specify the level for some specific categories -->
    <logger name="Lextm.SharpSnmpLib.Compiler">
      <level value="ALL" />
      <appender-ref ref="OutputPanelAppender" />
    </logger>
    <logger name="Lextm.SharpSnmpLib.Mib">
      <level value="ALL" />
      <appender-ref ref="OutputPanelAppender" />
    </logger>
  </log4net>
  <startup>
    <supportedRuntime version="v2.0.50727" />
  </startup>
</configuration>