- Timestamp:
- 10/02/08 01:00:33 (3 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
lang/php/misc/Hermit/src/Hermit/statement/HermitProcedureStatementBuilder.php
r20387 r20417 8 8 private $annote; 9 9 private $sqlCreator; 10 11 protected static $procedureParameters = array( 12 'mysql' => 'HermitMySqlProcedureParameter' 13 ); 14 10 15 public function __construct(ReflectionMethod $method, HermitAnnote $annote, HermitSqlCreator $sqlCreator){ 11 16 $this->method = $method; … … 15 20 16 21 public function build(PDO $pdo){ 17 $this->checkProcedureParameter();22 self::checkProcedureParameter($this->method); 18 23 19 24 $procedureName = $this->annote->getProcedure($this->method); … … 22 27 23 28 $dbms = HermitDatabaseMetaFactory::getDbms($pdo); 24 $parameter = new HermitProcedureParameter($info, $dbms); 29 $parameter = null; 30 if(isset(self::$procedureParameters[$dbms])){ 31 $className = self::$procedureParameters[$dbms]; 32 $parameter = new $className($info, $dbms); 33 } else { 34 $parameter = new HermitProcedureParameter($info, $dbms); 35 } 25 36 $sql = $this->sqlCreator->createSql($pdo); 26 37 $sql = self::preparedSql($parameter, $sql); … … 28 39 } 29 40 30 protected function checkProcedureParameter( ){31 $parameters = $ this->method->getParameters();41 protected function checkProcedureParameter(ReflectionMethod $method){ 42 $parameters = $method->getParameters(); 32 43 $count = count($parameters); 33 44 if(1 < $count){
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)