summaryrefslogtreecommitdiffstats
path: root/voice/voiceagentmodel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'voice/voiceagentmodel.cpp')
-rw-r--r--voice/voiceagentmodel.cpp223
1 files changed, 0 insertions, 223 deletions
diff --git a/voice/voiceagentmodel.cpp b/voice/voiceagentmodel.cpp
deleted file mode 100644
index 90ddf01..0000000
--- a/voice/voiceagentmodel.cpp
+++ /dev/null
@@ -1,223 +0,0 @@
-/*
- * Copyright (C) 2019 Konsulko Group
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include "voiceagentmodel.h"
-#include "voiceagentprofile.h"
-#include <QVector>
-#include <QDebug>
-
-VoiceAgentModel::VoiceAgentModel(QObject *parent)
- : QAbstractListModel(parent)
-{
-}
-
-QVariant VoiceAgentModel::data(const QModelIndex &index, int role) const
-{
- QVariant ret;
-
- if (!index.isValid())
- return ret;
-
- if (index.row() < 0 || index.row() >= m_agents.count())
- return ret;
-
- const VoiceAgentProfile *vap = m_agents[index.row()];
- switch (role) {
- case IdRole:
- return vap->vaid();
- case NameRole:
- return vap->name();
- case WuwRole:
- return vap->activewuw();
- case AuthStateRole:
- return vap->authstate();
- case ConnStateRole:
- return vap->connstate();
- case DialogStateRole:
- return vap->dialogstate();
- case LoginParamsRole:
- return readLoginParams(index);
- case ActiveRole:
- return vap->isactive()? "active" : "inactive";
- case VendorRole:
- return vap->vendor();
- }
- return ret;
-}
-
-int VoiceAgentModel::rowCount(const QModelIndex &parent) const
-{
- Q_UNUSED(parent);
- return m_agents.count();
-}
-
-QVariantList VoiceAgentModel::readLoginParams(const QModelIndex &index) const
-{
- QVariantList ret;
-
- if (!index.isValid())
- return ret;
-
- if (index.row() < 0 || index.row() >= this->m_agents.count())
- return ret;
-
- const VoiceAgentProfile *vap = this->m_agents[index.row()];
- ret.append(vap->logincode());
- ret.append(vap->loginurl());
- ret.append(vap->isloginpairexpired()? "expired" : "valid");
- return ret;
-}
-
-void VoiceAgentModel::addAgent(VoiceAgentProfile *vap)
-{
- beginInsertRows(QModelIndex(), rowCount(), rowCount());
- m_agents.insert(rowCount(), vap);
- endInsertRows();
-}
-
-void VoiceAgentModel::removeAgent(VoiceAgentProfile *vap)
-{
- if (m_agents.isEmpty())
- return;
-
- int row = m_agents.indexOf(vap);
- beginRemoveRows(QModelIndex(), row, row);
- m_agents.removeAt(row);
- endRemoveRows();
- delete vap;
-}
-
-void VoiceAgentModel::removeAll()
-{
- if (m_agents.isEmpty())
- return;
-
- beginRemoveRows(QModelIndex(), 0, m_agents.count() -1);
- qDeleteAll(m_agents.begin(), m_agents.end());
- endRemoveRows();
- m_agents.clear();
-}
-
-bool VoiceAgentModel::agentExists(QString name, QString id, QString api) const
-{
- VoiceAgentProfile *vap = getAgentFromName(name);
- if (!vap)
- return false;
- bool sameid = id == vap->vaid();
- bool sameapi = api == vap->vaapi();
- return sameapi && (sameid || id != "UNKNOWN");
-}
-
-VoiceAgentProfile* VoiceAgentModel::getAgentFromName(QString name) const
-{
- if (m_agents.isEmpty())
- return nullptr;
-
- for (auto agent : m_agents) {
- if (agent->name() == name)
- return agent;
- }
- return nullptr;
-}
-
-VoiceAgentProfile* VoiceAgentModel::getAgentFromId(QString id) const
-{
- if (m_agents.isEmpty())
- return nullptr;
-
- for (auto agent : m_agents) {
- if (agent->vaid() == id)
- return agent;
- }
- return nullptr;
-}
-
-void VoiceAgentModel::updateAgentProperties(QString name, QString id, QString api,
- bool active, QString wuw)
-{
- QVector<int> vroles;
- VoiceAgentProfile *vap = getAgentFromName(name);
- if (!vap) {
- qWarning() << "Unknown agent";
- return;
- }
- if ((vap->vaapi() == api) && (vap->vaid() != id) && (id != "UNKNOWN")) {
- vap->setVaid(id);
- vroles.push_back(IdRole);
- }
- vap->setActive(active);
- vroles.push_back(ActiveRole);
- if (!wuw.isEmpty()) {
- vap->setWuw(wuw);
- vroles.push_back(WuwRole);
- }
- if (!vroles.isEmpty())
- emit dataChanged(indexOf(vap), indexOf(vap), vroles);
-}
-
-void VoiceAgentModel::updateAgentState(QString id)
-{
- QVector<int> vroles;
- VoiceAgentProfile *vap = getAgentFromId(id);
-
- if (!vap) {
- qWarning() << "Unknown agent";
- return;
- }
-
- vroles.push_back(AuthStateRole);
- vroles.push_back(ConnStateRole);
- vroles.push_back(DialogStateRole);
-
- if (!vroles.isEmpty())
- emit dataChanged(indexOf(vap), indexOf(vap), vroles);
-}
-
-void VoiceAgentModel::updateAgentLoginData(QString id)
-{
- QVector<int> vroles;
- VoiceAgentProfile *vap = getAgentFromId(id);
-
- if (!vap) {
- qWarning() << "Unknown agent";
- return;
- }
-
- vroles.push_back(LoginParamsRole);
- if (!vroles.isEmpty())
- emit dataChanged(indexOf(vap), indexOf(vap), vroles);
-}
-
-QModelIndex VoiceAgentModel::indexOf(VoiceAgentProfile *vap)
-{
- int row = m_agents.indexOf(vap);
- return index(row);
-}
-
-QHash<int, QByteArray> VoiceAgentModel::roleNames() const
-{
- QHash<int, QByteArray> roles;
- roles[NameRole] = "name";
- roles[IdRole] = "id";
- roles[WuwRole] = "wuw";
- roles[AuthStateRole] = "authstate";
- roles[ConnStateRole] = "connstate";
- roles[DialogStateRole] = "dialogstate";
- roles[LoginParamsRole] = "usrauth";
- roles[ActiveRole] = "active";
- roles[VendorRole] = "vendor";
- return roles;
-}