コード例 #1
0
        // ===============================================================================
        //                                                                Command Creation
        //                                                                ================
        public override IDbCommand CreateCommand(IDbConnection conn, string sql)
        {
            IDbCommand cmd = conn.CreateCommand();

            cmd.CommandText = ChangeSignSql(cmd, sql);
            StatementConfig defaultStatementConfig = DBFluteConfig.GetInstance().DefaultStatementConfig;
            bool            internalDebug          = DBFluteConfig.GetInstance().IsInternalDebug;
            StatementConfig config = FindStatementConfigOnThread();

            if (config != null && config.HasQueryTimeout())
            {
                if (internalDebug)
                {
                    _log.Debug("...Setting statement config as request: " + config);
                }
                cmd.CommandTimeout = config.GetQueryTimeout().Value;// DBFlute original logic.
            }
            else if (defaultStatementConfig != null && defaultStatementConfig.HasQueryTimeout())
            {
                if (internalDebug)
                {
                    _log.Debug("...Setting statement config as default: " + config);
                }
                cmd.CommandTimeout = defaultStatementConfig.GetQueryTimeout().Value;// DBFlute original logic.
            }
            else
            {
                if (CommandTimeout > -1)
                {
                    cmd.CommandTimeout = CommandTimeout;// S2Dao original logic.
                }
            }
            return(cmd);
        }
コード例 #2
0
        protected StatementConfig FindStatementConfigOnThread()
        {
            StatementConfig config = null;

            if (ConditionBeanContext.IsExistConditionBeanOnThread())
            {
                ConditionBean cb = ConditionBeanContext.GetConditionBeanOnThread();
                config = cb.StatementConfig;
            }
            else if (OutsideSqlContext.IsExistOutsideSqlContextOnThread())
            {
                OutsideSqlContext context = OutsideSqlContext.GetOutsideSqlContextOnThread();
                config = context.StatementConfig;
            }
            return(config);
        }
コード例 #3
0
 // ===============================================================================
 //                                                                Statement Config
 //                                                                ================
 public void Configure(StatementConfig statementConfig)
 {
     _statementConfig = statementConfig;
 }
コード例 #4
0
 // ===============================================================================
 //                                                                          Option
 //                                                                          ======
 public OutsideSqlCursorExecutor <PARAMETER_BEAN> Configure(StatementConfig statementConfig)
 {
     _outsideSqlOption.StatementConfig = statementConfig;
     return(this);
 }
コード例 #5
0
 public OutsideSqlBasicExecutor Configure(StatementConfig statementConfig)
 {
     _statementConfig = statementConfig;
     return(this);
 }
コード例 #6
0
 // ===============================================================================
 //                                                                          Option
 //                                                                          ======
 public OutsideSqlPagingExecutor Configure(StatementConfig statementConfig)
 {
     _outsideSqlOption.StatementConfig = statementConfig;
     return(this);
 }