PageRenderTime 39ms CodeModel.GetById 14ms RepoModel.GetById 1ms app.codeStats 0ms

/src/Restful/Restful.Data.MySql/MySqlSessionProviderFactory.cs

https://github.com/terenza/Restful
C# | 59 lines | 51 code | 8 blank | 0 comment | 0 complexity | 3a10aa3cddb0b3cb1c470bcf8768457e MD5 | raw file
Possible License(s): Apache-2.0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Data;
  6. using System.Data.Common;
  7. using MySql.Data.MySqlClient;
  8. using Restful.Data.MySql.Linq;
  9. using Remotion.Linq.Parsing.Structure;
  10. using Remotion.Linq;
  11. using Restful.Data.MySql.CommandBuilders;
  12. using Restful.Data.MySql.Visitors;
  13. using Restful.Linq;
  14. namespace Restful.Data.MySql
  15. {
  16. public class MySqlSessionProviderFactory : ISessionProviderFactory
  17. {
  18. public CommandBuilder CreateCommandBuilder()
  19. {
  20. return new Restful.Data.MySql.CommandBuilders.MySqlCommandBuilder();
  21. }
  22. public IUpdateProvider CreateUpdateProvider( ISessionProvider provider )
  23. {
  24. return new MySqlUpdateProvider( provider );
  25. }
  26. public IInsertProvider CreateInsertProvider( ISessionProvider provider )
  27. {
  28. return new MySqlInsertProvider( provider );
  29. }
  30. public IDeleteProvider CreateDeleteProvider( ISessionProvider provider )
  31. {
  32. return new MySqlDeleteProvider( provider );
  33. }
  34. public ISession CreateSession( string connectionStr )
  35. {
  36. return new MySqlSession( this, connectionStr );
  37. }
  38. public DbConnection CreateConnection( string connectionStr )
  39. {
  40. return new MySqlConnection( connectionStr );
  41. }
  42. public DbDataAdapter CreateDataAdapter()
  43. {
  44. return new MySqlDataAdapter();
  45. }
  46. public IQueryable<T> CreateQueryable<T>( ISessionProvider provider )
  47. {
  48. return new MySqlQueryable<T>( QueryParser.CreateDefault(), new MySqlQueryExecutor( provider ) );
  49. }
  50. }
  51. }