Conversation
first commit init telegram bot
add GitHub and NetAngels Interaction
тест для реализации скачивания проекта
также изменена структура бд
database improvements
интеграция бота с бд
интеграция бота с бд
# Conflicts: # src/main/java/DataBase.java # src/main/java/lib/users.db
интеграция бота с бд
реализация ssh соединения
getLoginAndPassword по токену и id VM, можно получить список вм, поднимать/опускать машины
…арь состояний пользователей
NETANGELS API - в процессе, готовые функции -
|
|
||
| //Конструктор с подключением к бд | ||
| //В переменной path должно находится расположние файла с бд (имя файла и самой таблицы должны сопадать) | ||
| public DataBase(String path) { |
There was a problem hiding this comment.
Думаю, было бы лучше принимать в аргументах и путь и имя базы данных. Тогда не придётся сплитить строку и что-то там доставать.
|
|
||
|
|
||
| //Конструктор с подключением к бд | ||
| //В переменной path должно находится расположние файла с бд (имя файла и самой таблицы должны сопадать) |
| } | ||
|
|
||
| // Добавляем запись в бд | ||
| // Этот же метод используется для изменения уже существующих данных |
There was a problem hiding this comment.
Не кажется хорошим идея использовать один и тот же метод и для добавления и для изменения данных. А это это логика даже в названии метода не прослеживается.
| // Этот же метод используется для изменения уже существующих данных | ||
| public void addData(String id, String token) throws SQLException { | ||
| // Создаем ввод команды SQLite | ||
| String query = |
There was a problem hiding this comment.
Я не помню, есть ли такая возможность в котлине, но может лучше использовать интерполяцию строк?
| try { | ||
| Statement statement = conn.createStatement(); | ||
| statement.executeUpdate(query); | ||
| } catch (Exception e) |
There was a problem hiding this comment.
Тут же может произойти какое-то исключение не связанное с тем, что такой id уже существует. В таком случае выполнение блока finally может привести ещё к какой-то ошибке. Тут нужно использовать сначала проверку на одно конкретное исключение существования id, а потом проверять отдельно на прочие исключения.
| val pullNumber = urlSplit[6] | ||
| var directoryForGitProject = "./gitCopies" | ||
| val command1 = "git clone $urlProject ${urlSplit[3]}_${urlSplit[6]}" | ||
| val command2 = "git pull origin pull/$pullNumber/head" |
| data = mapOf("api_key" to apiKey) | ||
| ) | ||
| val obj : JSONObject = response.jsonObject | ||
| print(obj) |
| channel.connect(); | ||
| int readByte = commandOutput.read(); | ||
|
|
||
| while(readByte != 0xffffffff) |
There was a problem hiding this comment.
Может лучше стоповый байт убрать в константу?
| return getInlineKeyboard(machinesList, ids) | ||
| } | ||
|
|
||
| private fun addToDataBase(id: String, token: String) |
There was a problem hiding this comment.
Зачем эта обёртка для метода, который работает с базой данных?
| } No newline at end of file | ||
| } | ||
|
|
||
| private fun manageActionVDS(bot: Bot, update: Update) { |
There was a problem hiding this comment.
Здесь и ниже идут методы, которы, как по мне, не очень связаны с логикой самого бота. Их бы лучше вынести в какой-нибудь отдельный класс.
No description provided.