4 @link: http://hierarchical-cluster-engine.com/ 5 @copyright: Copyright © 2013-2014 IOIX Ukraine 6 @license: http://hierarchical-cluster-engine.com/license/ 13 from Constants
import EVENT_TYPES, LOGGER_NAME
14 from EventObjects
import GeneralResponse
15 from EventObjects
import DeleteTask
18 logger = logging.getLogger(LOGGER_NAME)
20 CONFIG_SECTION =
"ClientInterfaceService" 26 SERVER_TCP =
"server_tcp" 27 SERVER_INPROC =
"server" 28 CONFIG_SERVER_HOST =
"serverHost" 29 CONFIG_SERVER_PORT =
"serverPort" 30 TASKS_MANAGER_CLIENT =
"clientTasksManager" 31 EXECUTION_ENVIRONMENT_MANAGER_CLINET =
"clientExecutionEnvironmentManager" 38 def __init__(self, configParser, connectBuilderLight):
42 super(ClientInterfaceService, self).
__init__()
50 serverAddrTcp = serverHost +
":" + str(serverPort)
54 serverConnectionInproc = connectBuilderLight.build(consts.SERVER_CONNECT, serverAddrInproc)
55 serverConnectionTcp = connectBuilderLight.build(consts.SERVER_CONNECT, serverAddrTcp, consts.TCP_TYPE)
56 taskManagerConnection = connectBuilderLight.build(consts.CLIENT_CONNECT, clientTaskManager)
57 eeManagerConnection = connectBuilderLight.build(consts.CLIENT_CONNECT, clientExecutionEnvironmentManager)
96 if event.eventType == EVENT_TYPES.DELETE_TASK
and event.eventObj.deleteTaskId == DeleteTask.GROUP_DELETE:
101 defaultObject =
GeneralResponse(GeneralResponse.ERROR_OK,
"DTM in prestopped state")
102 responseEvent = self.
eventBuilder.build(EVENT_TYPES.GENERAL_RESPONSE, defaultObject)
103 self.
reply(event, responseEvent)
121 self.
reply(request_event, event)
123 except KeyError
as err:
124 logger.error(str(err.message))
131 event.eventObj =
None def reply(self, event, reply_event)
wrapper for sending event in reply for event
string CONFIG_SERVER_PORT
def getRequestEvent(self, event)
get request event from processEvents map
def onDTMClientRoute(self, event)
handler to route all response event to DTMClient
def registreEvent(self, event)
add event in map of processing events
string CONFIG_SERVER_HOST
def onEEManagerRoute(self, event)
handler to route all event to EEManager
GeneralResponse event object, represents general state response for multipurpose usage.
def setEventHandler(self, eventType, handler)
set event handler rewrite the current handler for eventType
def addConnection(self, name, connection)
This is app base class for management server connection end-points and parallel transport messages pr...
def __init__(self, configParser, connectBuilderLight)
constructor initialise all connections and event handlers
def send(self, connect_name, event)
send event
string EXECUTION_ENVIRONMENT_MANAGER_CLINET
def unregisteEvent(self, event)
delete event in map of processing events
The gateway for dmt client communications.
string TASKS_MANAGER_CLIENT
def onTaskManagerRoute(self, event)
handler to route all event to TaksManager