summaryrefslogtreecommitdiff
path: root/AudioManagerCore/include/CAmTelnetMenuHelper.h
diff options
context:
space:
mode:
Diffstat (limited to 'AudioManagerCore/include/CAmTelnetMenuHelper.h')
-rw-r--r--AudioManagerCore/include/CAmTelnetMenuHelper.h204
1 files changed, 0 insertions, 204 deletions
diff --git a/AudioManagerCore/include/CAmTelnetMenuHelper.h b/AudioManagerCore/include/CAmTelnetMenuHelper.h
deleted file mode 100644
index 7038cb3..0000000
--- a/AudioManagerCore/include/CAmTelnetMenuHelper.h
+++ /dev/null
@@ -1,204 +0,0 @@
-/**
- * SPDX license identifier: MPL-2.0
- *
- * Copyright (C) 2012, BMW AG
- *
- * This file is part of GENIVI Project AudioManager.
- *
- * Contributions are licensed to the GENIVI Alliance under one or more
- * Contribution License Agreements.
- *
- * \copyright
- * This Source Code Form is subject to the terms of the
- * Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
- * this file, You can obtain one at http://mozilla.org/MPL/2.0/.
- *
- *
- * \author Christian Linke, christian.linke@bmw.de BMW 2011,2012
- * \author Frank Herchet, frank.fh.herchet@bmw.de BMW 2012
- *
- * \file CAmTelnetMenuHelper.h
- * For further information see http://www.genivi.org/.
- *
- */
-
-// Local header
-#ifndef CAMTELNETMENUHELPER_H_
-#define CAMTELNETMENUHELPER_H_
-
-// Standard header
-#include <iostream>
-#include <queue>
-#include <map>
-#include <string>
-#include <sstream>
-#include <vector>
-#include <sys/socket.h>
-#include "audiomanagertypes.h"
-
-namespace am
-{
-
-class CAmTelnetServer;
-class IAmDatabaseHandler;
-class CAmCommandSender;
-class CAmRoutingSender;
-class CAmControlSender;
-class CAmCommandReceiver;
-class CAmRoutingReceiver;
-class CAmControlReceiver;
-
-class CAmRouter;
-class CAmSocketHandler;
-
-/**
- * helper class for CAmTelnetServer
- */
-class CAmTelnetMenuHelper
-{
-public:
-
- enum EMainState
- {
- eRootState = 0, eListState, eInfoState, eGetState, eSetState
- };
-
- CAmTelnetMenuHelper(CAmSocketHandler *iSocketHandler, CAmCommandSender *iCommandSender, CAmCommandReceiver *iCommandReceiver, CAmRoutingSender *iRoutingSender, CAmRoutingReceiver *iRoutingReceiver, CAmControlSender *iControlSender, CAmControlReceiver *iControlReceiver, IAmDatabaseHandler *iDatabasehandler, CAmRouter *iRouter, CAmTelnetServer *iTelnetServer);
-
- ~CAmTelnetMenuHelper();
-
- void newSocketConnection(int filedescriptor);
-
- void socketConnectionsClosed(int filedescriptor);
-
- void enterCmdQueue(std::queue<std::string> &CmdQueue, int &filedescriptor);
-
-private:
-
- void createCommandMaps();
- void sendError(int & filedescriptor, std::string error_string);
- void sendTelnetLine(int & filedescriptor, std::stringstream &line);
- void sendCurrentCmdPrompt(int &filedescriptor);
-
- // COMMON commands
- static void oneStepBackCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void oneStepBackCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void exitCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void exitCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void helpCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void helpCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
-
- // ROOT commands
- static void rootGetCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void rootGetCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void rootSetCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void rootSetCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void rootListCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void rootListCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void rootInfoCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void rootInfoCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
-
- // LIST commands
- static void listConnectionsCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listConnectionsCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listSourcesCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listSourcesCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listSinksCommands(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listSinksCommandsExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listCrossfaders(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listCrossfadersExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listDomainsCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listDomainsCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listGatewaysCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listGatewaysCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listPluginsCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listPluginsCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listMainConnectionsCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listMainConnectionsCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listMainSourcesCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listMainSourcesCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void listMainSinksCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void listMainSinksCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
-
- // SET commands
- static void setRoutingCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setRoutingCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setConnection(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setConnectionExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setDisconnectConnId(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setDisconnectConnIdExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setSourceSoundProperties(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setSourceSoundPropertiesExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setSinkSoundProperty(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setSinkSoundPropertyExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setSinkVolume(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setSinkVolumeExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setVolumeStep(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setVolumeStepExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setSinkMuteState(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setSinkMuteStateExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void setSourceSoundProperty(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void setSourceSoundPropertyExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
-
- // GET commands
- static void getRoutingCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void getRoutingCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void getSenderversionCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void getSenderversionCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void getReceiverversionCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void getReceiverversionCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
-
- // INFO commands
- static void infoSystempropertiesCommand(std::queue<std::string> & CmdQueue, int & filedescriptor);
- void infoSystempropertiesCommandExec(std::queue<std::string> & CmdQueue, int & filedescriptor);
- static void infoDumpCommand(std::queue<std::string>& CmdQueue, int& filedescriptor);
- void infoDumpCommandExec(std::queue<std::string>& CmdQueue, int& filedescriptor);
-
-private:
-
- typedef void (*pCommandPrototype)(std::queue<std::string>& msg, int & filedescriptor);
-
- struct sCommandPrototypeInfo
- {
- std::string info;
- pCommandPrototype CommandPrototype;
-
- // default contructor to set NULL
- sCommandPrototypeInfo() :
- info(""), CommandPrototype(NULL)
- {
- }
-
- // a small contructor
- sCommandPrototypeInfo(std::string MyInfo, pCommandPrototype MyCommandPrototype) :
- info(MyInfo), CommandPrototype(MyCommandPrototype)
- {
- }
- };
-
- typedef std::map<std::string, sCommandPrototypeInfo> tCommandMap;
- std::map<int, EMainState> mCurrentMainStateMap; //!< int filedescriptor of socket connection; EMainState state of current telnet session
-
- static CAmTelnetMenuHelper* instance;
- CAmTelnetServer *mpTelenetServer;
- CAmSocketHandler *mpSocketHandler;
- CAmCommandSender *mpCommandSender;
- CAmCommandReceiver *mpCommandReceiver;
- CAmRoutingSender *mpRoutingSender;
- CAmRoutingReceiver *mpRoutingReceiver;
- CAmControlSender *mpControlSender;
- CAmControlReceiver *mpControlReceiver;
- IAmDatabaseHandler *mpDatabasehandler;
- CAmRouter *mpRouter;
-
- tCommandMap mRootCommands;
- tCommandMap mListCommands;
- tCommandMap mGetCommands;
- tCommandMap mSetCommands;
- tCommandMap mInfoCommands;
-
-};
-// class CAmTelnetMenuHelper
-}// namespace am
-
-#endif // CAMTELNETMENUHELPER_H_