private bool ContainsClass(ISqlTokenGenerator sqlTokenGenerator) { foreach (var item in _sqlTokenGenerators) { if (item.GetType() == sqlTokenGenerator.GetType()) { return(true); } } return(false); }
private void SetUpSqlTokenGenerator(ISqlTokenGenerator sqlTokenGenerator, ParameterContext parameterContext, SchemaMetaData schemaMetaData, ICollection <SqlToken> previousSqlTokens) { if (sqlTokenGenerator is IParametersAware parametersAware) { parametersAware.SetParameterContext(parameterContext); } if (sqlTokenGenerator is ISchemaMetaDataAware schemaMetaDataAware) { schemaMetaDataAware.SetSchemaMetaData(schemaMetaData); } if (sqlTokenGenerator is IPreviousSqlTokensAware previousSqlTokensAware) { previousSqlTokensAware.SetPreviousSqlTokens(previousSqlTokens); } }
private void AddSqlTokenGenerator(ICollection <ISqlTokenGenerator> sqlTokenGenerators, ISqlTokenGenerator toBeAddedSqlTokenGenerator) { if (toBeAddedSqlTokenGenerator is IIgnoreForSingleRoute ignoreForSingleRoute && _routeContext.GetRouteResult().IsSingleRouting()) { return; } if (toBeAddedSqlTokenGenerator is IShardingRuleAware shardingRuleAware) { shardingRuleAware.SetShardingRule(_shardingRule); } if (toBeAddedSqlTokenGenerator is IRouteContextAware routeContextAware) { routeContextAware.SetRouteContext(_routeContext); } sqlTokenGenerators.Add(toBeAddedSqlTokenGenerator); }