HitCounterModelDtoAssembler::writeDto()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 34
Code Lines 32

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 33
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 32
nc 1
nop 1
dl 0
loc 34
ccs 33
cts 33
cp 1
crap 1
rs 9.408
c 0
b 0
f 0
1
<?php
2
3
namespace coderius\hitCounter\services;
4
5
use coderius\hitCounter\models\HitCounterModel;
6
use coderius\hitCounter\dto\HitDto;
7
8
/**
9
 * Class HitCounterModelAssembler
10
 */
11
12
final class HitCounterModelDtoAssembler{
13
14
    /**
15
     * Return model with attributes loaded by dto
16
     *
17
     * @param HitDto $dto
18
     * @param HitCounterModel|null $model
19
     * @return HitCounterModel
20
     */
21
    // public function readDto(HitDto $dto, ?HitCounterModel $model = null): HitCounterModel
22
    // {
23
    //     //not finished
24
    //     return;
25
    // }
26
27
    /**
28
     * Return dto loaded by model attributes
29
     *
30
     * @param HitCounterModel $model
31
     * @return HitDto
32
     */
33 3
    public function writeDto(HitCounterModel $model): HitDto
34
    {
35 3
        return new HitDto(
36 3
            $model->counter_id,
37 3
            $model->cookie_mark,
38 3
            $model->js_cookei_enabled,
39 3
            $model->js_java_enabled,
40 3
            $model->js_timezone_offset,
41 3
            $model->js_timezone,
42 3
            $model->js_connection,
43 3
            $model->js_current_url,
44 3
            $model->js_referer_url,
45 3
            $model->js_screen_width,
46 3
            $model->js_screen_height,
47 3
            $model->js_color_depth,
48 3
            $model->js_browser_language,
49 3
            $model->js_history_length,
50 3
            $model->js_is_toutch_device,
51 3
            $model->js_processor_ram,
52 3
            $model->serv_ip,
53 3
            $model->serv_user_agent,
54 3
            $model->serv_referer_url,
55 3
            $model->serv_server_name,
56 3
            $model->serv_auth_user_id,
57 3
            $model->serv_port,
58 3
            $model->serv_cookies,
59 3
            $model->serv_os,
60 3
            $model->serv_client,
61 3
            $model->serv_device,
62 3
            $model->serv_brand,
63 3
            $model->serv_model,
64 3
            $model->serv_bot,
65 3
            $model->serv_host_by_ip,
66 3
            $model->serv_is_proxy_or_vpn
67
        );
68
    }
69
70
}