Show
Ignore:
Timestamp:
10/01/08 21:02:13 (3 months ago)
Author:
nowelium
Message:
 
Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/php/misc/Hermit/src/Hermit/command/HermitProcedureCommand.php

    r20325 r20387  
    88    private $sqlCreator; 
    99    private $type; 
    10     public function __construct(ReflectionMethod $method, HermitSqlCreator $sqlCreator, HermitValueType $type){ 
     10    private $annote; 
     11    public function setMethod(ReflectionMethod $method){ 
    1112        $this->method = $method; 
     13    } 
     14    public function setSqlCreator(HermitSqlCreator $sqlCreator){ 
    1215        $this->sqlCreator = $sqlCreator; 
     16    } 
     17    public function setValueType(HermitValueType $type){ 
    1318        $this->type = $type; 
     19    } 
     20    public function setAnnote(HermitAnnote $annote){ 
     21        $this->annote = $annote; 
    1422    } 
    1523 
    1624    public function execute(PDO $pdo, array $parameters){ 
    17         $sql = $this->sqlCreator->createSql($pdo); 
    18         $stmt = HermitStatementBuilder::prepare($pdo, $this->method, $sql); 
     25        $builder = new HermitProcedureStatementBuilder($this->method, $this->annote, $this->sqlCreator); 
     26        $stmt = $builder->build($pdo); 
    1927        $stmt->execute($parameters); 
    20         $rs = new HermitProcedureResultSet; 
    21         return $rs->execute($stmt, $this->type); 
     28        $rs = new HermitProcedureResultSet($stmt->getSqlParameter()); 
     29        $rs->bindParameter($pdo, $parameters); 
     30        return $rs->create($stmt, $this->type); 
    2231    } 
    2332}