public function createQuery($statement, $language)
{
if (!in_array($language, $this->getSupportedQueryLanguages())) {
throw new InvalidQueryException("Unsupported query language: {$language}");
}
switch ($language) {
case QueryInterface::JCR_SQL2:
return $this->factory->get('Query\\SqlQuery', array($statement, $this->objectManager));
case QueryInterface::XPATH:
return $this->factory->get('Query\\XpathQuery', array($statement, $this->objectManager));
case QueryInterface::SQL:
return $this->factory->get('Query\\Sql1Query', array($statement, $this->objectManager));
case QueryInterface::JCR_JQOM:
throw new InvalidQueryException('Please use getQOMFactory to get the query object model factory. You can not build a QOM query from a string.');
default:
throw new InvalidQueryException("Transport supports this query language but jackalope not: {$language}");
}
}