public function delete(Node\NodeInterface $node)
	{
		if ( ! $this->locked) {
			//\Log::info('Should lock before changes');
		}

		if ( ! $node instanceof Node\DoctrineNode) {
			throw new Exception\WrongInstance($node, 'Node\DoctrineNode');
		}
		
		$left = $node->getLeftValue();
		$right = $node->getRightValue();

		// Deletes only children here because there could be associations that 
		// doesn't allow deletion, then only leafs could be erased
		$sql = "DELETE FROM {$this->tableName}
				WHERE lft > {$left} AND rgt < {$right}";

		$sql .= $this->getAdditionalConditionSql('AND');

		$this->entityManager->getConnection()
				->exec($sql);
		
//		// Deletes only children here because there could be associations that
//		// doesn't allow deletion, then only leafs could be erased
//		$dql = "DELETE FROM {$this->className} e
//				WHERE e.left > {$left} AND e.right < {$right}";
//
//		$dql .= $this->getAdditionalCondition('AND');
//
//		$query = $this->entityManager->createQuery($dql);
//		$query->execute();
		
		$this->arrayHelper->delete($node);
	}