private static TableHiLoGenerator CreateTableHiLoGenerator(TableIdGeneratorParams parameters) { var generator = new TableHiLoGenerator(); Configure(parameters, generator); return(generator); }
private static IConfigurable CreateGenerator <IdType>(IdGeneratorParams parameters) { switch (parameters.Strategy) { case IdGeneratorStrategy.TableHiLow: { TableHiLoGenerator generator = CreateTableHiLoGenerator((TableIdGeneratorParams)parameters); return(new IdGeneratorNHibernateAdaptor <IdType>(generator)); } case IdGeneratorStrategy.MinimalGap: { return(CreateMinimalGapTableIdGenerator((TableIdGeneratorParams)parameters)); } default: throw new ArgumentOutOfRangeException(); } }