1
|
|
|
<?php |
2
|
|
|
|
3
|
|
|
namespace AppBundle\DataFixtures\ORM; |
4
|
|
|
|
5
|
|
|
use AppBundle\Entity\Action; |
6
|
|
|
use AppBundle\Entity\Device; |
7
|
|
|
use AppBundle\Entity\Trigger; |
8
|
|
|
use AppBundle\Entity\Variable; |
9
|
|
|
use Doctrine\Common\DataFixtures\FixtureInterface; |
10
|
|
|
use Doctrine\Common\Persistence\ObjectManager; |
11
|
|
|
|
12
|
|
|
class LoadActionData implements FixtureInterface |
13
|
|
|
{ |
14
|
1 |
|
public function load(ObjectManager $manager) |
15
|
|
|
{ |
16
|
1 |
|
$variable = new Variable(); |
17
|
|
|
|
18
|
1 |
|
$variable->setName('hooktest'); |
19
|
1 |
|
$variable->setDescription('test temperature metric'); |
20
|
1 |
|
$variable->setSource('internal'); |
21
|
1 |
|
$variable->setParser('Simple'); |
22
|
1 |
|
$variable->setValue('20'); |
23
|
1 |
|
$variable->needHistory = true; |
24
|
1 |
|
$variable->needSync = false; |
25
|
|
|
|
26
|
1 |
|
$manager->persist($variable); |
27
|
|
|
|
28
|
1 |
|
$device = new Device(); |
29
|
1 |
|
$device->setAlias('pi.fs'); |
30
|
1 |
|
$device->setName('Filesystem'); |
31
|
|
|
|
32
|
1 |
|
$manager->persist($device); |
33
|
|
|
|
34
|
1 |
|
$action = new Action(); |
35
|
|
|
|
36
|
1 |
|
$action->setArguments(json_encode(['file'=>'/tmp/testfile.log', 'text'=>'testtext'])); |
37
|
1 |
|
$action->setType('real'); |
38
|
1 |
|
$action->setAlias('file.write'); |
39
|
1 |
|
$action->setDevice($device); |
40
|
1 |
|
$action->setName("Write file to disk"); |
41
|
1 |
|
$action->setExecutor('FileWriter:write'); |
42
|
|
|
|
43
|
1 |
|
$manager->persist($action); |
44
|
|
|
|
45
|
1 |
|
$trigger = new Trigger(); |
46
|
1 |
|
$trigger->setVariable($variable); |
47
|
1 |
|
$trigger->setIsEnabled(true); |
48
|
1 |
|
$trigger->setSign('>'); |
49
|
1 |
|
$trigger->setState(false); |
50
|
1 |
|
$trigger->setValue(20); |
51
|
1 |
|
$trigger->setName("Test variable hook"); |
52
|
1 |
|
$trigger->onActivate = $action; |
53
|
1 |
|
$trigger->activateParams = '{"text":"onActivate text"}'; |
54
|
|
|
|
55
|
1 |
|
$trigger->onDeactivate = $action; |
56
|
1 |
|
$trigger->deactivateParams = '{"text":"onDeactivate text"}'; |
57
|
|
|
|
58
|
|
|
|
59
|
1 |
|
$manager->persist($trigger); |
60
|
|
|
|
61
|
|
|
|
62
|
1 |
|
$manager->flush(); |
63
|
1 |
|
} |
64
|
|
|
} |
65
|
|
|
|