Skip to content

Commit

Permalink
Replaced deprecated FieldNameResolver::getFieldNames method with Fiel…
Browse files Browse the repository at this point in the history
…dNameResolver::getFieldTypes (#507)
  • Loading branch information
wiewiurdp authored Mar 7, 2025
1 parent a874f98 commit 4dfa29f
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 46 deletions.
29 changes: 0 additions & 29 deletions src/lib/Search/Common/FieldNameResolver.php
Original file line number Diff line number Diff line change
Expand Up @@ -83,35 +83,6 @@ protected function getSearchableFieldMap()
return $this->contentTypeHandler->getSearchableFieldMap();
}

/**
* For the given parameters returns a set of search backend field names to search on.
*
* The method will check for custom fields if given $criterion implements
* CustomFieldInterface. With optional parameters $fieldTypeIdentifier and
* $name specific field type and field from its Indexable implementation
* can be targeted.
*
* @deprecated since 6.2, use getFieldTypes instead
* @see \Ibexa\Contracts\Core\Repository\Values\Content\Query\CustomFieldInterface
* @see \Ibexa\Contracts\Core\FieldType\Indexable
*
* @param string $fieldDefinitionIdentifier
* @param string|null $fieldTypeIdentifier
* @param string|null $name
*
* @return string[]
*/
public function getFieldNames(
CriterionInterface $criterion,
$fieldDefinitionIdentifier,
$fieldTypeIdentifier = null,
$name = null
): array {
$fieldTypeNameMap = $this->getFieldTypes($criterion, $fieldDefinitionIdentifier, $fieldTypeIdentifier, $name);

return array_keys($fieldTypeNameMap);
}

/**
* For the given parameters returns a set of search backend field names/types to search on.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1184,11 +1184,13 @@ protected function modifyFieldCriterion(Query\CriterionInterface $criterion, str

/** @var \Ibexa\Core\Search\Common\FieldNameResolver $fieldNameResolver */
$fieldNameResolver = $container->get(FieldNameResolver::class);
$resolvedFieldNames = $fieldNameResolver->getFieldNames(
$criterion,
'data',
$this->getTypeName(),
$fieldName
$resolvedFieldNames = array_keys(
$fieldNameResolver->getFieldTypes(
$criterion,
'data',
$this->getTypeName(),
$fieldName
)
);
$resolvedFieldName = reset($resolvedFieldNames);
$criterion = [$criterion];
Expand Down
24 changes: 12 additions & 12 deletions tests/lib/Search/FieldNameResolverTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ public function testGetFieldNamesReturnsEmptyArray()
)
);

$fieldNames = $mockedFieldNameResolver->getFieldNames(
$fieldNames = $mockedFieldNameResolver->getFieldTypes(
$criterionMock,
'field_definition_identifier_1',
'field_type_identifier_2',
Expand Down Expand Up @@ -120,16 +120,16 @@ public function testGetFieldNames()
)
->will(self::returnValue(['index_field_name_2' => null]));

$fieldNames = $mockedFieldNameResolver->getFieldNames(
$fieldNames = $mockedFieldNameResolver->getFieldTypes(
$criterionMock,
'field_definition_identifier_1'
);

self::assertIsArray($fieldNames);
self::assertEquals(
[
'index_field_name_1',
'index_field_name_2',
'index_field_name_1' => null,
'index_field_name_2' => null,
],
$fieldNames
);
Expand Down Expand Up @@ -194,7 +194,7 @@ public function testGetFieldNamesWithNamedField()
)
->will(self::returnValue(['index_field_name_2' => null]));

$fieldNames = $mockedFieldNameResolver->getFieldNames(
$fieldNames = $mockedFieldNameResolver->getFieldTypes(
$criterionMock,
'field_definition_identifier_1',
null,
Expand All @@ -204,8 +204,8 @@ public function testGetFieldNamesWithNamedField()
self::assertIsArray($fieldNames);
self::assertEquals(
[
'index_field_name_1',
'index_field_name_2',
'index_field_name_1' => null,
'index_field_name_2' => null,
],
$fieldNames
);
Expand Down Expand Up @@ -256,7 +256,7 @@ public function testGetFieldNamesWithTypedField()
)
->will(self::returnValue(['index_field_name_1' => null]));

$fieldNames = $mockedFieldNameResolver->getFieldNames(
$fieldNames = $mockedFieldNameResolver->getFieldTypes(
$criterionMock,
'field_definition_identifier_1',
'field_type_identifier_2',
Expand All @@ -266,7 +266,7 @@ public function testGetFieldNamesWithTypedField()
self::assertIsArray($fieldNames);
self::assertEquals(
[
'index_field_name_1',
'index_field_name_1' => null,
],
$fieldNames
);
Expand Down Expand Up @@ -317,7 +317,7 @@ public function testGetFieldNamesWithTypedAndNamedField()
)
->will(self::returnValue(['index_field_name_1' => null]));

$fieldNames = $mockedFieldNameResolver->getFieldNames(
$fieldNames = $mockedFieldNameResolver->getFieldTypes(
$criterionMock,
'field_definition_identifier_1',
'field_type_identifier_2',
Expand All @@ -327,7 +327,7 @@ public function testGetFieldNamesWithTypedAndNamedField()
self::assertIsArray($fieldNames);
self::assertEquals(
[
'index_field_name_1',
'index_field_name_1' => null,
],
$fieldNames
);
Expand Down Expand Up @@ -726,7 +726,7 @@ public function testGetIndexFieldNameNamedFieldThrowsRuntimeException()
$this->expectException(\RuntimeException::class);

$mockedFieldNameResolver = $this->getMockedFieldNameResolver(
['getSortFieldName', 'getSearchableFieldMap', 'getFieldNames', 'getFieldTypes']
['getSortFieldName', 'getSearchableFieldMap', 'getFieldTypes']
);
$indexFieldType = $this->getIndexFieldTypeMock();
$searchFieldTypeMock = $this->getSearchFieldTypeMock();
Expand Down

0 comments on commit 4dfa29f

Please sign in to comment.