Автор: Elliot Levin (elliotlevin@hotmail.com)
Наследование: extends Pinq\Queries\IQuery
 /**
  * @param Queries\IOperationQuery $query
  *
  * @return IOperationQueryCompiler
  */
 protected function getOperationQueryCompiler(Queries\IOperationQuery $query)
 {
     /** @var TableSourceInfo $source */
     $source = $query->getScope()->getSourceInfo();
     $updateOrDelete = new UpdateOrDelete($this->connection, $source, new Parameters\ParameterCollection());
     return new OperationCompiler($query, $updateOrDelete);
 }
Пример #2
0
 /**
  * @return void
  */
 protected function compileQuery()
 {
     $this->query->getOperation()->traverse($this);
 }
Пример #3
0
 protected function executeOperation(Queries\IOperationQuery $query, Queries\IResolvedParameterRegistry $resolvedParameters)
 {
     $scopedCollection = $this->queryProvider->evaluateScope($query->getScope(), $resolvedParameters);
     OperationEvaluator::evaluate($scopedCollection, $query->getOperation(), $resolvedParameters);
 }
Пример #4
0
 public function buildQuery()
 {
     $scope = $this->scopeProcessor->buildScope();
     $operation = $this->operationQuery->getOperation();
     return $this->operationQuery->update($this->processScope($scope, $operation), $this->processOperation($scope, $operation));
 }