| 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 |