PageRenderTime 46ms CodeModel.GetById 23ms RepoModel.GetById 0ms app.codeStats 0ms

/Source/Bifrost.RavenDb.Embeddable/ConfigurationExtensions.cs

#
C# | 41 lines | 21 code | 1 blank | 19 comment | 0 complexity | ea7ac586f7406cd2ffb180272dd515c3 MD5 | raw file
Possible License(s): CC-BY-SA-3.0
  1. #region License
  2. //
  3. // Copyright (c) 2008-2012, DoLittle Studios and Komplett ASA
  4. //
  5. // Licensed under the Microsoft Permissive License (Ms-PL), Version 1.1 (the "License")
  6. // With one exception :
  7. // Commercial libraries that is based partly or fully on Bifrost and is sold commercially,
  8. // must obtain a commercial license.
  9. //
  10. // You may not use this file except in compliance with the License.
  11. // You may obtain a copy of the license at
  12. //
  13. // http://bifrost.codeplex.com/license
  14. //
  15. // Unless required by applicable law or agreed to in writing, software
  16. // distributed under the License is distributed on an "AS IS" BASIS,
  17. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  18. // See the License for the specific language governing permissions and
  19. // limitations under the License.
  20. //
  21. #endregion
  22. using Bifrost.Entities;
  23. using Bifrost.RavenDb.Embeddable;
  24. namespace Bifrost.Configuration
  25. {
  26. public static class ConfigurationExtensions
  27. {
  28. public static IConfigure UsingRavenEmbedded(this IConfigure configure, string dataDirectory)
  29. {
  30. var entityContextConfiguration = new EntityContextConfiguration();
  31. var connection = new EntityContextConnection(dataDirectory);
  32. entityContextConfiguration.Connection = connection;
  33. configure.Container.Bind<IEntityContextConfiguration>(entityContextConfiguration);
  34. configure.Container.Bind((EntityContextConnection)entityContextConfiguration.Connection);
  35. configure.Container.Bind(typeof(IEntityContext<>), typeof(EntityContext<>));
  36. configure.Commands.Storage = entityContextConfiguration;
  37. return configure;
  38. }
  39. }
  40. }