blob: 9d4106653ddb12cd78ad0a4e177f690d89536f53 [file] [log] [blame]
/*********************************************************************
* Copyright (c) 2017 fortiss GmbH
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
**********************************************************************/
#ifndef SRC_MODULES_XQUERY_XQUERYCLIENT_H_
#define SRC_MODULES_XQUERY_XQUERYCLIENT_H_
#include <comlayer.h>
#include <extevhan.h>
using namespace forte::com_infra;
class CXqueryClientLayer : public forte::com_infra::CComLayer{
public:
CXqueryClientLayer(forte::com_infra::CComLayer* pa_poUpperLayer, forte::com_infra::CBaseCommFB* pa_poComFB);
virtual ~CXqueryClientLayer();
EComResponse sendData(void *pa_pvData, unsigned int pa_unSize);
EComResponse recvData(const void *pa_pvData, unsigned int pa_unSize);
EComResponse processInterrupt();
const char * getCommand(){
return command;
}
int getSfd(){
return sfd;
}
private:
void closeConnection();
EComResponse openConnection(char *pa_acLayerParameter);
bool parseParameters(char *pa_acLayerParameter);
void openDB();
int sfd;
char *host;
char *port;
char *dbName;
char *usr;
char *psw;
static const char *scmParameterSeperator;
char *command;
};
#endif /* SRC_MODULES_XQUERY_XQUERYCLIENT_H_ */