diff --git a/DOC/!!! TODO что бы не забыть - для после выходных b/DOC/!!! TODO что бы не забыть - для после выходных index 3a0af397..af96b910 100644 --- a/DOC/!!! TODO что бы не забыть - для после выходных +++ b/DOC/!!! TODO что бы не забыть - для после выходных @@ -19,7 +19,15 @@ А УНИКАЛЬНЫЙ НОМЕР ЛИНИИ ЭТО ПО СУТИ НОМЕР СООБЩЕНИЯ СОЗДАВШЕГО ЛИНИЮ КАНАЛ (НУ И ФОРМАТ СООБЩЕНИЯ НАЧАЛА ЛИНИИ - КАНАЛА) -2. МОЖЕТ СДЕЛАТЬ АВТОГЕНЕРАЦИЮ ПРОСТЫНЕЙ ДЛЯ ПАРСЕРОВ (И МОЖЕТ И ХЭНДЛЕРОВ(И ТАМ ЖЕ РЕКВЕСТ ПОДГРУЗИТЬСЯ)) + + + + + + + + + 3. СООТВЕТСТВЕННО удалить НАПИСАТЬ/ПЕРОВЕРИТЬ НОРМАЛЬНЫЙ SubscriptionsDAO - ТК СТАРЫЙ РАБОТАЛ НО НА ДРУГОМ ФОРМАТЕ И ТИПО КРИВО diff --git a/shine-server-blockchain/src/main/java/blockchain/BchBlockEntry.java b/shine-server-blockchain/src/main/java/blockchain/BchBlockEntry.java index b2336648..ce2c2bc8 100644 --- a/shine-server-blockchain/src/main/java/blockchain/BchBlockEntry.java +++ b/shine-server-blockchain/src/main/java/blockchain/BchBlockEntry.java @@ -1,6 +1,3 @@ -// ======================= -// blockchain/BchBlockEntry.java (НОВАЯ ВЕРСИЯ под ТЗ) -// ======================= package blockchain; import blockchain.body.BodyRecord; diff --git a/shine-server-blockchain/src/main/java/blockchain/BchCryptoVerifier.java b/shine-server-blockchain/src/main/java/blockchain/BchCryptoVerifier.java index 0b119a2b..e6f5a3c6 100644 --- a/shine-server-blockchain/src/main/java/blockchain/BchCryptoVerifier.java +++ b/shine-server-blockchain/src/main/java/blockchain/BchCryptoVerifier.java @@ -1,6 +1,3 @@ -// ======================= -// blockchain/BchCryptoVerifier.java (НОВАЯ ВЕРСИЯ под ТЗ) -// ======================= package blockchain; import utils.crypto.Ed25519Util; diff --git a/shine-server-blockchain/src/main/java/blockchain/MsgSubType.java b/shine-server-blockchain/src/main/java/blockchain/MsgSubType.java index 7e1d9e68..07af644a 100644 --- a/shine-server-blockchain/src/main/java/blockchain/MsgSubType.java +++ b/shine-server-blockchain/src/main/java/blockchain/MsgSubType.java @@ -1,4 +1,4 @@ -package shine.db; +package blockchain; /** * MsgSubType — единое место для ВСЕХ subType сообщений (msg_sub_type). diff --git a/shine-server-blockchain/src/main/java/blockchain/body/BodyHasLine.java b/shine-server-blockchain/src/main/java/blockchain/body/BodyHasLine.java new file mode 100644 index 00000000..ebbe72be --- /dev/null +++ b/shine-server-blockchain/src/main/java/blockchain/body/BodyHasLine.java @@ -0,0 +1,19 @@ +package blockchain.body; + +/** + * BodyHasLine — для типов, которые имеют линейные поля в body: + * TEXT / CONNECTION / USER_PARAM + * + * Формат линейных полей (BigEndian) в НАЧАЛЕ bodyBytes: + * [4] prevLineNumber + * [32] prevLineHash32 + * [4] thisLineNumber + */ +public interface BodyHasLine { + + int prevLineNumber(); + + byte[] prevLineHash32(); + + int thisLineNumber(); +} \ No newline at end of file diff --git a/shine-server-blockchain/src/main/java/blockchain/body/BodyHasTarget.java b/shine-server-blockchain/src/main/java/blockchain/body/BodyHasTarget.java index 7bc23245..ea0b9764 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/BodyHasTarget.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/BodyHasTarget.java @@ -1,6 +1,3 @@ -// ======================= -// blockchain/body/BodyHasTarget.java (без изменений, оставляю как есть) -// ======================= package blockchain.body; /** diff --git a/shine-server-blockchain/src/main/java/blockchain/body/BodyRecord.java b/shine-server-blockchain/src/main/java/blockchain/body/BodyRecord.java index 5099f602..bda74f18 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/BodyRecord.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/BodyRecord.java @@ -1,6 +1,3 @@ -// ======================= -// blockchain/body/BodyRecord.java (ИЗМЕНЁННЫЙ контракт под ТЗ) -// ======================= package blockchain.body; /** diff --git a/shine-server-blockchain/src/main/java/blockchain/body/BodyRecordParser.java b/shine-server-blockchain/src/main/java/blockchain/body/BodyRecordParser.java index 05560810..8c26114e 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/BodyRecordParser.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/BodyRecordParser.java @@ -1,6 +1,3 @@ -// ======================= -// blockchain/body/BodyRecordParser.java (ИЗМЕНЁННЫЙ под новый формат) -// ======================= package blockchain.body; /** diff --git a/shine-server-blockchain/src/main/java/blockchain/body/ConnectionBody.java b/shine-server-blockchain/src/main/java/blockchain/body/ConnectionBody.java index 2ff1088d..c2979a1b 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/ConnectionBody.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/ConnectionBody.java @@ -1,9 +1,6 @@ -// ======================= -// blockchain/body/ConnectionBody.java (ИЗМЕНЁННЫЙ: bodyBytes без type/subType/version, + line fields) -// ======================= package blockchain.body; -import shine.db.MsgSubType; +import blockchain.MsgSubType; import java.nio.ByteBuffer; import java.nio.ByteOrder; diff --git a/shine-server-blockchain/src/main/java/blockchain/body/HeaderBody.java b/shine-server-blockchain/src/main/java/blockchain/body/HeaderBody.java index c438c36f..4f70b1f4 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/HeaderBody.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/HeaderBody.java @@ -1,6 +1,3 @@ -// ======================= -// blockchain/body/HeaderBody.java (ИЗМЕНЁННЫЙ: bodyBytes без type/subType/version) -// ======================= package blockchain.body; import utils.config.ShineSignatureConstants; diff --git a/shine-server-blockchain/src/main/java/blockchain/body/ReactionBody.java b/shine-server-blockchain/src/main/java/blockchain/body/ReactionBody.java index 7213c457..22b20093 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/ReactionBody.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/ReactionBody.java @@ -1,9 +1,6 @@ -// ======================= -// blockchain/body/ReactionBody.java (ИЗМЕНЁННЫЙ: bodyBytes без type/subType/version, НЕТ линейных полей) -// ======================= package blockchain.body; -import shine.db.MsgSubType; +import blockchain.MsgSubType; import java.nio.ByteBuffer; import java.nio.ByteOrder; diff --git a/shine-server-blockchain/src/main/java/blockchain/body/TextBody.java b/shine-server-blockchain/src/main/java/blockchain/body/TextBody.java index f7d7d2de..4c87c4f5 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/TextBody.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/TextBody.java @@ -1,9 +1,6 @@ -// ======================= -// blockchain/body/TextBody.java (ИЗМЕНЁННЫЙ: header содержит type/subType/version, body содержит line fields) -// ======================= package blockchain.body; -import shine.db.MsgSubType; +import blockchain.MsgSubType; import java.nio.ByteBuffer; import java.nio.ByteOrder; diff --git a/shine-server-blockchain/src/main/java/blockchain/body/UserParamBody.java b/shine-server-blockchain/src/main/java/blockchain/body/UserParamBody.java index be4331e9..852abe15 100644 --- a/shine-server-blockchain/src/main/java/blockchain/body/UserParamBody.java +++ b/shine-server-blockchain/src/main/java/blockchain/body/UserParamBody.java @@ -1,9 +1,6 @@ -// ======================= -// blockchain/body/UserParamBody.java (ИЗМЕНЁННЫЙ: bodyBytes без type/subType/version, + line fields) -// ======================= package blockchain.body; -import shine.db.MsgSubType; +import blockchain.MsgSubType; import java.nio.ByteBuffer; import java.nio.ByteOrder; diff --git a/shine-server-db/src/main/java/shine/db/dao/BlockchainStateDAO.java b/shine-server-db/src/main/java/shine/db/dao/BlockchainStateDAO.java index 0d08ed20..a19e8790 100644 --- a/shine-server-db/src/main/java/shine/db/dao/BlockchainStateDAO.java +++ b/shine-server-db/src/main/java/shine/db/dao/BlockchainStateDAO.java @@ -1,6 +1,3 @@ -// ======================= -// shine/db/dao/BlockchainStateDAO.java (ИЗМЕНЁННАЯ: убраны line0..7, last_block_*) -// ======================= package shine.db.dao; import shine.db.SqliteDbController; diff --git a/shine-server-db/src/main/java/shine/db/dao/BlocksDAO.java b/shine-server-db/src/main/java/shine/db/dao/BlocksDAO.java index fc189d00..89701d10 100644 --- a/shine-server-db/src/main/java/shine/db/dao/BlocksDAO.java +++ b/shine-server-db/src/main/java/shine/db/dao/BlocksDAO.java @@ -1,6 +1,3 @@ -// ======================= -// shine/db/dao/BlocksDAO.java (ИЗМЕНЁННЫЙ под новый blocks формат + линейная проверка) -// ======================= package shine.db.dao; import shine.db.SqliteDbController; diff --git a/shine-server-db/src/main/java/shine/db/entities/BlockEntry.java b/shine-server-db/src/main/java/shine/db/entities/BlockEntry.java index 8fe38a10..6a56b046 100644 --- a/shine-server-db/src/main/java/shine/db/entities/BlockEntry.java +++ b/shine-server-db/src/main/java/shine/db/entities/BlockEntry.java @@ -1,6 +1,3 @@ -// ======================= -// shine/db/entities/BlockEntry.java (ИЗМЕНЁННАЯ под новый blocks формат) -// ======================= package shine.db.entities; /** diff --git a/shine-server-db/src/main/java/shine/db/entities/BlockchainStateEntry.java b/shine-server-db/src/main/java/shine/db/entities/BlockchainStateEntry.java index 29651f32..eb6cd0e5 100644 --- a/shine-server-db/src/main/java/shine/db/entities/BlockchainStateEntry.java +++ b/shine-server-db/src/main/java/shine/db/entities/BlockchainStateEntry.java @@ -1,6 +1,3 @@ -// ======================= -// shine/db/entities/BlockchainStateEntry.java (ИЗМЕНЁННАЯ: убраны line0..7, переименовано last_block_*) -// ======================= package shine.db.entities; import java.util.Base64; diff --git a/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler.java b/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler.java index d521dea2..b64b6c69 100644 --- a/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler.java +++ b/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler.java @@ -1,6 +1,3 @@ -// ======================= -// server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler.java (ИЗМЕНЁННЫЙ под ТЗ) -// ======================= package server.logic.ws_protocol.JSON.handlers.blockchain; import blockchain.BchBlockEntry; diff --git a/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler_utils/BlockchainWriter.java b/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler_utils/BlockchainWriter.java index bc57269c..dc344c60 100644 --- a/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler_utils/BlockchainWriter.java +++ b/shine-server-net-protocol/src/main/java/server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler_utils/BlockchainWriter.java @@ -1,7 +1,3 @@ -// ======================= -// server/logic/ws_protocol/JSON/handlers/blockchain/Net_AddBlock_Handler_utils/BlockchainWriter.java -// (НОВАЯ ВЕРСИЯ — чтобы AddBlock работал с новым blocks/state) -// ======================= package server.logic.ws_protocol.JSON.handlers.blockchain.Net_AddBlock_Handler_utils; import blockchain.BchBlockEntry; diff --git a/src/test/java/test/it/cases/IT_03_AddBlock_NoAuth.java b/src/test/java/test/it/cases/IT_03_AddBlock_NoAuth.java index bf7fc51a..37c7fd99 100644 --- a/src/test/java/test/it/cases/IT_03_AddBlock_NoAuth.java +++ b/src/test/java/test/it/cases/IT_03_AddBlock_NoAuth.java @@ -2,7 +2,7 @@ package test.it.cases; import blockchain.LineIndex; import blockchain.body.*; -import shine.db.MsgSubType; +import blockchain.MsgSubType; import test.it.blockchain.AddBlockSender; import test.it.blockchain.ChainState; import test.it.utils.TestConfig;