Robot Framework
posix.py
Go to the documentation of this file.
1
# Copyright 2008-2015 Nokia Networks
2
# Copyright 2016- Robot Framework Foundation
3
#
4
# Licensed under the Apache License, Version 2.0 (the "License");
5
# you may not use this file except in compliance with the License.
6
# You may obtain a copy of the License at
7
#
8
# http://www.apache.org/licenses/LICENSE-2.0
9
#
10
# Unless required by applicable law or agreed to in writing, software
11
# distributed under the License is distributed on an "AS IS" BASIS,
12
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
# See the License for the specific language governing permissions and
14
# limitations under the License.
15
16
from
signal
import
setitimer, signal, SIGALRM, ITIMER_REAL
17
18
19
class
Timeout
:
20
21
def
__init__
(self, timeout, error):
22
self.
_timeout
_timeout = timeout
23
self.
_error
_error = error
24
25
def
execute
(self, runnable):
26
self.
_start_timer
_start_timer()
27
try
:
28
return
runnable()
29
finally
:
30
self.
_stop_timer
_stop_timer()
31
32
def
_start_timer
(self):
33
signal(SIGALRM, self.
_raise_timeout_error
_raise_timeout_error)
34
setitimer(ITIMER_REAL, self.
_timeout
_timeout)
35
36
def
_raise_timeout_error
(self, signum, frame):
37
raise
self.
_error
_error
38
39
def
_stop_timer
(self):
40
setitimer(ITIMER_REAL, 0)
robot.running.timeouts.posix.Timeout
Definition:
posix.py:19
robot.running.timeouts.posix.Timeout._error
_error
Definition:
posix.py:23
robot.running.timeouts.posix.Timeout.__init__
def __init__(self, timeout, error)
Definition:
posix.py:21
robot.running.timeouts.posix.Timeout._timeout
_timeout
Definition:
posix.py:22
robot.running.timeouts.posix.Timeout._raise_timeout_error
def _raise_timeout_error(self, signum, frame)
Definition:
posix.py:36
robot.running.timeouts.posix.Timeout._start_timer
def _start_timer(self)
Definition:
posix.py:32
robot.running.timeouts.posix.Timeout.execute
def execute(self, runnable)
Definition:
posix.py:25
robot.running.timeouts.posix.Timeout._stop_timer
def _stop_timer(self)
Definition:
posix.py:39
src
robot
running
timeouts
posix.py
Generated by
1.9.1