AccountTransformer   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 33
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 4

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 1
Metric Value
wmc 1
lcom 1
cbo 4
dl 0
loc 33
ccs 17
cts 17
cp 1
rs 10
c 1
b 0
f 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A transform() 0 22 1
1
<?php
2
3
namespace WSW\SiftScience\Transformers\Events;
4
5
use stdClass;
6
use WSW\SiftScience\Events\AbstractAccount;
7
use WSW\SiftScience\Support\Traits\Transformers\ObjectValues;
8
use WSW\SiftScience\Support\Traits\Transformers\Relationships;
9
use WSW\SiftScience\Transformers\AbstractTransformer;
10
11
/**
12
 * Class Account
13
 *
14
 * @package WSW\SiftScience\Transformers\Events
15
 * @author Ronaldo Matos Rodrigues <[email protected]>
16
 */
17
class AccountTransformer extends AbstractTransformer
18
{
19
    use ObjectValues;
20
    use Relationships;
21
22
    /**
23
     * @param AbstractAccount $event
24
     *
25
     * @return array
26
     */
27 5
    public function transform(AbstractAccount $event)
28
    {
29
        $data = [
30 5
            '$type' => $event->getType(),
31 5
            '$api_key' => $event->getApiKey(),
32 5
            '$user_id' => $event->getUserId(),
33 5
            '$session_id' => $event->getSessionId(),
34 5
            '$ip' => $event->getIp(),
35 5
            '$time' => $this->dateTime($event->getTime()),
36 5
            '$changed_password' => $event->isChangedPassword(),
37 5
            '$user_email' => $this->email($event->getUserEmail()),
38 5
            '$name' => $event->getName(),
39 5
            '$phone' => $event->getPhone(),
40 5
            '$referrer_user_id' => $event->getReferrerUserId(),
41 5
            '$payment_methods' => $this->paymentMethods($event->getPaymentMethods()),
42 5
            '$billing_address' => $this->address($event->getBillingAddress()),
43 5
            '$shipping_address' => $this->address($event->getShippingAddress()),
44 5
            '$social_sign_on_type' => $event->getSocialSignOnType()
45
        ];
46
47 5
        return $this->result($event, $data);
48
    }
49
}
50