public String GetTable()
        {
            ClassMapLoader     loader   = Database.Current.Factory.GetClassMapLoader();
            ClassMap <TEntity> classmap = loader.GetClassMap <TEntity>();

            return(String.Format(SqlSyntax.DBTABLE, classmap.GetTableName()));
        }
        public String GetField(PropertyMap aMap)
        {
            ClassMapLoader     loader   = Database.Current.Factory.GetClassMapLoader();
            ClassMap <TEntity> classmap = loader.GetClassMap <TEntity>();

            return(GetField(classmap.GetTableName(), aMap.GetColumn()));
        }
        public String GetField <TType>(Expression <Func <TEntity, TType> > anExpression)
        {
            ClassMapLoader     loader   = Database.Current.Factory.GetClassMapLoader();
            ClassMap <TEntity> classmap = loader.GetClassMap <TEntity>();
            PropertyMap        property = classmap.GetProperty(GetMemberExpression(anExpression));

            return(GetField(classmap.GetTableName(), property.GetColumn()));
        }
示例#4
0
        public void LoadMapper_GivenFooClass_ShouldCreateInstanceOfFooMap()
        {
            FluentDynamoDbConfiguration.Configure(Assembly.GetExecutingAssembly());

            var classMapLoader = new ClassMapLoader();
            var classMap       = classMapLoader.Load <Foo>();

            Assert.IsInstanceOf <FooMap>(classMap);
        }
        public void LoadMapper_GivenFooClassWithNoClassMap_ShouldThrownException()
        {
            FluentDynamoDbConfiguration.Configure(Assembly.GetExecutingAssembly());

            var classMapLoader = new ClassMapLoader();

            Assert.That(() => classMapLoader.Load <Foo>(),
                        Throws.Exception
                        .TypeOf <FluentDynamoDbMappingException>()
                        .With
                        .Message
                        .EqualTo(
                            "Could not find mapping for class of type FluentDynamoDb.Tests.Mappers.ClassMapLoaderMissingClassMapTests+Foo"));
        }
示例#6
0
        public void LoadMapper_GivenFooClassAndFooMapWithPrivateConstructor_ShouldThrowsException()
        {
            FluentDynamoDbConfiguration.Configure(Assembly.GetExecutingAssembly());

            var classMapLoader = new ClassMapLoader();

            Assert.That(() => classMapLoader.Load <Foo>(),
                        Throws.Exception
                        .TypeOf <FluentDynamoDbMappingException>()
                        .With
                        .Message
                        .EqualTo(
                            "Could not create a instance of type FluentDynamoDb.Tests.Mappers.ClassMapLoaderMissingPublicConstructorClassMapTests+FooMap, class must provide a public constructor"));
        }
示例#7
0
        public void LoadMapper_FluentDynamoDbConfigurationConfigureWasNotSet_ShouldThrowsException()
        {
            FluentDynamoDbConfiguration.Configure(null);

            var classMapLoader = new ClassMapLoader();

            Assert.That(() => classMapLoader.Load <Foo>(),
                        Throws.Exception
                        .TypeOf <FluentDynamoDbMappingException>()
                        .With
                        .Message
                        .EqualTo(
                            "ClassMapLocationAssembly was not provided, you should run FluentDynamoDbConfiguration.Configure() to define a assembly location for mappers"));
        }
        public String GetCountField <T>()
        {
            ClassMapLoader     loader   = Database.Current.Factory.GetClassMapLoader();
            ClassMap <TEntity> classmap = loader.GetClassMap <TEntity>();

            if (classmap.Identity != null)
            {
                var _idField = GetField(classmap.Identity);
                return(String.Format(SqlSyntax.COUNT_ID_QUERY, _idField));
            }
            else
            {
                return(String.Format(SqlSyntax.COUNT_QUERY));
            }
        }
示例#9
0
 public SessionImpl(
     Config aConfig,
     ClassMapLoader aLoader,
     SqlFactory aFactory,
     DBConnection aConnection,
     ValueExtractor aValueExtactor
     )
 {
     Config         = aConfig;
     Loader         = aLoader;
     Factory        = aFactory;
     QueryFactory   = aFactory.GetQueryFactory();
     Connetion      = aConnection;
     ValueExtractor = aValueExtactor;
 }
示例#10
0
 public PropertyBinderImpl(ClassMapLoader aLoader)
 {
     Loader = aLoader;
 }
示例#11
0
 public SqlCacheDependencyEngineImpl(Config aConfig, ClassMapLoader aClassMapLoader)
 {
     MutableDependencyTablesType = new List <Type>();
     Config = aConfig;
     Loader = aClassMapLoader;
 }
示例#12
0
 public InitialiseImpl(Config aConfig, ClassMapLoader aLoader)
 {
     Loader = aLoader;
     Config = aConfig;
 }