Antifraud   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 73
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 11
c 1
b 0
f 0
dl 0
loc 73
rs 10
wmc 6

6 Methods

Rating   Name   Duplication   Size   Complexity  
A schema() 0 6 1
A getProvider() 0 3 1
A getSettings() 0 3 1
A __construct() 0 3 1
A setProvider() 0 4 1
A setSettings() 0 4 1
1
<?php
2
3
namespace Ipag\Sdk\Model;
4
5
use Ipag\Sdk\Model\Schema\Schema;
6
use Ipag\Sdk\Model\Schema\SchemaBuilder;
7
8
/**
9
 * Antifraud Class
10
 *
11
 * Classe responsável por representar o recurso Antifraud.
12
 */
13
class Antifraud extends Model
14
{
15
16
  /**
17
   * @param array|null $data
18
   * array de dados do recurso `Antifraud`
19
   *
20
   *  + [`'provider'`] array (opcional) dos dados do Address.
21
   *  + &emsp; [`'name'`] string (opcional).
22
   *  + &emsp; [`'credentials'`] array (opcional).
23
   *  + [`'settings'`] array (opcional) dos dados do Address.
24
   *  + &emsp; [`'enabled'`] bool (opcional).
25
   *  + &emsp; [`'environment'`] enum {`'production'` | `'test'`} (opcional).
26
   *  + &emsp; [`'consult_mode'`] enum {`'auto'` | `'manual'`} (opcional).
27
   *  + &emsp; [`'capture_on_approval'`] bool (opcional).
28
   *  + &emsp; [`'cancel_on_refused'`] bool (opcional).
29
   *  + &emsp; [`'review_score_threshold'`] float (opcional).
30
   */
31
  public function __construct(?array $data = [])
32
  {
33
    parent::__construct($data);
34
  }
35
36
  protected function schema(SchemaBuilder $schema): Schema
37
  {
38
    $schema->has('provider', AntifraudProvider::class)->nullable();
39
    $schema->has('settings', AntifraudSettings::class)->nullable();
40
41
    return $schema->build();
42
  }
43
44
  /**
45
   * Retorna o valor da propriedade `provider`.
46
   *
47
   * @return AntifraudProvider|null
48
   */
49
  public function getProvider(): ?AntifraudProvider
50
  {
51
    return $this->get('provider');
52
  }
53
54
  /**
55
   * Seta o valor da propriedade `provider`.
56
   *
57
   * @param AntifraudProvider|null $provider
58
   * @return self
59
   */
60
  public function setProvider(?AntifraudProvider $provider = null): self
61
  {
62
    $this->set('provider', $provider);
63
    return $this;
64
  }
65
66
  /**
67
   * Retorna o valor da propriedade `settings`.
68
   *
69
   * @return AntifraudSettings|null
70
   */
71
  public function getSettings(): ?AntifraudSettings
72
  {
73
    return $this->get('settings');
74
  }
75
76
  /**
77
   * Seta o valor da propriedade `settings`.
78
   *
79
   * @param AntifraudSettings|null $settings
80
   * @return self
81
   */
82
  public function setSettings(?AntifraudSettings $settings = null): self
83
  {
84
    $this->set('settings', $settings);
85
    return $this;
86
  }
87
88
}