Commit Graph

158 Commits

Author SHA1 Message Date
Kleissner
1b93eac17a Moving FeatureSupport() and UserBlockchain.Header() calls out of Message Encoding.
This paves the way for refactoring the message code into the protocol package.
2021-10-17 17:40:22 +02:00
Kleissner
4d3caaf567 Move message sending code into separate file (no code changes) 2021-10-17 17:20:21 +02:00
Kleissner
7be31a9e34 Refactoring code. Use protocol.HashData and HashSize. Move PublicKey2NodeID into protocol. 2021-10-17 17:15:22 +02:00
Kleissner
39217ab5ef Untangle connection parameters from msgEncodeTraverseSetAddress 2021-10-17 16:55:31 +02:00
Kleissner
93f10fd3b5 Untangle connection from MessageRaw, paving the way for refactoring the message code into the protocol package. 2021-10-17 16:39:41 +02:00
Kleissner
0c7b1e0e03 Start refactoring protocol code into sub package. Move Packet Encoding and list of Commands. Change SetSelfReportedPorts parameters.
More related commits to follow!
2021-10-17 16:28:19 +02:00
Kleissner
2476146949 Add info about other UPnP packages 2021-10-16 13:32:43 +02:00
Kleissner
0dc383e767 Moving blockchain code into separate files (no code changes). 2021-10-14 02:40:28 +02:00
Kleissner
e78ca02af7 Housekeeping! Renaming /blockchain functions for simplicity 2021-10-13 22:26:30 +02:00
Kleissner
1c0406dc60 Housekeeping! Removing unnecessary "blockchain" prefix of status codes within the blockchain package. 2021-10-13 21:22:17 +02:00
Kleissner
b556acb86c webapi: New function /blockchain/file/update
blockchain: Add readme.md. Add function ReplaceFiles.
2021-10-13 20:09:09 +02:00
Kleissner
336de68801 Refactor blockchain code into separate files (no code changes). 2021-10-13 15:30:35 +02:00
Kleissner
c2f110169a Automatically delete files from Warehouse in case there are no other references when deleting files from the blockchain via /blockchain/self/delete/file.
New function blockchain.FileExists.
blockchain.DeleteFiles now returns list of deleted files.
2021-10-13 06:00:40 +02:00
Kleissner
335f83d79b /blockchain/self/add/file checks now if the file exists in the Warehouse and aborts with StatusCorruptBlockRecord if not. 2021-10-13 02:42:04 +02:00
Kleissner
cec070b740 Introducing Warehouse - the store for files shared by the user.
New endpoints:
/warehouse/create               Create a file in the warehouse
/warehouse/create/path          Create a file in the warehouse via copy
/warehouse/read                 Read a file in the warehouse
/warehouse/delete               Delete a file in the warehouse
2021-10-13 01:40:58 +02:00
Kleissner
956e6dd76b Sync reuseport sub-package to latest version 2021-10-11 01:38:13 +02:00
Kleissner
fbeb01e7ff Major refactoring of blockchain code into new sub-package. 2021-10-11 01:21:38 +02:00
Kleissner
7495b823e4 webapi search: Implement /search/result/ws 2021-10-10 16:58:09 +02:00
Kleissner
7891bdbeac webapi search: Provide option to embed statistics into /search/result response 2021-10-10 16:07:44 +02:00
Kleissner
4ef002ab57 webapi: Add /search/statistic 2021-10-10 15:32:29 +02:00
Kleissner
7c3fc8938f webapi search: Add min/max file size as filter. 2021-10-10 03:03:35 +02:00
Kleissner
5707132687 webapi: Search: Add support for additional sorting parameters (Size ASC/DESC, Shared by count ASC/DESC). 2021-10-10 02:20:36 +02:00
Kleissner
2451fdafb1 New Search Job code. Supports filtering and sorting. Renaming apiBlockRecordFile -> apiFile. Added filters and sort parameters to /search/result.
Improved API documentation. Added documentation about search filters and sort parameter.
2021-10-05 10:50:04 +02:00
Kleissner
b79b0d2194 Moving File API code into separate file 2021-10-05 08:06:07 +02:00
Kleissner
72787044d2 Finished dummy download API. 2021-10-04 07:23:19 +02:00
Kleissner
958ec52f83 Close #18 cmdResponseBootstrapFindSelf uses now a recently-contacted list to prevent potential initial flood when multiple peers return the same peer for FIND_SELF. 2021-10-01 00:33:43 +02:00
Kleissner
d29fc960b6 Add file metadata TagSharedByCount and TagSharedByGeoIP 2021-09-29 20:20:53 +02:00
Kleissner
2c20fa950d Add node ID field to file structure 2021-09-28 19:55:30 +02:00
Kleissner
608dbf6f47 Simplified profile code. 2021-09-28 05:39:38 +02:00
Kleissner
9ef6a88512 Reworked the way metadata/tags for files work. Simplified it at lot. 2021-09-28 02:59:47 +02:00
Kleissner
24df8c1eb0 webapi: Add dummy /download/start and /download/status endpoints 2021-09-27 03:49:34 +02:00
Kleissner
dc093f5f6d webapi: Add file type and format detection via /file/format 2021-09-26 23:40:22 +02:00
Kleissner
3fbb1a824b Add special type -2 to /explore. 2021-09-25 13:09:40 +02:00
Kleissner
175f1fb438 Fix race condition in FindNode 2021-09-24 13:45:12 +02:00
Kleissner
7e402de278 webapi: New endpoint /explore to list recently shared files, currently dummy data 2021-09-23 23:53:44 +02:00
Kleissner
58b4603744 Initial search API with dummy results 2021-09-23 02:32:07 +02:00
Kleissner
edc14925c7 Improve documentation 2021-09-20 14:45:33 +02:00
Kleissner
149984eeb3 webapi: New endpoint /profile/delete 2021-09-20 14:20:23 +02:00
Kleissner
680723faf3 Blockchain: New function UserProfileDelete to delete user profile data. 2021-09-20 14:19:04 +02:00
Kleissner
df0f57063f Add endpoint /blockchain/self/delete/file to delete files. 2021-09-19 00:57:49 +02:00
Kleissner
06b846ca34 Blockchain functions: Return version number. Add record deletion and refactoring function. Allow to delete files. 2021-09-19 00:01:31 +02:00
Kleissner
67bf27a4af Refactor apiTest into Status.go 2021-09-15 16:29:26 +02:00
Kleissner
16e9c0e67f Add TypeEbook. Clarify documentation on File Type and File Format. 2021-09-15 16:25:09 +02:00
Kleissner
95640fede3 webapi: Export EncodeJSON, DecodeJSON 2021-09-10 19:19:06 +02:00
Kleissner
3f3e6d9df1 Add date field to apiBlockRecordFile 2021-09-10 14:43:01 +02:00
Kleissner
19e29b3a91 Add webapi. Provides an HTTP API for clients to use Peernet. 2021-09-10 13:40:07 +02:00
Kleissner
928c16c492 New profile functions to read/write profile fields and blobs 2021-09-03 02:24:26 +02:00
Kleissner
22f21d187a Add virtual tag TagTypeDateShared. 2021-08-28 13:37:38 +02:00
Kleissner
a3750af1c8 Fix bug correct block number 2021-08-28 13:26:06 +02:00
Kleissner
7c88763f28 Minor fix when creating new blockchain, initializing used public key 2021-08-27 17:38:36 +02:00