| Conditions | 8 |
| Paths | 20 |
| Total Lines | 54 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.
For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.
Commonly applied refactorings include:
If many parameters/temporary variables are present:
| 1 | <?php |
||
| 78 | public function handle(Event $event): void { |
||
| 79 | if (!$event instanceof AddingCircleMemberEvent) { |
||
| 80 | return; |
||
| 81 | } |
||
| 82 | |||
| 83 | if ($this->configService->getAppValue(ConfigService::EVENT_EXAMPLES) !== '1') { |
||
| 84 | return; |
||
| 85 | } |
||
| 86 | |||
| 87 | $prefix = '[Example Event] (ExampleCircleMemberAdded) '; |
||
| 88 | |||
| 89 | if ($event->getType() === CircleGenericEvent::MULTIPLE) { |
||
| 90 | $members = $event->getMembers(); |
||
| 91 | } else { |
||
| 92 | $members = [$event->getMember()]; |
||
| 93 | } |
||
| 94 | |||
| 95 | foreach ($members as $member) { |
||
| 96 | $circle = $event->getCircle(); |
||
| 97 | $eventType = ($event->getType() === CircleGenericEvent::INVITED) ? 'invited' : 'joined'; |
||
| 98 | |||
| 99 | $info = 'A new member have been added (' . $eventType . ') to a Circle. '; |
||
| 100 | |||
| 101 | $info .= 'userId: ' . $member->getUserId() . '; userType: ' . Member::$TYPE[$member->getUserType( |
||
| 102 | )] |
||
| 103 | . '; singleId: ' . $member->getSingleId() . '; memberId: ' . $member->getId() |
||
| 104 | . '; isLocal: ' . json_encode($member->isLocal()) . '; level: ' |
||
| 105 | . Member::$DEF_LEVEL[$member->getLevel()] . '; '; |
||
| 106 | |||
| 107 | $memberships = array_map( |
||
| 108 | function(Membership $membership) { |
||
| 109 | return $membership->getCircleId(); |
||
| 110 | }, $circle->getMemberships() |
||
| 111 | ); |
||
| 112 | |||
| 113 | $listMemberships = (count($memberships) > 0) ? implode(', ', $memberships) : 'none'; |
||
| 114 | $info .= 'circleName: ' . $circle->getDisplayName() . '; circleId: ' . $circle->getSingleId() |
||
| 115 | . '; Circle memberships: ' . $listMemberships . '.'; |
||
| 116 | |||
| 117 | if ($member->getUserType() === Member::TYPE_CIRCLE) { |
||
| 118 | $basedOn = $member->getBasedOn(); |
||
| 119 | $members = array_map( |
||
| 120 | function(Member $member) { |
||
| 121 | return $member->getUserId() . ' (' . Member::$TYPE[$member->getUserType()] . ')'; |
||
| 122 | }, $basedOn->getInheritedMembers() |
||
| 123 | ); |
||
| 124 | |||
| 125 | $info .= ' Member is a Circle (singleId: ' . $basedOn->getSingleId() |
||
| 126 | . ') that contains those inherited members: ' . implode(', ', $members); |
||
| 127 | } |
||
| 128 | |||
| 129 | $this->log(3, $prefix . $info); |
||
| 130 | } |
||
| 131 | } |
||
| 132 | |||
| 135 |