1203 Commits

Author SHA1 Message Date
Gioacchino Mazzurco
e311b28870
Complete channel API with comment and vote creation 2018-11-16 17:50:34 +01:00
Gioacchino Mazzurco
ba58eba34e
Complete API for forums
Add new blocking methods
Deprecate old unsafe methods
2018-11-16 17:03:25 +01:00
Gioacchino Mazzurco
8b8ad3bce5
Forum API for creation and posting
Deprecate old functions that expose internal functioning
2018-11-10 16:30:35 +01:00
Gioacchino Mazzurco
1d110600fc
Minor cleanups in GxsChannels 2018-11-10 16:29:39 +01:00
Gioacchino Mazzurco
90bacf12bd
RsGxsDataAccess filtered getters do not return all messages if none matches
This was causing scary error message in RsGxsChannels with autodoanload
  enabled, when all messages where already processed none matched the
  filter so all messages where returned,
  making p3GxsChannels::handleUnprocessedPost furious
  more details into this forum post
  retroshare://forum?name=Scary%20message%2C%20but%20which%20doesn%27t%20seem%20to%20be%20the%20source%20of%20the%20problems%20Was%3A%20More%20GXS%20strange%20messages&id=8fd22bd8f99754461e7ba1ca8a727995&msgid=04f10ff97f761c6840c33f1610cb050f0f73da8d
2018-11-09 23:46:21 +01:00
Gioacchino Mazzurco
2ed6904d06
gxschannels better debugging message 2018-11-09 12:41:09 +01:00
Gioacchino Mazzurco
ea86fe2615
Safer RsGxsChannel API
Deprecated old method which exposed interna async mechanism to the API
  users, making their and out life difficult
Things that really need to be async like turtle search/requests now accept
  callbacks, so the caller can be notified everytime some result is got
  back
Implement RsThread::async commodity wrapper to execute blocking API
  calls without blocking the caller, this could be optimized
  trasparently using a thread pool if necessary
Added hints into some retroshare-gui files on how to use RsThread::async
  thoghether with QMetaObject::invokeMethod and blocking RetroShare API
  to simplyfy interaction between GUI and libretroshare
2018-11-09 12:41:08 +01:00
Gioacchino Mazzurco
8fd22c8fd1
Safer rsGxsChannel API
Protect data members with mutexes
Print messages when errors happens
2018-11-09 12:41:08 +01:00
csoler
cfe95a57a0
Merge pull request #1377 from G10h4ck/jsonapi
GXS deep search notify results also of already known groups
2018-10-20 14:47:37 +02:00
Gioacchino Mazzurco
2d497d7303
Fix compilation with deep search and rm dead code 2018-10-20 14:07:39 +02:00
Gioacchino Mazzurco
5699d81ae7
GXS deep search notify results also of known groups 2018-10-20 13:48:16 +02:00
csoler
9b4c48c540
created a connexion between token and meta data of created posts and grps 2018-10-16 22:40:27 +02:00
G10h4ck
03cdd6c7b6
Merge pull request #1363 from G10h4ck/jsonapi
New cross-platform target retroshare-service
2018-10-16 16:06:09 +02:00
sehraf
e6febe0297
remove debug output 2018-10-12 18:20:55 +02:00
G10h4ck
047ae7f723
Merge branch 'master' into jsonapi 2018-10-10 22:23:28 +02:00
csoler
18eee374f1
Merge pull request #1361 from sehraf/pr_jsonfy-rsMsg
[jsonapi] add most remaining functions of rsMsg
2018-10-10 22:04:32 +02:00
Gioacchino Mazzurco
321fc8a8d4
Implement mostly decent JSON API for channels and post creation
Now the possible id of the cannel/post is returned and channel/post is
indexed on creation without having to wait for gxsutil scan to happen

Note that the id is correct in normal usage, but if one try to overload
the API per eventually get the id of another channel/post with same data
but created by a different call, it is not dangerous so one trying to
overload the API is just getting a possibly wrong but equivalent
channel/post id returned.
2018-10-10 06:40:56 +02:00
Gioacchino Mazzurco
329050a9c2
Use safer rstime_t instead of time_t
Avoid problems to serialization on different platforms, without breaking
nested STL containers serialization.

The conversion have been made with sed, and checked with grep, plus
kdiff3 visual ispection, plus rutime tests, so it should be fine.
2018-10-07 13:07:06 +02:00
Gioacchino Mazzurco
321d2e84bd
gxschannel expose blocking create post and channels API 2018-10-04 23:36:01 +02:00
sehraf
150af40e09
jsonapi: convert and add getMessageCount 2018-10-04 22:43:12 +02:00
csoler
81fc3b7921
select GxsIds as default list to chose msg destination from 2018-10-03 15:25:53 +02:00
csoler
7ab7c7db93
added possibility to remove extra shared file 2018-09-27 16:53:08 +02:00
Gioacchino Mazzurco
92f90178c4
RS version is now parametrizable at compile time
Avoid the need of dirty patching to set the version at build time
In case RS version is not passed as argument attempt to determine it
  using git describe, if unavailable use hardcoded default
