1: <?php
2: namespace Mapbender\MonitoringBundle\Entity;
3: use Doctrine\ORM\Mapping as ORM;
4: use Doctrine\Common\Collections\ArrayCollection;
5: use Symfony\Component\Validator\Constraints as Assert;
6:
7: /**
8: * Description of MonitoringDefinition
9: *
10: * @author apour
11: * @ORM\Entity
12: */
13: class MonitoringJob {
14: public static $STATUS_SUCCESS = "SUCCESS";
15: public static $STATUS_TIMEOUT = "TIMEOUT";
16: public static $STATUS_FAIL = "FAIL";
17: public static $STATUS_EXCEPTION = "EXCEPTION";
18: public static $STATUS_ERROR = "ERROR";
19: public static $STATUS_EXCEPT_TIME = "EXCEPT TIME";
20: public static $STATUS_DISABLED = "DISABLED";
21:
22: /**
23: *
24: * @ORM\Id
25: * @ORM\Column(type="integer")
26: * @ORM\GeneratedValue(strategy="AUTO")
27: */
28: protected $id;
29:
30: /**
31: *
32: * @ORM\Column(type="datetime", nullable=true)
33: */
34: protected $timestamp;
35:
36: /**
37: *
38: * @ORM\Column(type="float", nullable=true)
39: */
40: protected $latency;
41:
42: /**
43: *
44: * @ORM\Column(type="boolean", nullable=true)
45: */
46: protected $changed = false;
47:
48: /**
49: *
50: * @ORM\Column(type="text", nullable=true)
51: */
52: protected $result;
53:
54: /**
55: *
56: * @ORM\Column(type="string", nullable=true)
57: */
58: protected $status;
59:
60: /**
61: *
62: * @ORM\ManyToOne(targetEntity="MonitoringDefinition", inversedBy="monitoringJobs")
63: */
64: protected $monitoringDefinition;
65:
66:
67:
68:
69: public function __construct(){
70: $this->timestamp = new \DateTime();
71: $this->status = MonitoringJob::$STATUS_FAIL;
72: }
73:
74: /**
75: * Get id
76: *
77: * @return integer
78: */
79: public function getId()
80: {
81: return $this->id;
82: }
83:
84: /**
85: * Set timestamp
86: *
87: * @param string $timestamp
88: */
89: public function setTimestamp($timestamp)
90: {
91: $this->timestamp = $timestamp;
92: }
93:
94: /**
95: * Get timestamp
96: *
97: * @return string
98: */
99: public function getTimestamp()
100: {
101: return $this->timestamp;
102: }
103:
104: /**
105: * Set latency
106: *
107: * @param string $latency
108: */
109: public function setLatency($latency)
110: {
111: $this->latency = $latency;
112: }
113:
114: /**
115: * Get latency
116: *
117: * @return string
118: */
119: public function getLatency()
120: {
121: return $this->latency;
122: }
123:
124: /**
125: * Set changed
126: *
127: * @param string $changed
128: */
129: public function setChanged($changed)
130: {
131: $this->changed = $changed;
132: }
133:
134: /**
135: * Get changed
136: *
137: * @return string
138: */
139: public function getChanged()
140: {
141: return $this->changed;
142: }
143:
144: /**
145: * Set result
146: *
147: * @param string $result
148: */
149: public function setResult($result)
150: {
151: $this->result = $result;
152: }
153:
154: /**
155: * Get result
156: *
157: * @return string
158: */
159: public function getResult()
160: {
161: return $this->result;
162: }
163:
164: /**
165: * Set monitoringDefinition
166: *
167: * @param Mapbender\MonitoringBundle\Entity\MonitoringDefinition $monitoringDefinition
168: */
169: public function setMonitoringDefinition(\Mapbender\MonitoringBundle\Entity\MonitoringDefinition $monitoringDefinition)
170: {
171: $this->monitoringDefinition = $monitoringDefinition;
172: }
173:
174: /**
175: * Get monitoringDefinition
176: *
177: * @return Mapbender\MonitoringBundle\Entity\MonitoringDefinition
178: */
179: public function getMonitoringDefinition()
180: {
181: return $this->monitoringDefinition;
182: }
183:
184: /**
185: * Set status
186: *
187: * @param string $status
188: */
189: public function setStatus($status)
190: {
191: $this->status = $status;
192: }
193:
194: /**
195: * Get status
196: *
197: * @return string
198: */
199: public function getStatus()
200: {
201: return $this->status;
202: }
203: }
204: