1
0
mirror of https://github.com/haiwen/seafile-server.git synced 2025-09-02 16:04:26 +00:00

add rpc publish_event() , pop_event() and remove cevent (#253)

This commit is contained in:
Xiangyue Cai
2019-07-22 11:18:32 +08:00
committed by Jiaqiang Xu
parent b85d194b4b
commit aa0185203b
13 changed files with 208 additions and 90 deletions

View File

@@ -298,6 +298,8 @@ seaf_branch_manager_update_branch (SeafBranchManager *mgr, SeafBranch *branch)
#if defined( SEAFILE_SERVER ) && defined( FULL_FEATURE )
#include "mq-mgr.h"
static gboolean
get_commit_id (SeafDBRow *row, void *data)
{
@@ -311,43 +313,29 @@ get_commit_id (SeafDBRow *row, void *data)
return FALSE;
}
/* typedef struct { */
/* char *repo_id; */
/* char *commit_id; */
/* } RepoUpdateEventData; */
static void
publish_repo_update_event (char *repo_id, char *commit_id)
{
char buf[128];
snprintf (buf, sizeof(buf), "repo-update\t%s\t%s",
repo_id, commit_id);
/* static void */
/* publish_repo_update_event (CEvent *event, void *data) */
/* { */
/* RepoUpdateEventData *rdata = event->data; */
publish_event (seaf->mq_mgr, SEAFILE_SERVER_CHANNEL_EVENT, buf);
/* char buf[128]; */
/* snprintf (buf, sizeof(buf), "repo-update\t%s\t%s", */
/* rdata->repo_id, rdata->commit_id); */
g_free (repo_id);
g_free (commit_id);
}
/* seaf_mq_manager_publish_event (seaf->mq_mgr, buf); */
static void
on_branch_updated (SeafBranchManager *mgr, SeafBranch *branch)
{
seaf_repo_manager_update_repo_info (seaf->repo_mgr, branch->repo_id, branch->commit_id);
if (seaf_repo_manager_is_virtual_repo (seaf->repo_mgr, branch->repo_id))
return;
/* g_free (rdata->repo_id); */
/* g_free (rdata->commit_id); */
/* g_free (rdata); */
/* } */
/* static void */
/* on_branch_updated (SeafBranchManager *mgr, SeafBranch *branch) */
/* { */
/* seaf_repo_manager_update_repo_info (seaf->repo_mgr, branch->repo_id, branch->commit_id); */
/* if (seaf_repo_manager_is_virtual_repo (seaf->repo_mgr, branch->repo_id)) */
/* return; */
/* RepoUpdateEventData *rdata = g_new0 (RepoUpdateEventData, 1); */
/* rdata->repo_id = g_strdup (branch->repo_id); */
/* rdata->commit_id = g_strdup (branch->commit_id); */
/* cevent_manager_add_event (seaf->ev_mgr, mgr->priv->cevent_id, rdata); */
/* } */
publish_repo_update_event (branch->repo_id, branch->commit_id);
}
int
seaf_branch_manager_test_and_update_branch (SeafBranchManager *mgr,
@@ -407,7 +395,7 @@ seaf_branch_manager_test_and_update_branch (SeafBranchManager *mgr,
seaf_db_trans_close (trans);
/* on_branch_updated (mgr, branch); */
on_branch_updated (mgr, branch);
return 0;
}