IBasicRepositoryConfigurator.cs 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #region Apache License
  2. //
  3. // Licensed to the Apache Software Foundation (ASF) under one or more
  4. // contributor license agreements. See the NOTICE file distributed with
  5. // this work for additional information regarding copyright ownership.
  6. // The ASF licenses this file to you under the Apache License, Version 2.0
  7. // (the "License"); you may not use this file except in compliance with
  8. // the License. You may obtain a copy of the License at
  9. //
  10. // http://www.apache.org/licenses/LICENSE-2.0
  11. //
  12. // Unless required by applicable law or agreed to in writing, software
  13. // distributed under the License is distributed on an "AS IS" BASIS,
  14. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  15. // See the License for the specific language governing permissions and
  16. // limitations under the License.
  17. //
  18. #endregion
  19. namespace log4net.Repository
  20. {
  21. /// <summary>
  22. /// Basic Configurator interface for repositories
  23. /// </summary>
  24. /// <remarks>
  25. /// <para>
  26. /// Interface used by basic configurator to configure a <see cref="ILoggerRepository"/>
  27. /// with a default <see cref="log4net.Appender.IAppender"/>.
  28. /// </para>
  29. /// <para>
  30. /// A <see cref="ILoggerRepository"/> should implement this interface to support
  31. /// configuration by the <see cref="log4net.Config.BasicConfigurator"/>.
  32. /// </para>
  33. /// </remarks>
  34. /// <author>Nicko Cadell</author>
  35. /// <author>Gert Driesen</author>
  36. public interface IBasicRepositoryConfigurator
  37. {
  38. /// <summary>
  39. /// Initialize the repository using the specified appender
  40. /// </summary>
  41. /// <param name="appender">the appender to use to log all logging events</param>
  42. /// <remarks>
  43. /// <para>
  44. /// Configure the repository to route all logging events to the
  45. /// specified appender.
  46. /// </para>
  47. /// </remarks>
  48. void Configure(Appender.IAppender appender);
  49. /// <summary>
  50. /// Initialize the repository using the specified appenders
  51. /// </summary>
  52. /// <param name="appenders">the appenders to use to log all logging events</param>
  53. /// <remarks>
  54. /// <para>
  55. /// Configure the repository to route all logging events to the
  56. /// specified appenders.
  57. /// </para>
  58. /// </remarks>
  59. void Configure(params Appender.IAppender[] appenders);
  60. }
  61. }