RAPP Platform API
 All Classes Namespaces Files Functions Variables Typedefs
AsyncHandler.py
Go to the documentation of this file.
1 #!/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 
4 
5 # Copyright 2015 RAPP
6 
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 
11  #http://www.apache.org/licenses/LICENSE-2.0
12 
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18 
19 # Authors: Konstantinos Panayiotou, Manos Tsardoulias
20 # contact: klpanagi@gmail.com, etsardou@iti.gr
21 
22 
23 ## @file ServiceController/ServiceControllerSync.py
24 #
25 # @copyright Rapp Projecty EU 2015
26 # @author Konstantinos Panayiotou, [klpanagi@gmail.com]
27 #
28 
29 
30 from ServiceControllerBase import *
31 
32 # high-level interface for asynchronously executing callables.
33 from concurrent.futures import as_completed
34 
35 
36 class AsyncHandler(object):
37  """ Synchronous service controller class implementation. """
38 
39  def __init__(self, future):
40  """! Constructor
41 
42  """
43  self.__future = future
44 
45 
46  """! Wait for response.
47 
48  @param timeout - Optional argument. Set timeout for waiting for a response.
49  @returns resp - Response object
50  """
51  def wait(self, timeout=None):
52  resp = self.__future.result()
53  return resp