Beispiel #1
0
int main(int argc, char ** argv)
{
	if (argc != 5 && argc != 6) { fprintf(stderr, "usage: %s Host Port [Server] Method JSON\n", argv[0]); return EX_USAGE; }
	INT_32 iReturnCode = EX_SOFTWARE;
	try
	{
		CDT oRequest;
		CDT oResponse;
		if(argc == 5)
		{
			CTPP2JSONParser(oRequest).Parse(argv[4], argv[4] + strlen(argv[4]));

			ASXMLRPCClient oRPCClient(argv[1], atoi(argv[2]), 10000, 10000);
			oRPCClient.Call(argv[3], oRequest, oResponse);
			fprintf(stderr, "%s\n%s\n%s\n", argv[3], oRequest.Dump().c_str(), oResponse.Dump().c_str());
		}
		else
		{
			CTPP2JSONParser(oRequest).Parse(argv[5], argv[5] + strlen(argv[5]));

			ASXMLRPCClient oRPCClient(argv[1], atoi(argv[2]), 1000, 1000, argv[3]);
			oRPCClient.Call(argv[4], oRequest, oResponse);
			fprintf(stderr, "%s\n%s\n%s\n", argv[4], oRequest.Dump().c_str(), oResponse.Dump().c_str());
		}

		iReturnCode = EX_OK;
	}
	catch(STLW::exception &e)
	{
		fprintf(stderr, "ERROR: %s\n", e.what());
	}

	fclose(stdin);
	fclose(stdout);
	fclose(stderr);

return iReturnCode;
}