/// <summary>
 /// Initializes a new instance of the
 /// <see cref="AbstractConfigurationBuilder{T}"/> class.
 /// </summary>
 protected AbstractConfigurationBuilder()
 {
     properties_   = new DictionaryValue();
     repositories_ = new RepositoriesNode();
     providers_    = new ProvidersNode();
     xml_elements_ = new XmlElementsNode();
 }
 /// <summary>
 /// Copies the configured data from the specified
 /// <see cref="AbstractConfigurationBuilder{T}"/> object.
 /// </summary>
 /// <param name="builder">
 /// A <see cref="AbstractConfigurationBuilder{T}"/> object that contains the
 /// configuration data to be copied.
 /// </param>
 /// <remarks>
 /// A <see cref="AbstractConfigurationBuilder{T}"/> object configured with the
 /// data copied from <paramref name="builder"/>.
 /// </remarks>
 public IConfigurationBuilder <T> CopyFrom(
     AbstractConfigurationBuilder <T> builder)
 {
     properties_   = builder.properties_;
     providers_    = builder.providers_;
     log_level_    = builder.log_level_;
     repositories_ = builder.repositories_;
     xml_elements_ = builder.xml_elements_;
     return(this);
 }
 /// <summary>
 /// Sets the <see cref="ProvidersNode"/> object for
 /// the <see cref="AbstractConfigurationBuilder{T}"/>
 /// </summary>
 /// <param name="providers">The <see cref="ProvidersNode"/>
 /// to set.</param>
 /// <returns>
 /// A <see cref="AbstractConfigurationBuilder{T}"/> object that
 /// associates <paramref name="providers"/> with the builded
 /// <see cref="Nohros.Configuration.IConfiguration"/>.
 /// </returns>
 public IConfigurationBuilder <T> SetProviders(ProvidersNode providers)
 {
     providers_ = providers;
     return(this);
 }