На этом с форматом разобрались и отложили всё на праздничные выходные
This commit is contained in:
AidarKC
2026-01-10 01:47:00 +03:00
parent 9d0da4b39f
commit 973a632b85
4 changed files with 169 additions and 30 deletions
@@ -1,31 +1,33 @@
package shine.db;
/**
* shine.db.MsgSubType — единое место для ВСЕХ subType сообщений (msg_sub_type).
* MsgSubType — единое место для ВСЕХ subType сообщений (msg_sub_type).
*
* Правило:
* - НИКАКИХ "магических чисел" subType по проекту.
* - В тестах, в body-классах и в SQL-триггерах используем только эти константы.
*
* Важно:
* - Значения менять после релиза нельзя (иначе сломается совместимость).
* ВАЖНО:
* - Значения должны совпадать с body-классами (TextBody/ReactionBody/ConnectionBody/UserParamBody/HeaderBody).
* - После релиза менять числа нельзя (иначе ломается совместимость данных).
*/
public final class MsgSubType {
private MsgSubType() {}
/* ===================== HEADER (msg_type=0) ===================== */
/** HeaderBody: subType всегда 0 (compat). */
public static final short HEADER_COMPAT = 0;
/* ===================== TEXT (msg_type=1) ===================== */
/** Новое сообщение (начало ветки). */
/** Новая публикация. */
public static final short TEXT_NEW = 1;
/** Ответ на сообщение (reply). */
/** Ответ (reply). */
public static final short TEXT_REPLY = 2;
/** Репост (repost). */
public static final short TEXT_REPOST = 3;
/** Редактирование (edit). ВАЖНО: серверное значение = 10. */
/** Редактирование (edit). */
public static final short TEXT_EDIT = 10;
/* ===================== REACTION (msg_type=2) ===================== */
@@ -34,6 +36,11 @@ public final class MsgSubType {
public static final short REACTION_LIKE = 1;
/* ===================== CONNECTION (msg_type=3) ===================== */
/**
* Совпадает с ConnectionBody:
* SET: FRIEND=10, CONTACT=20, FOLLOW=30
* UNSET: UNFRIEND=11, UNCONTACT=21, UNFOLLOW=31
*/
/** Добавить в друзья. */
public static final short CONNECTION_FRIEND = 10;
@@ -41,15 +48,26 @@ public final class MsgSubType {
/** Удалить из друзей. */
public static final short CONNECTION_UNFRIEND = 11;
/** Добавить в контакты. */
public static final short CONNECTION_CONTACT = 20;
/** Удалить из контактов. */
public static final short CONNECTION_UNCONTACT = 21;
/** Подписаться (follow). */
public static final short CONNECTION_FOLLOW = 30;
/** Отписаться (unfollow). */
public static final short CONNECTION_UNFOLLOW = 31;
//
// /** Заблокировать. */
// public static final short CONNECTION_BLOCK = 30;
//
// /** Разблокировать. */
// public static final short CONNECTION_UNBLOCK = 31;
/* ===================== USER_PARAM (msg_type=4) ===================== */
/** Параметр профиля key/value (обе строки). */
public static final short USER_PARAM_TEXT_TEXT = 1;
/* ===================== РЕЗЕРВ НА БУДУЩЕЕ ===================== */
// Если позже захочешь BLOCK/UNBLOCK — лучше добавить НОВЫЕ значения,
// не трогая 10/20/30 и 11/21/31 (например, 40/41).
// public static final short CONNECTION_BLOCK = 40;
// public static final short CONNECTION_UNBLOCK = 41;
}