rclient.c 1.8 KB
Newer Older
S
slguan 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
/*
 * Copyright (c) 2019 TAOS Data, Inc. <jhtao@taosdata.com>
 *
 * This program is free software: you can use, redistribute, and/or modify
 * it under the terms of the GNU Affero General Public License, version 3
 * or later ("AGPL"), as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with this program. If not, see <http://www.gnu.org/licenses/>.
 */

//#define _DEFAULT_SOURCE
#include "os.h"
#include "tlog.h"
#include "trpc.h"
#include <stdint.h>

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
22
void processMsg(char type, void *pCont, int contLen, void *ahandle, int32_t code) {
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
23
  dPrint("response is received, type:%d, contLen:%d code:%x, ahandle:%p", type, contLen, code, ahandle);
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
24 25
}

S
slguan 已提交
26
int32_t main(int32_t argc, char *argv[]) {
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
27 28

  taosInitLog("client.log", 100000, 10);
S
slguan 已提交
29 30 31 32 33
  dPrint("unit test for rpc module");

  SRpcInit rpcInit;
  memset(&rpcInit, 0, sizeof(rpcInit));
  rpcInit.localIp      = "0.0.0.0";
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
34 35
  rpcInit.localPort    = 0;
  rpcInit.label        = "APP";
S
slguan 已提交
36
  rpcInit.numOfThreads = 1;
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
37
  rpcInit.cfp          = processMsg;
S
slguan 已提交
38
  rpcInit.sessions     = 1000;
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
39
  rpcInit.connType     = TAOS_CONN_UDPC;
S
slguan 已提交
40
  rpcInit.idleTime     = 2000;
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
41 42 43
  rpcInit.meterId      = "jefftao";
  rpcInit.secret       = "password";
  rpcInit.ckey         = "key";
S
slguan 已提交
44

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
45 46
  void *pRpc = rpcOpen(&rpcInit);
  if (pRpc == NULL) {
S
slguan 已提交
47
    dError("failed to initialize rpc");
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
48
    return -1;
S
slguan 已提交
49 50
  }

陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
51 52 53
  SRpcIpSet ipSet;
  ipSet.numOfIps = 2;
  ipSet.index = 0;
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
54
  ipSet.port = 7000;
陶建辉(Jeff)'s avatar
陶建辉(Jeff) 已提交
55 56 57 58 59 60 61 62
  ipSet.ip[0] = inet_addr("127.0.0.1");
  ipSet.ip[1] = inet_addr("192.168.0.1");

  void *cont = rpcMallocCont(100); 
  rpcSendRequest(pRpc, ipSet, 1, cont, 100, 1);

  getchar();

S
slguan 已提交
63 64 65 66
  return 0;
}