08 01 25
Помелоги поменял
This commit is contained in:
parent
7a167b470a
commit
4c87207129
@ -1,2 +1,6 @@
|
|||||||
Сделать возможность убрать свой лайк. (пока не надо а сложность что надо больше проверок) - хотя можно и без проверки, просто за двойной лайк или за снятие двойное лайка. Будет двойное проникновение :)) тому кто изменил код клиента и убрал проверку на клиенте - и блокчейн заблокируется и всё.
|
Сделать возможность убрать свой лайк. (пока не надо а сложность что надо больше проверок) - хотя можно и без проверки, просто за двойной лайк или за снятие двойное лайка. Будет двойное проникновение :)) тому кто изменил код клиента и убрал проверку на клиенте - и блокчейн заблокируется и всё.
|
||||||
поэтому просто на каждую реакцию добавиться убрать эту ракцию .
|
поэтому просто на каждую реакцию добавиться убрать эту ракцию .
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
сделать сессион пасворд тоже ключём подписи устройства!!
|
||||||
@ -10,8 +10,8 @@ public final class LineIndex {
|
|||||||
private LineIndex() {}
|
private LineIndex() {}
|
||||||
|
|
||||||
public static final short HEADER = 0; // genesis / идентификация
|
public static final short HEADER = 0; // genesis / идентификация
|
||||||
public static final short TEXT = 1; // сообщения
|
public static final short TEXT = 1; // сообщения да надо
|
||||||
public static final short REACTION = 2; // реакции
|
public static final short REACTION = 2; // реакции не надо
|
||||||
public static final short CONNECTION = 3; // связи (friend/contact/follow)
|
public static final short CONNECTION = 3; // связи (friend/contact/follow) да надо
|
||||||
public static final short USER_PARAM = 4; // параметры профиля
|
public static final short USER_PARAM = 4; // параметры профиля да надо
|
||||||
}
|
}
|
||||||
@ -0,0 +1,55 @@
|
|||||||
|
package blockchain;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* shine.db.MsgSubType — единое место для ВСЕХ subType сообщений (msg_sub_type).
|
||||||
|
*
|
||||||
|
* Правило:
|
||||||
|
* - НИКАКИХ "магических чисел" subType по проекту.
|
||||||
|
* - В тестах, в body-классах и в SQL-триггерах используем только эти константы.
|
||||||
|
*
|
||||||
|
* Важно:
|
||||||
|
* - Значения менять после релиза нельзя (иначе сломается совместимость).
|
||||||
|
*/
|
||||||
|
public final class MsgSubType {
|
||||||
|
|
||||||
|
private MsgSubType() {}
|
||||||
|
|
||||||
|
/* ===================== TEXT (msg_type=1) ===================== */
|
||||||
|
|
||||||
|
/** Новое сообщение (начало ветки). */
|
||||||
|
public static final short TEXT_NEW = 1;
|
||||||
|
|
||||||
|
/** Ответ на сообщение (reply). */
|
||||||
|
public static final short TEXT_REPLY = 2;
|
||||||
|
|
||||||
|
/** Репост (repost). */
|
||||||
|
public static final short TEXT_REPOST = 3;
|
||||||
|
|
||||||
|
/** Редактирование (edit). ВАЖНО: серверное значение = 10. */
|
||||||
|
public static final short TEXT_EDIT = 10;
|
||||||
|
|
||||||
|
/* ===================== REACTION (msg_type=2) ===================== */
|
||||||
|
|
||||||
|
/** Лайк (LIKE). */
|
||||||
|
public static final short REACTION_LIKE = 1;
|
||||||
|
|
||||||
|
/* ===================== CONNECTION (msg_type=3) ===================== */
|
||||||
|
|
||||||
|
/** Добавить в друзья. */
|
||||||
|
public static final short CONNECTION_FRIEND = 10;
|
||||||
|
|
||||||
|
/** Удалить из друзей. */
|
||||||
|
public static final short CONNECTION_UNFRIEND = 11;
|
||||||
|
|
||||||
|
/** Подписаться (follow). */
|
||||||
|
public static final short CONNECTION_FOLLOW = 20;
|
||||||
|
|
||||||
|
/** Отписаться (unfollow). */
|
||||||
|
public static final short CONNECTION_UNFOLLOW = 21;
|
||||||
|
|
||||||
|
/** Заблокировать. */
|
||||||
|
public static final short CONNECTION_BLOCK = 30;
|
||||||
|
|
||||||
|
/** Разблокировать. */
|
||||||
|
public static final short CONNECTION_UNBLOCK = 31;
|
||||||
|
}
|
||||||
@ -1,7 +1,6 @@
|
|||||||
package shine.db;
|
package shine.db;
|
||||||
|
|
||||||
import utils.config.AppConfig;
|
import utils.config.AppConfig;
|
||||||
import utils.config.MsgSubType;
|
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@ -371,14 +370,14 @@ public class DatabaseInitializer {
|
|||||||
replies_count
|
replies_count
|
||||||
)
|
)
|
||||||
SELECT
|
SELECT
|
||||||
substr(NEW.to_bch_name, 1, length(NEW.to_bch_name) - 3),
|
substr(NEW.to_bch_name, 1, length(NEW.to_bch_name) - 4),
|
||||||
NEW.to_bch_name,
|
NEW.to_bch_name,
|
||||||
NEW.to_block_global_number,
|
NEW.to_block_global_number,
|
||||||
NEW.to_block_hashe,
|
NEW.to_block_hashe,
|
||||||
1,
|
1,
|
||||||
0
|
0
|
||||||
WHERE NEW.to_bch_name IS NOT NULL
|
WHERE NEW.to_bch_name IS NOT NULL
|
||||||
AND length(NEW.to_bch_name) > 3
|
AND length(NEW.to_bch_name) > 4
|
||||||
AND NEW.to_block_global_number IS NOT NULL
|
AND NEW.to_block_global_number IS NOT NULL
|
||||||
AND NEW.to_block_hashe IS NOT NULL
|
AND NEW.to_block_hashe IS NOT NULL
|
||||||
ON CONFLICT(to_login, to_bch_name, to_block_global_number, to_block_hash)
|
ON CONFLICT(to_login, to_bch_name, to_block_global_number, to_block_hash)
|
||||||
@ -402,14 +401,14 @@ public class DatabaseInitializer {
|
|||||||
replies_count
|
replies_count
|
||||||
)
|
)
|
||||||
SELECT
|
SELECT
|
||||||
substr(NEW.to_bch_name, 1, length(NEW.to_bch_name) - 3),
|
substr(NEW.to_bch_name, 1, length(NEW.to_bch_name) - 4),
|
||||||
NEW.to_bch_name,
|
NEW.to_bch_name,
|
||||||
NEW.to_block_global_number,
|
NEW.to_block_global_number,
|
||||||
NEW.to_block_hashe,
|
NEW.to_block_hashe,
|
||||||
0,
|
0,
|
||||||
1
|
1
|
||||||
WHERE NEW.to_bch_name IS NOT NULL
|
WHERE NEW.to_bch_name IS NOT NULL
|
||||||
AND length(NEW.to_bch_name) > 3
|
AND length(NEW.to_bch_name) > 4
|
||||||
AND NEW.to_block_global_number IS NOT NULL
|
AND NEW.to_block_global_number IS NOT NULL
|
||||||
AND NEW.to_block_hashe IS NOT NULL
|
AND NEW.to_block_hashe IS NOT NULL
|
||||||
ON CONFLICT(to_login, to_bch_name, to_block_global_number, to_block_hash)
|
ON CONFLICT(to_login, to_bch_name, to_block_global_number, to_block_hash)
|
||||||
@ -442,7 +441,7 @@ public class DatabaseInitializer {
|
|||||||
edits_count
|
edits_count
|
||||||
)
|
)
|
||||||
SELECT
|
SELECT
|
||||||
substr(NEW.to_bch_name, 1, length(NEW.to_bch_name) - 3),
|
substr(NEW.to_bch_name, 1, length(NEW.to_bch_name) - 4),
|
||||||
NEW.to_bch_name,
|
NEW.to_bch_name,
|
||||||
NEW.to_block_global_number,
|
NEW.to_block_global_number,
|
||||||
NEW.to_block_hashe,
|
NEW.to_block_hashe,
|
||||||
@ -450,7 +449,7 @@ public class DatabaseInitializer {
|
|||||||
0,
|
0,
|
||||||
1
|
1
|
||||||
WHERE NEW.to_bch_name IS NOT NULL
|
WHERE NEW.to_bch_name IS NOT NULL
|
||||||
AND length(NEW.to_bch_name) > 3
|
AND length(NEW.to_bch_name) > 4
|
||||||
AND NEW.to_block_global_number IS NOT NULL
|
AND NEW.to_block_global_number IS NOT NULL
|
||||||
AND NEW.to_block_hashe IS NOT NULL
|
AND NEW.to_block_hashe IS NOT NULL
|
||||||
ON CONFLICT(to_login, to_bch_name, to_block_global_number, to_block_hash)
|
ON CONFLICT(to_login, to_bch_name, to_block_global_number, to_block_hash)
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
package utils.config;
|
package shine.db;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* MsgSubType — единое место для ВСЕХ subType сообщений (msg_sub_type).
|
* shine.db.MsgSubType — единое место для ВСЕХ subType сообщений (msg_sub_type).
|
||||||
*
|
*
|
||||||
* Правило:
|
* Правило:
|
||||||
* - НИКАКИХ "магических чисел" subType по проекту.
|
* - НИКАКИХ "магических чисел" subType по проекту.
|
||||||
@ -12,7 +12,7 @@ import server.logic.ws_protocol.JSON.entyties.Net_Request;
|
|||||||
* "requestId": "test-add-1",
|
* "requestId": "test-add-1",
|
||||||
* "payload": {
|
* "payload": {
|
||||||
* "login": "anya",
|
* "login": "anya",
|
||||||
* "blockchainName": "anya0001",
|
* "blockchainName": "anya-001",
|
||||||
* "solanaKey": "base64-ed25519-public-key-login",
|
* "solanaKey": "base64-ed25519-public-key-login",
|
||||||
* "blockchainKey": "base64-ed25519-public-key-blockchain",
|
* "blockchainKey": "base64-ed25519-public-key-blockchain",
|
||||||
* "deviceKey": "base64-ed25519-public-key-device",
|
* "deviceKey": "base64-ed25519-public-key-device",
|
||||||
|
|||||||
76
src/main/запросы.sh
Normal file
76
src/main/запросы.sh
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# OUTFILE:
|
||||||
|
# - если пустая строка ("") -> в файл НЕ пишем, только в буфер
|
||||||
|
# - если не пустая -> пишем в файл + (если есть wl-copy) копируем в буфер
|
||||||
|
OUTFILE="all_files.txt"
|
||||||
|
# OUTFILE=""
|
||||||
|
|
||||||
|
# === НАСТРОЙКА: перечисляй тут пути (каталоги и/или конкретные файлы) ===
|
||||||
|
# - Если путь указывает на ФАЙЛ: берём его ВСЕГДА, даже если это не .java
|
||||||
|
# - Если путь указывает на КАТАЛОГ: рекурсивно берём только *.java внутри
|
||||||
|
# - Пустые строки игнорируются
|
||||||
|
TARGETS=(
|
||||||
|
#"./src/main/java"
|
||||||
|
# "./server"
|
||||||
|
# /home/ai/work/SHiNE/SHiNE-server/shine-server-blockchain
|
||||||
|
"/home/ai/work/SHiNE/SHiNE-server/shine-server-blockchain"
|
||||||
|
"/home/ai/work/SHiNE/SHiNE-server/shine-server-db"
|
||||||
|
)
|
||||||
|
|
||||||
|
RED=$'\033[0;31m'
|
||||||
|
RESET=$'\033[0m'
|
||||||
|
|
||||||
|
warn_red() {
|
||||||
|
echo "${RED}WARN:${RESET} $*" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
# временные файлы
|
||||||
|
TMP_LIST="$(mktemp)"
|
||||||
|
TMP_OUT="$(mktemp)"
|
||||||
|
trap 'rm -f "$TMP_LIST" "$TMP_OUT"' EXIT
|
||||||
|
|
||||||
|
# собрать пути
|
||||||
|
for path in "${TARGETS[@]}"; do
|
||||||
|
path="$(printf '%s' "$path" | sed -e 's/^[[:space:]]\+//' -e 's/[[:space:]]\+$//')"
|
||||||
|
[[ -z "$path" ]] && continue
|
||||||
|
|
||||||
|
if [[ -f "$path" ]]; then
|
||||||
|
printf '%s\n' "$path" >> "$TMP_LIST"
|
||||||
|
elif [[ -d "$path" ]]; then
|
||||||
|
find "$path" -type f -name "*.java" >> "$TMP_LIST"
|
||||||
|
else
|
||||||
|
warn_red "Не найдено (пропускаю): $path"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
# склеиваем в TMP_OUT
|
||||||
|
sort -u "$TMP_LIST" | while IFS= read -r f; do
|
||||||
|
if [[ ! -f "$f" ]]; then
|
||||||
|
warn_red "Файл исчез (пропускаю): $f"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
cat "$f" >> "$TMP_OUT"
|
||||||
|
echo >> "$TMP_OUT"
|
||||||
|
done
|
||||||
|
|
||||||
|
# если OUTFILE не пуст — пишем файл
|
||||||
|
if [[ -n "${OUTFILE:-}" ]]; then
|
||||||
|
: > "$OUTFILE"
|
||||||
|
cat "$TMP_OUT" > "$OUTFILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# копирование в буфер (Wayland), если доступно
|
||||||
|
if command -v wl-copy >/dev/null 2>&1; then
|
||||||
|
wl-copy < "$TMP_OUT"
|
||||||
|
else
|
||||||
|
warn_red "wl-copy не найден — в буфер не скопировано."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Готово!"
|
||||||
|
if [[ -n "${OUTFILE:-}" ]]; then
|
||||||
|
echo "Все файлы собраны в $OUTFILE"
|
||||||
|
else
|
||||||
|
echo "OUTFILE пуст — в файл не писали, только буфер (если wl-copy доступен)"
|
||||||
|
fi
|
||||||
Loading…
Reference in New Issue
Block a user