src/app/n2n/impl/persistence/orm/property/EmbeddedCustomComparable.php
public function compareWith(QueryComparator $queryComparator, $operator, ComparisonStrategy $comparisonStrategy) {
		$customComparable = null;
		$previousE = null;
		try {
			$customComparable = $comparisonStrategy->getCustomComparable();
		} catch (IllegalStateException $e) {
			$previousE = $e;
		} 
		
		if (!($customComparable instanceof EmbeddedCustomComparable) 
				|| $this->embeddedEntityProperty->getTargetClass() != $customComparable->getEmbeddedEntityProperty()->getTargetClass()) {
			$customComparable = null;
		}

		if ($customComparable === null) {
			throw new CriteriaConflictException($this->embeddedEntityProperty->toPropertyString()
					. ' can only be compared to other embedded properties of the same type.', 0, $previousE);
		}
		
		foreach ($this->embeddedEntityProperty->getEntityProperties() as $entityProperty) {
			$this->applyComparison($queryComparator, $entityProperty, $operator, $customComparable);
		}
	}
public function compareWith(QueryComparator $queryComparator, $operator, ComparisonStrategy $comparisonStrategy) {
		$customComparable = null;
		$previousE = null;
		try {
			$customComparable = $comparisonStrategy->getCustomComparable();
		} catch (IllegalStateException $e) {
			$previousE = $e;
		} 
		
		if (!($customComparable instanceof EmbeddedCustomComparable) 
				|| $this->embeddedEntityProperty->getTargetClass() != $customComparable->getEmbeddedEntityProperty()->getTargetClass()) {
			$customComparable = null;
		}

		if ($customComparable === null) {
			throw new CriteriaConflictException($this->embeddedEntityProperty->toPropertyString()
					. ' can only be compared to other embedded properties of the same type.', 0, $previousE);
		}
		
		foreach ($this->embeddedEntityProperty->getEntityProperties() as $entityProperty) {
			$this->applyComparison($queryComparator, $entityProperty, $operator, $customComparable);
		}
	}
/* (non-PHPdoc)
@see \n2n\persistence\orm\criteria\compare\CustomComparable::compareWith()