2018-09-12 10:49:36 +02:00
csoler
b138263878
Merge pull request #1323 from csoler/v0.6-ForumAdmin
V0.6 forum admin
2018-09-11 15:17:33 +02:00
csoler
c17b821ea6
Merge pull request #1334 from csoler/v0.6-GxsFix
auto send of own signed GXS ids to friends in discovery
2018-09-10 20:39:29 +02:00
csoler
2b80c23f6a
fixed according to comments on PR 1334 2018-09-10 20:03:47 +02:00
sehraf
247c368279
incorporated requested changes 2018-09-09 22:22:55 +02:00
csoler
59a76a9418
fixed checking of signature for own ids when loading in cache 2018-09-09 21:22:08 +02:00
sehraf
9306d8ccc8
drop deprecated function 2018-09-08 08:58:42 +02:00
sehraf
ae14a01d58
add json support to getWaitingDiscCount 2018-09-07 14:19:06 +02:00
csoler
3402f7d9b5
auto send of own signed GXS ids to friends in discovery 2018-09-06 21:15:25 +02:00
csoler
59535eac8a
added a flag for moderating messages to help removign them when the author is not a moderator anymore 2018-09-02 17:07:40 +02:00
Gioacchino Mazzurco
4b6f751b09
Implement JSON API generation for async API calls
Move JSON helpers to util/rsjson.* for better usability
Implement JSON ostream manipulator to print compact and pretty JSON
Use lambdas for API wrappers, integrate better and avoid namespace
  pollution
Removed experimental JSON API for notify client wrapper, notifications
  can be implemented automatically with moderns async API calls
Implement and automatically expose to JSON API
  RsGxsChannels::turtleSearchRequest(
        const std::string& matchString,
        const std::function<void (const RsGxsGroupSummary&)>& multiCallback,
        std::time_t maxWait )
2018-08-16 23:48:21 +02:00
Gioacchino Mazzurco
130007b578
Merge branch 'master' into jsonapi 2018-07-23 13:44:01 +02:00
Gioacchino Mazzurco
f97dc8a125
Properly plug deep search in GXS search
Some modifications breaks retrocompatibility of GXS search:
  remove horrible templated RsTypeSerializer::serial_process for
    RsGxsGroupSummary with hardcoded member names
  RsGxsGroupSummary doesn't use old TLV serialization format anymore
  RsGxsGroupSummary remove unused description member
  RsGxsGroupSummary derive from RsSerializable and use serialization
    helper macro
Add autor id and signature flags to the index so there is no need to
  retrive them from GXS, thus improving performances
RsGroupNetworkStats initialize members properly
RsGxsGroupSummary rename members to follow usual mMemberName convention
2018-07-22 21:33:40 +02:00
csoler
2bab688dec
fixed merge with upstream/master 2018-07-19 23:22:24 +02:00
csoler
b8062f2e21
Merge pull request #1294 from csoler/v0.6-GXS-DistSync3-TurtleSearch
V0.6 gxs dist sync3 turtle search
2018-07-19 22:59:43 +02:00
csoler
6848a586f3
merged upstream/master 2018-07-08 21:17:48 +02:00
chelovechishko
b3dddeafdf add missing namespaces 2018-07-06 23:55:12 +09:00
csoler
00dfa0f3c2
added fallback for GXS GroupMessage UI to look into cached distant group data 2018-06-26 22:20:02 +02:00
Gioacchino Mazzurco
15f39129f1
Complete GxsChannels JSON API with blocking methods
RsGxsIfaceHelper::requestStatus expose it to JSON API
Implemented RsGxsIfaceHelper::waitToken to wait for GXS operations
RsItem::serial_process fix doxygen warning as it's a comment not documentation
RsTypeSerializer add JSON conversion methods for double [de]serialization not
	implemented yet
RsTypeSerializer_PRIVATE_{FROM,TO}_JSON_ARRAY fix doxygen warning as it's a
	comment not documentation
make GxsChannels::ExtraFileHash a bit more reasonable
jsonapi-generator fix unused variable warning if there is no input or output
	paramethers
jsonapi-generator fix generation for inerithed jsonapi methods
Convert to RsSerializable some Gxs structs for the JSON API
2018-06-26 13:20:24 +02:00
Gioacchino Mazzurco
d731b665db
Expose tokenservice methods trough GxsIfaceHelper 2018-06-25 10:44:39 +02:00
Gioacchino Mazzurco
2f4b9b3e20
Convert to RsTokenService::GxsRequestStatus
Indicate GxsRequest status with an enum instead of uint_* that make the
  code less readable and more prone to errors
2018-06-24 23:24:52 +02:00
Gioacchino Mazzurco
b4d2ce82c1
RsTokenService use enum for request status 2018-06-24 18:56:48 +02:00
csoler
e351d7257e
added retrieval of search results in UI 2018-06-24 16:55:38 +02:00
csoler
5b9666855d
fixed merge with upstream 2018-06-22 23:38:31 +02:00
csoler
84699db744
changed std::vector into std::set in notification system, hence removing lots of std::find(std::vector::begin(),std::vector::end(),T), causing quadratic costs in multiple places. 2018-06-21 15:46:59 +02:00
csoler
3981bc8e3b
extended notification system to add distant search result notification 2018-06-21 13:48:57 +02:00
csoler
5cb48c27de
renamed a few constants of GXS notify system into more consistent values 2018-06-21 09:26:03 +02:00
csoler
79e676edbe
fixed re-load of GXS groups (forums/channels) when the read flag is changed 2018-06-18 22:27:05 +02:00