Skip to content

Commit f849f09

Browse files
authored
Merge pull request #425 from systopia/get-rid-of-some-legacy-code
Get rid of some legacy code
2 parents f6e3242 + 386106f commit f849f09

18 files changed

+110
-644
lines changed

Civi/Api4/RemoteFundingApplicationProcessActivity.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33

44
namespace Civi\Api4;
55

6-
use Civi\Funding\Api4\AbstractRemoteFundingEntityLegacy;
6+
use Civi\Funding\Api4\AbstractRemoteFundingEntity;
77
use Civi\Funding\Api4\Action\Remote\ApplicationProcessActivity\GetAction;
88

9-
final class RemoteFundingApplicationProcessActivity extends AbstractRemoteFundingEntityLegacy {
9+
final class RemoteFundingApplicationProcessActivity extends AbstractRemoteFundingEntity {
1010

1111
public static function get(): GetAction {
1212
return new GetAction();

Civi/Api4/RemoteFundingCaseInfo.php

+5-5
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,16 @@
1919

2020
namespace Civi\Api4;
2121

22-
use Civi\Funding\Api4\AbstractRemoteFundingEntityLegacy;
23-
use Civi\Funding\Api4\Action\Remote\RemoteFundingGetActionLegacy;
22+
use Civi\Funding\Api4\AbstractRemoteFundingEntity;
23+
use Civi\Funding\Api4\Action\Remote\RemoteFundingGetAction;
2424

2525
/**
2626
* @deprecated Use RemoteFundingApplicationProcess instead.
2727
*/
28-
final class RemoteFundingCaseInfo extends AbstractRemoteFundingEntityLegacy {
28+
final class RemoteFundingCaseInfo extends AbstractRemoteFundingEntity {
2929

30-
public static function get(): RemoteFundingGetActionLegacy {
31-
return new RemoteFundingGetActionLegacy(static::getEntityName());
30+
public static function get(): RemoteFundingGetAction {
31+
return new RemoteFundingGetAction(static::getEntityName(), __FUNCTION__);
3232
}
3333

3434
}

Civi/Funding/Api4/AbstractRemoteFundingEntityLegacy.php

-46
This file was deleted.

Civi/Funding/Api4/Action/Remote/ApplicationProcessActivity/GetAction.php

+2-7
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,15 @@
44
namespace Civi\Funding\Api4\Action\Remote\ApplicationProcessActivity;
55

66
use Civi\Api4\RemoteFundingApplicationProcessActivity;
7-
use Civi\Funding\Api4\Action\Remote\RemoteFundingGetActionLegacy;
7+
use Civi\Funding\Api4\Action\Remote\RemoteFundingGetAction;
88
use Civi\Funding\Api4\Action\Traits\ApplicationProcessIdParameterTrait;
9-
use Civi\Funding\Event\Remote\ApplicationProcessActivity\GetEvent;
109

11-
final class GetAction extends RemoteFundingGetActionLegacy {
10+
final class GetAction extends RemoteFundingGetAction {
1211

1312
use ApplicationProcessIdParameterTrait;
1413

1514
public function __construct() {
1615
parent::__construct(RemoteFundingApplicationProcessActivity::getEntityName(), 'get');
1716
}
1817

19-
protected function getEventClass(): string {
20-
return GetEvent::class;
21-
}
22-
2318
}

Civi/Funding/Api4/Action/Remote/RemoteFundingGetActionLegacy.php

-47
This file was deleted.

Civi/Funding/Api4/ActionHandler/AbstractRemoteFundingGetActionHandler.php

+15-8
Original file line numberDiff line numberDiff line change
@@ -36,14 +36,7 @@ public function __construct(Api4Interface $api4) {
3636
* @throws \CRM_Core_Exception
3737
*/
3838
public function get(RemoteFundingGetAction $action): Result {
39-
$params = [
40-
'language' => $action->getLanguage(),
41-
'select' => $action->getSelect(),
42-
'where' => $action->getWhere(),
43-
'orderBy' => $action->getOrderBy(),
44-
'limit' => $action->getLimit(),
45-
'offset' => $action->getOffset(),
46-
];
39+
$params = $this->getParams($action);
4740

4841
$join = $this->getJoin($action);
4942
if ($join !== []) {
@@ -66,4 +59,18 @@ protected function getJoin(RemoteFundingGetAction $action): array {
6659
return [];
6760
}
6861

62+
/**
63+
* @phpstan-return array<string, mixed>
64+
*/
65+
protected function getParams(RemoteFundingGetAction $action): array {
66+
return [
67+
'language' => $action->getLanguage(),
68+
'select' => $action->getSelect(),
69+
'where' => $action->getWhere(),
70+
'orderBy' => $action->getOrderBy(),
71+
'limit' => $action->getLimit(),
72+
'offset' => $action->getOffset(),
73+
];
74+
}
75+
6976
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
<?php
2+
/*
3+
* Copyright (C) 2025 SYSTOPIA GmbH
4+
*
5+
* This program is free software: you can redistribute it and/or modify
6+
* it under the terms of the GNU Affero General Public License as published by
7+
* the Free Software Foundation in version 3.
8+
*
9+
* This program is distributed in the hope that it will be useful,
10+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12+
* GNU Affero General Public License for more details.
13+
*
14+
* You should have received a copy of the GNU Affero General Public License
15+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
16+
*/
17+
18+
declare(strict_types = 1);
19+
20+
namespace Civi\Funding\ApplicationProcess\Api4\ActionHandler\ApplicationProcessActivity;
21+
22+
use Civi\Api4\FundingApplicationProcessActivity;
23+
use Civi\Api4\Generic\Result;
24+
use Civi\Funding\ActivityTypeIds;
25+
use Civi\Funding\ActivityTypeNames;
26+
use Civi\Funding\Api4\Action\Remote\RemoteFundingGetAction;
27+
use Civi\Funding\Api4\ActionHandler\AbstractRemoteFundingGetActionHandler;
28+
29+
final class RemoteGetActionHandler extends AbstractRemoteFundingGetActionHandler {
30+
31+
public const ENTITY_NAME = 'RemoteFundingApplicationProcessActivity';
32+
33+
protected function getEntityName(): string {
34+
return FundingApplicationProcessActivity::getEntityName();
35+
}
36+
37+
public function get(RemoteFundingGetAction $action): Result {
38+
$action->addClause('OR',
39+
['activity_type_id', '=', ActivityTypeIds::FUNDING_APPLICATION_CREATE],
40+
['activity_type_id', '=', ActivityTypeIds::FUNDING_APPLICATION_STATUS_CHANGE],
41+
['activity_type_id', '=', ActivityTypeIds::FUNDING_APPLICATION_COMMENT_EXTERNAL],
42+
['activity_type_id:name', '=', ActivityTypeNames::FUNDING_CLEARING_CREATE],
43+
['activity_type_id:name', '=', ActivityTypeNames::FUNDING_CLEARING_STATUS_CHANGE],
44+
);
45+
46+
return parent::get($action);
47+
}
48+
49+
protected function getParams(RemoteFundingGetAction $action): array {
50+
/** @var \Civi\Funding\Api4\Action\Remote\ApplicationProcessActivity\GetAction $action */
51+
return ['applicationProcessId' => $action->getApplicationProcessId()]
52+
+ parent::getParams($action);
53+
}
54+
55+
}
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22
/*
3-
* Copyright (C) 2022 SYSTOPIA GmbH
3+
* Copyright (C) 2025 SYSTOPIA GmbH
44
*
55
* This program is free software: you can redistribute it and/or modify
66
* it under the terms of the GNU Affero General Public License as published by
@@ -17,17 +17,17 @@
1717

1818
declare(strict_types = 1);
1919

20-
namespace Civi\Funding\EventSubscriber\Remote;
20+
namespace Civi\Funding\ApplicationProcess\Api4\ActionHandler\ApplicationProcessActivity;
2121

22-
use Civi\Funding\Event\Remote\FundingGetFieldsEvent;
23-
use Civi\RemoteTools\EventSubscriber\AbstractRemoteGetFieldsSubscriber;
22+
use Civi\Api4\FundingApplicationProcessActivity;
23+
use Civi\Funding\Api4\ActionHandler\AbstractRemoteFundingGetFieldsActionHandler;
2424

25-
final class ApplicationProcessActivityGetFieldsSubscriber extends AbstractRemoteGetFieldsSubscriber {
25+
final class RemoteGetFieldsActionHandler extends AbstractRemoteFundingGetFieldsActionHandler {
2626

27-
protected const BASIC_ENTITY_NAME = 'FundingApplicationProcessActivity';
27+
public const ENTITY_NAME = 'RemoteFundingApplicationProcessActivity';
2828

29-
protected const ENTITY_NAME = 'RemoteFundingApplicationProcessActivity';
30-
31-
protected const EVENT_CLASS = FundingGetFieldsEvent::class;
29+
protected function getEntityName(): string {
30+
return FundingApplicationProcessActivity::getEntityName();
31+
}
3232

3333
}

Civi/RemoteTools/Database/TransactionFactory.php Civi/Funding/ApplicationProcess/Api4/ActionHandler/FundingCaseInfo/RemoteGetActionHandler.php

+11-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22
/*
3-
* Copyright (C) 2022 SYSTOPIA GmbH
3+
* Copyright (C) 2025 SYSTOPIA GmbH
44
*
55
* This program is free software: you can redistribute it and/or modify
66
* it under the terms of the GNU Affero General Public License as published by
@@ -17,15 +17,18 @@
1717

1818
declare(strict_types = 1);
1919

20-
namespace Civi\RemoteTools\Database;
20+
namespace Civi\Funding\ApplicationProcess\Api4\ActionHandler\FundingCaseInfo;
2121

22-
/**
23-
* @codeCoverageIgnore
24-
*/
25-
class TransactionFactory {
22+
use Civi\Api4\FundingCaseInfo;
23+
use Civi\Funding\Api4\ActionHandler\AbstractRemoteFundingGetActionHandler;
24+
25+
final class RemoteGetActionHandler extends AbstractRemoteFundingGetActionHandler {
26+
27+
public const ENTITY_NAME = 'RemoteFundingCaseInfo';
2628

27-
public function createTransaction(): \CRM_Core_Transaction {
28-
return \CRM_Core_Transaction::create();
29+
protected function getEntityName(): string {
30+
// @phpstan-ignore staticMethod.deprecatedClass
31+
return FundingCaseInfo::getEntityName();
2932
}
3033

3134
}
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22
/*
3-
* Copyright (C) 2022 SYSTOPIA GmbH
3+
* Copyright (C) 2025 SYSTOPIA GmbH
44
*
55
* This program is free software: you can redistribute it and/or modify
66
* it under the terms of the GNU Affero General Public License as published by
@@ -17,17 +17,18 @@
1717

1818
declare(strict_types = 1);
1919

20-
namespace Civi\Funding\EventSubscriber\Remote;
20+
namespace Civi\Funding\ApplicationProcess\Api4\ActionHandler\FundingCaseInfo;
2121

22-
use Civi\Funding\Event\Remote\FundingGetEvent;
23-
use Civi\RemoteTools\EventSubscriber\AbstractRemoteGetSubscriber;
22+
use Civi\Api4\FundingCaseInfo;
23+
use Civi\Funding\Api4\ActionHandler\AbstractRemoteFundingGetFieldsActionHandler;
2424

25-
class FundingCaseInfoGetSubscriber extends AbstractRemoteGetSubscriber {
25+
final class RemoteGetFieldsActionHandler extends AbstractRemoteFundingGetFieldsActionHandler {
2626

27-
protected const BASIC_ENTITY_NAME = 'FundingCaseInfo';
27+
public const ENTITY_NAME = 'RemoteFundingCaseInfo';
2828

29-
protected const ENTITY_NAME = 'RemoteFundingCaseInfo';
30-
31-
protected const EVENT_CLASS = FundingGetEvent::class;
29+
protected function getEntityName(): string {
30+
// @phpstan-ignore staticMethod.deprecatedClass
31+
return FundingCaseInfo::getEntityName();
32+
}
3233

3334
}

Civi/Funding/EventSubscriber/Remote/ApplicationProcessActivityGetSubscriber.php

-52
This file was deleted.

0 commit comments

Comments
 (0)