├── README.md └── fastrpc ├── build.sh ├── clean ├── clean.sh ├── comm ├── Makefile.bak ├── RollLog.cpp ├── RollLog.h ├── base64.cpp ├── base64.h ├── baseheader.h ├── basetools.cpp ├── basetools.h ├── cgi.cpp ├── cgi.h ├── common_def.h ├── conn_pool.cpp.bak ├── conn_pool.h.bak ├── connection.cpp,bak ├── connection.h.bak ├── getlog.cpp ├── getlog.hpp ├── hashtable.cpp ├── hashtable.h ├── log.cpp ├── log.h ├── logfile.h ├── makefile ├── mem_hash.h ├── my_lib.cpp ├── my_lib.h ├── my_mem.h ├── myconfig.cpp ├── myconfig.h ├── myfile.h ├── mysock.h ├── mysql_pool.cpp.bak ├── mysql_pool.h.bak ├── safe_map.h ├── transunicode.cpp └── transunicode.hpp ├── ependingpool ├── BUILD ├── Makefile ├── ependingpool.cpp ├── ependingpool.h └── output.bak │ └── output │ └── include │ ├── ependingpool.h │ └── epoll.h ├── example ├── client │ ├── main.cpp │ ├── makefile │ ├── protobuf │ │ ├── echo.pb.cc │ │ ├── echo.pb.h │ │ └── echo.proto │ ├── test_multi_thread_mode.cpp.bak │ ├── test_single_cro_mode.cpp.bak │ └── test_single_nocro_mode.cpp.bak ├── hook_example │ ├── main.cpp │ ├── makefile │ └── protobuf │ │ ├── echo.pb.cc │ │ ├── echo.pb.h │ │ └── echo.proto ├── server │ ├── arpc_server.20150604.log │ ├── arpc_server.20150605.log │ ├── arpc_server.20150606.log │ ├── fastpy.py │ ├── main.cpp │ ├── makefile │ └── protobuf │ │ ├── echo.pb.cc │ │ ├── echo.pb.h │ │ └── echo.proto └── server2 │ ├── arpc_server.20150604.log │ ├── arpc_server.20150605.log │ ├── arpc_server.20150606.log │ ├── fastpy.py │ ├── main.cpp │ ├── makefile │ └── protobuf │ ├── echo.pb.cc │ ├── echo.pb.h │ └── echo.proto ├── hook_lib ├── main ├── main.cpp ├── makefile ├── proglog ├── tconnd_closure.h ├── tconnd_xcore_byte_order.cpp ├── tconnd_xcore_byte_order.h ├── tconnd_xcore_common.cpp ├── tconnd_xcore_common.h ├── tconnd_xcore_define.h ├── tconnd_xcore_json.cpp ├── tconnd_xcore_json.h └── tconnd_xcore_macro.h ├── http_codec ├── api │ ├── http_arg_define.h │ ├── http_server_codec.cpp │ └── http_server_codec.h ├── http │ ├── http_base_str.h │ ├── http_func.cpp │ ├── http_func.h │ ├── http_head.cpp │ ├── http_head.h │ ├── http_req.cpp │ ├── http_req.h │ ├── http_respond.cpp │ ├── http_respond.h │ ├── http_rsp.cpp │ ├── http_rsp.h │ ├── http_util.cpp │ └── http_util.h ├── json │ ├── alloc.h │ ├── autolink.h │ ├── config.h │ ├── features.h │ ├── forwards.h │ ├── json.h │ ├── json_batchallocator.h │ ├── json_internalarray.inl │ ├── json_internalmap.inl │ ├── json_reader.cpp │ ├── json_value.cpp │ ├── json_valueiterator.inl │ ├── json_writer.cpp │ ├── newalloc.h │ ├── reader.h │ ├── test.bak │ ├── test.cpp │ ├── value.h │ └── writer.h ├── log ├── makefile ├── massif.log ├── massif.log2 ├── massif.out.24188 ├── massif.out.24810 └── massif.out.24952 ├── http_rpc_client ├── RpcCommon.h ├── a.txt ├── llog ├── log ├── main.py ├── makefile ├── rpc_client.cpp └── rpc_client.h ├── http_rpc_server ├── makefile ├── rpc_server.cpp └── rpc_server.h ├── protobuf ├── include │ └── google │ │ └── protobuf │ │ ├── arena.h │ │ ├── arenastring.h │ │ ├── compiler │ │ ├── code_generator.h │ │ ├── command_line_interface.h │ │ ├── cpp │ │ │ └── cpp_generator.h │ │ ├── importer.h │ │ ├── java │ │ │ ├── java_generator.h │ │ │ └── java_names.h │ │ ├── javanano │ │ │ └── javanano_generator.h │ │ ├── parser.h │ │ ├── plugin.h │ │ ├── plugin.pb.h │ │ ├── plugin.proto │ │ ├── python │ │ │ └── python_generator.h │ │ └── ruby │ │ │ └── ruby_generator.h │ │ ├── descriptor.h │ │ ├── descriptor.pb.h │ │ ├── descriptor.proto │ │ ├── descriptor_database.h │ │ ├── dynamic_message.h │ │ ├── extension_set.h │ │ ├── generated_enum_reflection.h │ │ ├── generated_message_reflection.h │ │ ├── generated_message_util.h │ │ ├── io │ │ ├── coded_stream.h │ │ ├── gzip_stream.h │ │ ├── printer.h │ │ ├── strtod.h │ │ ├── tokenizer.h │ │ ├── zero_copy_stream.h │ │ ├── zero_copy_stream_impl.h │ │ └── zero_copy_stream_impl_lite.h │ │ ├── map.h │ │ ├── map_entry.h │ │ ├── map_field.h │ │ ├── map_field_inl.h │ │ ├── map_type_handler.h │ │ ├── message.h │ │ ├── message_lite.h │ │ ├── metadata.h │ │ ├── reflection.h │ │ ├── reflection_ops.h │ │ ├── repeated_field.h │ │ ├── repeated_field_reflection.h │ │ ├── service.h │ │ ├── stubs │ │ ├── atomic_sequence_num.h │ │ ├── atomicops.h │ │ ├── atomicops_internals_aix.h │ │ ├── atomicops_internals_arm64_gcc.h │ │ ├── atomicops_internals_arm_gcc.h │ │ ├── atomicops_internals_arm_qnx.h │ │ ├── atomicops_internals_atomicword_compat.h │ │ ├── atomicops_internals_generic_gcc.h │ │ ├── atomicops_internals_macosx.h │ │ ├── atomicops_internals_mips_gcc.h │ │ ├── atomicops_internals_pnacl.h │ │ ├── atomicops_internals_solaris.h │ │ ├── atomicops_internals_tsan.h │ │ ├── atomicops_internals_x86_gcc.h │ │ ├── atomicops_internals_x86_msvc.h │ │ ├── casts.h │ │ ├── common.h │ │ ├── fastmem.h │ │ ├── hash.h │ │ ├── once.h │ │ ├── pbconfig.h │ │ ├── platform_macros.h │ │ ├── shared_ptr.h │ │ ├── singleton.h │ │ ├── stl_util.h │ │ ├── template_util.h │ │ └── type_traits.h │ │ ├── text_format.h │ │ ├── unknown_field_set.h │ │ ├── wire_format.h │ │ ├── wire_format_lite.h │ │ └── wire_format_lite_inl.h └── lib │ └── libprotobuf.a ├── python_http_server ├── cache_static │ ├── a.html │ └── a_files │ │ ├── adsbygoogle.js │ │ ├── ca-pub-7090564139599510.js │ │ ├── channel.css │ │ ├── channel.js │ │ ├── code.js │ │ ├── default.css │ │ ├── jquery-1.js │ │ ├── jquery.css │ │ ├── jquery.js │ │ ├── jquery_002.js │ │ ├── jquery_003.js │ │ ├── kindeditor-min.js │ │ ├── oschina.css │ │ ├── oschina.js │ │ ├── scrolltopcontrol.js │ │ ├── shAutoloader.js │ │ ├── shCore.css │ │ ├── shCore.js │ │ ├── shThemeDefault.css │ │ ├── show_ads.js │ │ ├── style2013.css │ │ ├── tag.js │ │ ├── tip-yellowsimple.css │ │ ├── utils.js │ │ └── xregexp-min.js ├── fastpy.py ├── network-server.log ├── proxy_server │ └── proxy.py ├── readme.txt └── static │ ├── a.html │ └── a_files │ ├── 1382328_50.jpg │ ├── adsbygoogle.js │ ├── ca-pub-7090564139599510.js │ ├── channel.css │ ├── channel.js │ ├── code.js │ ├── default.css │ ├── gotop.gif │ ├── jquery-1.js │ ├── jquery.css │ ├── jquery.js │ ├── jquery_002.js │ ├── jquery_003.js │ ├── kindeditor-min.js │ ├── oschina.css │ ├── oschina.js │ ├── portrait.gif │ ├── scrolltopcontrol.js │ ├── shAutoloader.js │ ├── shCore.css │ ├── shCore.js │ ├── shThemeDefault.css │ ├── show_ads.js │ ├── style2013.css │ ├── tag.js │ ├── tip-yellowsimple.css │ ├── utils.js │ └── xregexp-min.js ├── rpc_client_vs_project ├── CaseRun │ ├── CaseRun.rc │ ├── CaseRun.vcxproj │ ├── CaseRun.vcxproj.filters │ ├── CaseRun.vcxproj.user │ ├── Debug │ │ ├── CaseRun.lastbuildstate │ │ ├── CaseRun.log │ │ ├── CaseRun.unsuccessfulbuild │ │ └── RCa05668 │ ├── RCa05988 │ ├── netproto │ │ ├── echo.pb.cc │ │ ├── echo.pb.h │ │ └── echo.proto │ └── rpc_client │ │ ├── RpcCommon.h │ │ ├── main │ │ ├── main.cpp │ │ ├── makefile │ │ ├── pbext.h │ │ ├── rpc_client.cpp │ │ └── rpc_client.h ├── TestClient.sln ├── TestClient.suo ├── libprotobuf.Build.CppClean.log ├── libprotobuf.log ├── protobuf │ ├── Android.mk │ ├── CHANGES.txt │ ├── CONTRIBUTORS.txt │ ├── COPYING.txt │ ├── INSTALL.txt │ ├── Makefile │ ├── Makefile.am │ ├── Makefile.in │ ├── README.txt │ ├── aclocal.m4 │ ├── autogen.sh │ ├── config.guess │ ├── config.h │ ├── config.h.in │ ├── config.log │ ├── config.status │ ├── config.sub │ ├── configure │ ├── configure.ac │ ├── debug │ │ └── libprotobuf.log │ ├── depcomp │ ├── editors │ │ ├── README.txt │ │ ├── proto.vim │ │ └── protobuf-mode.el │ ├── examples │ │ ├── AddPerson.java │ │ ├── ListPeople.java │ │ ├── Makefile │ │ ├── README.txt │ │ ├── add_person.cc │ │ ├── add_person.py │ │ ├── addressbook.proto │ │ ├── list_people.cc │ │ └── list_people.py │ ├── generate_descriptor_proto.sh │ ├── gtest │ │ ├── CHANGES │ │ ├── CONTRIBUTORS │ │ ├── COPYING │ │ ├── Makefile │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ ├── README │ │ ├── aclocal.m4 │ │ ├── build-aux │ │ │ ├── config.guess │ │ │ ├── config.h │ │ │ ├── config.h.in │ │ │ ├── config.sub │ │ │ ├── depcomp │ │ │ ├── install-sh │ │ │ ├── ltmain.sh │ │ │ ├── missing │ │ │ └── stamp-h1 │ │ ├── codegear │ │ │ ├── gtest.cbproj │ │ │ ├── gtest.groupproj │ │ │ ├── gtest_all.cc │ │ │ ├── gtest_link.cc │ │ │ ├── gtest_main.cbproj │ │ │ └── gtest_unittest.cbproj │ │ ├── config.log │ │ ├── config.status │ │ ├── configure │ │ ├── configure.ac │ │ ├── include │ │ │ └── gtest │ │ │ │ ├── gtest-death-test.h │ │ │ │ ├── gtest-message.h │ │ │ │ ├── gtest-param-test.h │ │ │ │ ├── gtest-param-test.h.pump │ │ │ │ ├── gtest-spi.h │ │ │ │ ├── gtest-test-part.h │ │ │ │ ├── gtest-typed-test.h │ │ │ │ ├── gtest.h │ │ │ │ ├── gtest_pred_impl.h │ │ │ │ ├── gtest_prod.h │ │ │ │ └── internal │ │ │ │ ├── gtest-death-test-internal.h │ │ │ │ ├── gtest-filepath.h │ │ │ │ ├── gtest-internal.h │ │ │ │ ├── gtest-linked_ptr.h │ │ │ │ ├── gtest-param-util-generated.h │ │ │ │ ├── gtest-param-util-generated.h.pump │ │ │ │ ├── gtest-param-util.h │ │ │ │ ├── gtest-port.h │ │ │ │ ├── gtest-string.h │ │ │ │ ├── gtest-tuple.h │ │ │ │ ├── gtest-tuple.h.pump │ │ │ │ ├── gtest-type-util.h │ │ │ │ └── gtest-type-util.h.pump │ │ ├── libtool │ │ ├── m4 │ │ │ ├── acx_pthread.m4 │ │ │ └── gtest.m4 │ │ ├── make │ │ │ └── Makefile │ │ ├── msvc │ │ │ ├── gtest-md.sln │ │ │ ├── gtest-md.vcproj │ │ │ ├── gtest.sln │ │ │ ├── gtest.vcproj │ │ │ ├── gtest.vcxproj │ │ │ ├── gtest.vcxproj.filters │ │ │ ├── gtest.vcxproj.user │ │ │ ├── gtest_main-md.vcproj │ │ │ ├── gtest_main.vcproj │ │ │ ├── gtest_main.vcxproj │ │ │ ├── gtest_main.vcxproj.filters │ │ │ ├── gtest_main.vcxproj.user │ │ │ ├── gtest_prod_test-md.vcproj │ │ │ ├── gtest_prod_test.vcproj │ │ │ ├── gtest_unittest-md.vcproj │ │ │ └── gtest_unittest.vcproj │ │ ├── samples │ │ │ ├── .deps │ │ │ │ ├── sample1.Plo │ │ │ │ ├── sample10_unittest.Po │ │ │ │ ├── sample1_unittest.Po │ │ │ │ ├── sample2.Plo │ │ │ │ ├── sample2_unittest.Po │ │ │ │ ├── sample3_unittest.Po │ │ │ │ ├── sample4.Plo │ │ │ │ ├── sample4_unittest.Po │ │ │ │ ├── sample5_unittest.Po │ │ │ │ ├── sample6_unittest.Po │ │ │ │ ├── sample7_unittest.Po │ │ │ │ ├── sample8_unittest.Po │ │ │ │ └── sample9_unittest.Po │ │ │ ├── prime_tables.h │ │ │ ├── sample1.cc │ │ │ ├── sample1.h │ │ │ ├── sample10_unittest.cc │ │ │ ├── sample1_unittest.cc │ │ │ ├── sample2.cc │ │ │ ├── sample2.h │ │ │ ├── sample2_unittest.cc │ │ │ ├── sample3-inl.h │ │ │ ├── sample3_unittest.cc │ │ │ ├── sample4.cc │ │ │ ├── sample4.h │ │ │ ├── sample4_unittest.cc │ │ │ ├── sample5_unittest.cc │ │ │ ├── sample6_unittest.cc │ │ │ ├── sample7_unittest.cc │ │ │ ├── sample8_unittest.cc │ │ │ └── sample9_unittest.cc │ │ ├── scons │ │ │ ├── SConscript │ │ │ ├── SConstruct │ │ │ └── SConstruct.common │ │ ├── scripts │ │ │ ├── fuse_gtest_files.py │ │ │ ├── gen_gtest_pred_impl.py │ │ │ ├── gtest-config │ │ │ ├── gtest-config.in │ │ │ └── test │ │ │ │ └── Makefile │ │ ├── src │ │ │ ├── .deps │ │ │ │ ├── gtest-death-test.Plo │ │ │ │ ├── gtest-filepath.Plo │ │ │ │ ├── gtest-port.Plo │ │ │ │ ├── gtest-test-part.Plo │ │ │ │ ├── gtest-typed-test.Plo │ │ │ │ ├── gtest.Plo │ │ │ │ ├── gtest_main.Plo │ │ │ │ ├── test_gtest_no_rtti_test-gtest-all.Po │ │ │ │ ├── test_gtest_no_rtti_test-gtest_main.Po │ │ │ │ ├── test_gtest_throw_on_failure_ex_test-gtest-all.Po │ │ │ │ ├── test_gtest_throw_on_failure_test_-gtest-all.Po │ │ │ │ ├── test_gtest_tuple_test-gtest-all.Po │ │ │ │ ├── test_gtest_tuple_test-gtest_main.Po │ │ │ │ └── test_gtest_use_own_tuple_test-gtest-all.Po │ │ │ ├── gtest-all.cc │ │ │ ├── gtest-death-test.cc │ │ │ ├── gtest-filepath.cc │ │ │ ├── gtest-internal-inl.h │ │ │ ├── gtest-port.cc │ │ │ ├── gtest-test-part.cc │ │ │ ├── gtest-typed-test.cc │ │ │ ├── gtest.cc │ │ │ └── gtest_main.cc │ │ ├── test │ │ │ ├── .deps │ │ │ │ ├── gtest-filepath_test.Po │ │ │ │ ├── gtest-linked_ptr_test.Po │ │ │ │ ├── gtest-listener_test.Po │ │ │ │ ├── gtest-message_test.Po │ │ │ │ ├── gtest-options_test.Po │ │ │ │ ├── gtest-param-test2_test.Po │ │ │ │ ├── gtest-param-test_test.Po │ │ │ │ ├── gtest-port_test.Po │ │ │ │ ├── gtest-test-part_test.Po │ │ │ │ ├── gtest-typed-test2_test.Po │ │ │ │ ├── gtest-typed-test_test.Po │ │ │ │ ├── gtest-unittest-api_test.Po │ │ │ │ ├── gtest_break_on_failure_unittest_.Po │ │ │ │ ├── gtest_color_test_.Po │ │ │ │ ├── gtest_env_var_test_.Po │ │ │ │ ├── gtest_environment_test.Po │ │ │ │ ├── gtest_filter_unittest_.Po │ │ │ │ ├── gtest_help_test_.Po │ │ │ │ ├── gtest_list_tests_unittest_.Po │ │ │ │ ├── gtest_main_unittest.Po │ │ │ │ ├── gtest_no_test_unittest.Po │ │ │ │ ├── gtest_output_test_.Po │ │ │ │ ├── gtest_pred_impl_unittest.Po │ │ │ │ ├── gtest_prod_test.Po │ │ │ │ ├── gtest_repeat_test.Po │ │ │ │ ├── gtest_shuffle_test_.Po │ │ │ │ ├── gtest_sole_header_test.Po │ │ │ │ ├── gtest_stress_test.Po │ │ │ │ ├── gtest_uninitialized_test_.Po │ │ │ │ ├── gtest_unittest.Po │ │ │ │ ├── gtest_xml_outfile1_test_.Po │ │ │ │ ├── gtest_xml_outfile2_test_.Po │ │ │ │ ├── gtest_xml_output_unittest_.Po │ │ │ │ ├── production.Po │ │ │ │ ├── test_gtest_death_test_test-gtest-death-test_test.Po │ │ │ │ ├── test_gtest_no_rtti_test-gtest_unittest.Po │ │ │ │ ├── test_gtest_throw_on_failure_ex_test-gtest_throw_on_failure_ex_test.Po │ │ │ │ ├── test_gtest_throw_on_failure_test_-gtest_throw_on_failure_test_.Po │ │ │ │ ├── test_gtest_tuple_test-gtest-tuple_test.Po │ │ │ │ ├── test_gtest_use_own_tuple_test-gtest-param-test2_test.Po │ │ │ │ └── test_gtest_use_own_tuple_test-gtest-param-test_test.Po │ │ │ ├── gtest-death-test_test.cc │ │ │ ├── gtest-filepath_test.cc │ │ │ ├── gtest-linked_ptr_test.cc │ │ │ ├── gtest-listener_test.cc │ │ │ ├── gtest-message_test.cc │ │ │ ├── gtest-options_test.cc │ │ │ ├── gtest-param-test2_test.cc │ │ │ ├── gtest-param-test_test.cc │ │ │ ├── gtest-param-test_test.h │ │ │ ├── gtest-port_test.cc │ │ │ ├── gtest-test-part_test.cc │ │ │ ├── gtest-tuple_test.cc │ │ │ ├── gtest-typed-test2_test.cc │ │ │ ├── gtest-typed-test_test.cc │ │ │ ├── gtest-typed-test_test.h │ │ │ ├── gtest-unittest-api_test.cc │ │ │ ├── gtest_all_test.cc │ │ │ ├── gtest_break_on_failure_unittest.py │ │ │ ├── gtest_break_on_failure_unittest_.cc │ │ │ ├── gtest_color_test.py │ │ │ ├── gtest_color_test_.cc │ │ │ ├── gtest_env_var_test.py │ │ │ ├── gtest_env_var_test_.cc │ │ │ ├── gtest_environment_test.cc │ │ │ ├── gtest_filter_unittest.py │ │ │ ├── gtest_filter_unittest_.cc │ │ │ ├── gtest_help_test.py │ │ │ ├── gtest_help_test_.cc │ │ │ ├── gtest_list_tests_unittest.py │ │ │ ├── gtest_list_tests_unittest_.cc │ │ │ ├── gtest_main_unittest.cc │ │ │ ├── gtest_nc.cc │ │ │ ├── gtest_nc_test.py │ │ │ ├── gtest_no_test_unittest.cc │ │ │ ├── gtest_output_test.py │ │ │ ├── gtest_output_test_.cc │ │ │ ├── gtest_output_test_golden_lin.txt │ │ │ ├── gtest_output_test_golden_win.txt │ │ │ ├── gtest_pred_impl_unittest.cc │ │ │ ├── gtest_prod_test.cc │ │ │ ├── gtest_repeat_test.cc │ │ │ ├── gtest_shuffle_test.py │ │ │ ├── gtest_shuffle_test_.cc │ │ │ ├── gtest_sole_header_test.cc │ │ │ ├── gtest_stress_test.cc │ │ │ ├── gtest_test_utils.py │ │ │ ├── gtest_throw_on_failure_ex_test.cc │ │ │ ├── gtest_throw_on_failure_test.py │ │ │ ├── gtest_throw_on_failure_test_.cc │ │ │ ├── gtest_uninitialized_test.py │ │ │ ├── gtest_uninitialized_test_.cc │ │ │ ├── gtest_unittest.cc │ │ │ ├── gtest_xml_outfile1_test_.cc │ │ │ ├── gtest_xml_outfile2_test_.cc │ │ │ ├── gtest_xml_outfiles_test.py │ │ │ ├── gtest_xml_output_unittest.py │ │ │ ├── gtest_xml_output_unittest_.cc │ │ │ ├── gtest_xml_test_utils.py │ │ │ ├── production.cc │ │ │ └── production.h │ │ └── xcode │ │ │ ├── Config │ │ │ ├── DebugProject.xcconfig │ │ │ ├── FrameworkTarget.xcconfig │ │ │ ├── General.xcconfig │ │ │ ├── ReleaseProject.xcconfig │ │ │ ├── StaticLibraryTarget.xcconfig │ │ │ └── TestTarget.xcconfig │ │ │ ├── Resources │ │ │ └── Info.plist │ │ │ ├── Samples │ │ │ └── FrameworkSample │ │ │ │ ├── Info.plist │ │ │ │ ├── WidgetFramework.xcodeproj │ │ │ │ └── project.pbxproj │ │ │ │ ├── widget.cc │ │ │ │ ├── widget.h │ │ │ │ └── widget_test.cc │ │ │ ├── Scripts │ │ │ ├── runtests.sh │ │ │ └── versiongenerate.py │ │ │ └── gtest.xcodeproj │ │ │ └── project.pbxproj │ ├── install-sh │ ├── java │ │ ├── README.txt │ │ ├── pom.xml │ │ └── src │ │ │ ├── main │ │ │ └── java │ │ │ │ └── com │ │ │ │ └── google │ │ │ │ └── protobuf │ │ │ │ ├── AbstractMessage.java │ │ │ │ ├── AbstractMessageLite.java │ │ │ │ ├── BlockingRpcChannel.java │ │ │ │ ├── BlockingService.java │ │ │ │ ├── ByteString.java │ │ │ │ ├── CodedInputStream.java │ │ │ │ ├── CodedOutputStream.java │ │ │ │ ├── Descriptors.java │ │ │ │ ├── DynamicMessage.java │ │ │ │ ├── ExtensionRegistry.java │ │ │ │ ├── ExtensionRegistryLite.java │ │ │ │ ├── FieldSet.java │ │ │ │ ├── GeneratedMessage.java │ │ │ │ ├── GeneratedMessageLite.java │ │ │ │ ├── Internal.java │ │ │ │ ├── InvalidProtocolBufferException.java │ │ │ │ ├── Message.java │ │ │ │ ├── MessageLite.java │ │ │ │ ├── ProtocolMessageEnum.java │ │ │ │ ├── RpcCallback.java │ │ │ │ ├── RpcChannel.java │ │ │ │ ├── RpcController.java │ │ │ │ ├── RpcUtil.java │ │ │ │ ├── Service.java │ │ │ │ ├── ServiceException.java │ │ │ │ ├── TextFormat.java │ │ │ │ ├── UninitializedMessageException.java │ │ │ │ ├── UnknownFieldSet.java │ │ │ │ └── WireFormat.java │ │ │ └── test │ │ │ └── java │ │ │ └── com │ │ │ └── google │ │ │ └── protobuf │ │ │ ├── AbstractMessageTest.java │ │ │ ├── CodedInputStreamTest.java │ │ │ ├── CodedOutputStreamTest.java │ │ │ ├── DescriptorsTest.java │ │ │ ├── DynamicMessageTest.java │ │ │ ├── GeneratedMessageTest.java │ │ │ ├── LiteTest.java │ │ │ ├── MessageTest.java │ │ │ ├── ServiceTest.java │ │ │ ├── TestUtil.java │ │ │ ├── TextFormatTest.java │ │ │ ├── UnknownFieldSetTest.java │ │ │ ├── WireFormatTest.java │ │ │ └── multiple_files_test.proto │ ├── libtool │ ├── ltmain.sh │ ├── m4 │ │ ├── ac_system_extensions.m4 │ │ ├── acx_check_suncc.m4 │ │ ├── acx_pthread.m4 │ │ ├── libtool.m4 │ │ ├── ltoptions.m4 │ │ ├── ltsugar.m4 │ │ ├── ltversion.m4 │ │ ├── lt~obsolete.m4 │ │ └── stl_hash.m4 │ ├── missing │ ├── protobuf-lite.pc │ ├── protobuf-lite.pc.in │ ├── protobuf.pc │ ├── protobuf.pc.in │ ├── python │ │ ├── README.txt │ │ ├── ez_setup.py │ │ ├── google │ │ │ ├── __init__.py │ │ │ └── protobuf │ │ │ │ ├── __init__.py │ │ │ │ ├── descriptor.py │ │ │ │ ├── internal │ │ │ │ ├── __init__.py │ │ │ │ ├── containers.py │ │ │ │ ├── decoder.py │ │ │ │ ├── descriptor_test.py │ │ │ │ ├── encoder.py │ │ │ │ ├── generator_test.py │ │ │ │ ├── message_listener.py │ │ │ │ ├── message_test.py │ │ │ │ ├── more_extensions.proto │ │ │ │ ├── more_messages.proto │ │ │ │ ├── reflection_test.py │ │ │ │ ├── service_reflection_test.py │ │ │ │ ├── test_util.py │ │ │ │ ├── text_format_test.py │ │ │ │ ├── type_checkers.py │ │ │ │ ├── wire_format.py │ │ │ │ └── wire_format_test.py │ │ │ │ ├── message.py │ │ │ │ ├── reflection.py │ │ │ │ ├── service.py │ │ │ │ ├── service_reflection.py │ │ │ │ └── text_format.py │ │ ├── mox.py │ │ ├── setup.py │ │ └── stubout.py │ ├── src │ │ ├── .deps │ │ │ ├── code_generator.Plo │ │ │ ├── coded_stream.Plo │ │ │ ├── command_line_interface.Plo │ │ │ ├── common.Plo │ │ │ ├── cpp_enum.Plo │ │ │ ├── cpp_enum_field.Plo │ │ │ ├── cpp_extension.Plo │ │ │ ├── cpp_field.Plo │ │ │ ├── cpp_file.Plo │ │ │ ├── cpp_generator.Plo │ │ │ ├── cpp_helpers.Plo │ │ │ ├── cpp_message.Plo │ │ │ ├── cpp_message_field.Plo │ │ │ ├── cpp_primitive_field.Plo │ │ │ ├── cpp_service.Plo │ │ │ ├── cpp_string_field.Plo │ │ │ ├── descriptor.Plo │ │ │ ├── descriptor.pb.Plo │ │ │ ├── descriptor_database.Plo │ │ │ ├── dynamic_message.Plo │ │ │ ├── extension_set.Plo │ │ │ ├── extension_set_heavy.Plo │ │ │ ├── generated_message_reflection.Plo │ │ │ ├── generated_message_util.Plo │ │ │ ├── gzip_stream.Plo │ │ │ ├── hash.Plo │ │ │ ├── importer.Plo │ │ │ ├── java_enum.Plo │ │ │ ├── java_enum_field.Plo │ │ │ ├── java_extension.Plo │ │ │ ├── java_field.Plo │ │ │ ├── java_file.Plo │ │ │ ├── java_generator.Plo │ │ │ ├── java_helpers.Plo │ │ │ ├── java_message.Plo │ │ │ ├── java_message_field.Plo │ │ │ ├── java_primitive_field.Plo │ │ │ ├── java_service.Plo │ │ │ ├── main.Po │ │ │ ├── message.Plo │ │ │ ├── message_lite.Plo │ │ │ ├── once.Plo │ │ │ ├── parser.Plo │ │ │ ├── plugin.Plo │ │ │ ├── plugin.pb.Plo │ │ │ ├── printer.Plo │ │ │ ├── protobuf_lazy_descriptor_test-cpp_test_bad_identifiers.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-cpp_unittest.Po │ │ │ ├── protobuf_lazy_descriptor_test-file.Po │ │ │ ├── protobuf_lazy_descriptor_test-googletest.Po │ │ │ ├── protobuf_lazy_descriptor_test-test_util.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_custom_options.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_embed_optimize_for.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_empty.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_import.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_import_lite.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_lite.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_lite_imports_nonlite.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_mset.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_no_generic_services.pb.Po │ │ │ ├── protobuf_lazy_descriptor_test-unittest_optimize_for.pb.Po │ │ │ ├── protobuf_lite_test-lite_unittest.Po │ │ │ ├── protobuf_lite_test-test_util_lite.Po │ │ │ ├── protobuf_lite_test-unittest_import_lite.pb.Po │ │ │ ├── protobuf_lite_test-unittest_lite.pb.Po │ │ │ ├── protobuf_test-coded_stream_unittest.Po │ │ │ ├── protobuf_test-command_line_interface_unittest.Po │ │ │ ├── protobuf_test-common_unittest.Po │ │ │ ├── protobuf_test-cpp_bootstrap_unittest.Po │ │ │ ├── protobuf_test-cpp_plugin_unittest.Po │ │ │ ├── protobuf_test-cpp_test_bad_identifiers.pb.Po │ │ │ ├── protobuf_test-cpp_unittest.Po │ │ │ ├── protobuf_test-descriptor_database_unittest.Po │ │ │ ├── protobuf_test-descriptor_unittest.Po │ │ │ ├── protobuf_test-dynamic_message_unittest.Po │ │ │ ├── protobuf_test-extension_set_unittest.Po │ │ │ ├── protobuf_test-file.Po │ │ │ ├── protobuf_test-generated_message_reflection_unittest.Po │ │ │ ├── protobuf_test-googletest.Po │ │ │ ├── protobuf_test-importer_unittest.Po │ │ │ ├── protobuf_test-java_plugin_unittest.Po │ │ │ ├── protobuf_test-message_unittest.Po │ │ │ ├── protobuf_test-mock_code_generator.Po │ │ │ ├── protobuf_test-once_unittest.Po │ │ │ ├── protobuf_test-parser_unittest.Po │ │ │ ├── protobuf_test-printer_unittest.Po │ │ │ ├── protobuf_test-python_plugin_unittest.Po │ │ │ ├── protobuf_test-reflection_ops_unittest.Po │ │ │ ├── protobuf_test-repeated_field_unittest.Po │ │ │ ├── protobuf_test-structurally_valid_unittest.Po │ │ │ ├── protobuf_test-strutil_unittest.Po │ │ │ ├── protobuf_test-test_util.Po │ │ │ ├── protobuf_test-text_format_unittest.Po │ │ │ ├── protobuf_test-tokenizer_unittest.Po │ │ │ ├── protobuf_test-unittest.pb.Po │ │ │ ├── protobuf_test-unittest_custom_options.pb.Po │ │ │ ├── protobuf_test-unittest_embed_optimize_for.pb.Po │ │ │ ├── protobuf_test-unittest_empty.pb.Po │ │ │ ├── protobuf_test-unittest_import.pb.Po │ │ │ ├── protobuf_test-unittest_import_lite.pb.Po │ │ │ ├── protobuf_test-unittest_lite.pb.Po │ │ │ ├── protobuf_test-unittest_lite_imports_nonlite.pb.Po │ │ │ ├── protobuf_test-unittest_mset.pb.Po │ │ │ ├── protobuf_test-unittest_no_generic_services.pb.Po │ │ │ ├── protobuf_test-unittest_optimize_for.pb.Po │ │ │ ├── protobuf_test-unknown_field_set_unittest.Po │ │ │ ├── protobuf_test-wire_format_unittest.Po │ │ │ ├── protobuf_test-zero_copy_stream_unittest.Po │ │ │ ├── python_generator.Plo │ │ │ ├── reflection_ops.Plo │ │ │ ├── repeated_field.Plo │ │ │ ├── service.Plo │ │ │ ├── structurally_valid.Plo │ │ │ ├── strutil.Plo │ │ │ ├── subprocess.Plo │ │ │ ├── substitute.Plo │ │ │ ├── test_plugin-file.Po │ │ │ ├── test_plugin-mock_code_generator.Po │ │ │ ├── test_plugin-test_plugin.Po │ │ │ ├── text_format.Plo │ │ │ ├── tokenizer.Plo │ │ │ ├── unknown_field_set.Plo │ │ │ ├── wire_format.Plo │ │ │ ├── wire_format_lite.Plo │ │ │ ├── zcgunzip.Po │ │ │ ├── zcgzip.Po │ │ │ ├── zero_copy_stream.Plo │ │ │ ├── zero_copy_stream_impl.Plo │ │ │ ├── zero_copy_stream_impl_lite.Plo │ │ │ └── zip_writer.Plo │ │ ├── Makefile │ │ ├── Makefile.am │ │ ├── Makefile.in │ │ └── google │ │ │ └── protobuf │ │ │ ├── compiler │ │ │ ├── code_generator.cc │ │ │ ├── code_generator.h │ │ │ ├── command_line_interface.cc │ │ │ ├── command_line_interface.h │ │ │ ├── command_line_interface_unittest.cc │ │ │ ├── cpp │ │ │ │ ├── cpp_bootstrap_unittest.cc │ │ │ │ ├── cpp_enum.cc │ │ │ │ ├── cpp_enum.h │ │ │ │ ├── cpp_enum_field.cc │ │ │ │ ├── cpp_enum_field.h │ │ │ │ ├── cpp_extension.cc │ │ │ │ ├── cpp_extension.h │ │ │ │ ├── cpp_field.cc │ │ │ │ ├── cpp_field.h │ │ │ │ ├── cpp_file.cc │ │ │ │ ├── cpp_file.h │ │ │ │ ├── cpp_generator.cc │ │ │ │ ├── cpp_generator.h │ │ │ │ ├── cpp_helpers.cc │ │ │ │ ├── cpp_helpers.h │ │ │ │ ├── cpp_message.cc │ │ │ │ ├── cpp_message.h │ │ │ │ ├── cpp_message_field.cc │ │ │ │ ├── cpp_message_field.h │ │ │ │ ├── cpp_plugin_unittest.cc │ │ │ │ ├── cpp_primitive_field.cc │ │ │ │ ├── cpp_primitive_field.h │ │ │ │ ├── cpp_service.cc │ │ │ │ ├── cpp_service.h │ │ │ │ ├── cpp_string_field.cc │ │ │ │ ├── cpp_string_field.h │ │ │ │ ├── cpp_test_bad_identifiers.proto │ │ │ │ └── cpp_unittest.cc │ │ │ ├── importer.cc │ │ │ ├── importer.h │ │ │ ├── importer_unittest.cc │ │ │ ├── java │ │ │ │ ├── java_enum.cc │ │ │ │ ├── java_enum.h │ │ │ │ ├── java_enum_field.cc │ │ │ │ ├── java_enum_field.h │ │ │ │ ├── java_extension.cc │ │ │ │ ├── java_extension.h │ │ │ │ ├── java_field.cc │ │ │ │ ├── java_field.h │ │ │ │ ├── java_file.cc │ │ │ │ ├── java_file.h │ │ │ │ ├── java_generator.cc │ │ │ │ ├── java_generator.h │ │ │ │ ├── java_helpers.cc │ │ │ │ ├── java_helpers.h │ │ │ │ ├── java_message.cc │ │ │ │ ├── java_message.h │ │ │ │ ├── java_message_field.cc │ │ │ │ ├── java_message_field.h │ │ │ │ ├── java_plugin_unittest.cc │ │ │ │ ├── java_primitive_field.cc │ │ │ │ ├── java_primitive_field.h │ │ │ │ ├── java_service.cc │ │ │ │ └── java_service.h │ │ │ ├── main.cc │ │ │ ├── mock_code_generator.cc │ │ │ ├── mock_code_generator.h │ │ │ ├── package_info.h │ │ │ ├── parser.cc │ │ │ ├── parser.h │ │ │ ├── parser_unittest.cc │ │ │ ├── plugin.cc │ │ │ ├── plugin.h │ │ │ ├── plugin.pb.cc │ │ │ ├── plugin.pb.h │ │ │ ├── plugin.proto │ │ │ ├── python │ │ │ │ ├── python_generator.cc │ │ │ │ ├── python_generator.h │ │ │ │ └── python_plugin_unittest.cc │ │ │ ├── subprocess.cc │ │ │ ├── subprocess.h │ │ │ ├── test_plugin.cc │ │ │ ├── zip_output_unittest.sh │ │ │ ├── zip_writer.cc │ │ │ └── zip_writer.h │ │ │ ├── descriptor.cc │ │ │ ├── descriptor.h │ │ │ ├── descriptor.pb.cc │ │ │ ├── descriptor.pb.h │ │ │ ├── descriptor.proto │ │ │ ├── descriptor_database.cc │ │ │ ├── descriptor_database.h │ │ │ ├── descriptor_database_unittest.cc │ │ │ ├── descriptor_unittest.cc │ │ │ ├── dynamic_message.cc │ │ │ ├── dynamic_message.h │ │ │ ├── dynamic_message_unittest.cc │ │ │ ├── extension_set.cc │ │ │ ├── extension_set.h │ │ │ ├── extension_set_heavy.cc │ │ │ ├── extension_set_unittest.cc │ │ │ ├── generated_message_reflection.cc │ │ │ ├── generated_message_reflection.h │ │ │ ├── generated_message_reflection_unittest.cc │ │ │ ├── generated_message_util.cc │ │ │ ├── generated_message_util.h │ │ │ ├── io │ │ │ ├── coded_stream.cc │ │ │ ├── coded_stream.h │ │ │ ├── coded_stream_inl.h │ │ │ ├── coded_stream_unittest.cc │ │ │ ├── gzip_stream.cc │ │ │ ├── gzip_stream.h │ │ │ ├── gzip_stream_unittest.sh │ │ │ ├── package_info.h │ │ │ ├── printer.cc │ │ │ ├── printer.h │ │ │ ├── printer_unittest.cc │ │ │ ├── tokenizer.cc │ │ │ ├── tokenizer.h │ │ │ ├── tokenizer_unittest.cc │ │ │ ├── zero_copy_stream.cc │ │ │ ├── zero_copy_stream.h │ │ │ ├── zero_copy_stream_impl.cc │ │ │ ├── zero_copy_stream_impl.h │ │ │ ├── zero_copy_stream_impl_lite.cc │ │ │ ├── zero_copy_stream_impl_lite.h │ │ │ └── zero_copy_stream_unittest.cc │ │ │ ├── lite_unittest.cc │ │ │ ├── message.cc │ │ │ ├── message.h │ │ │ ├── message_lite.cc │ │ │ ├── message_lite.h │ │ │ ├── message_unittest.cc │ │ │ ├── package_info.h │ │ │ ├── reflection_ops.cc │ │ │ ├── reflection_ops.h │ │ │ ├── reflection_ops_unittest.cc │ │ │ ├── repeated_field.cc │ │ │ ├── repeated_field.h │ │ │ ├── repeated_field_unittest.cc │ │ │ ├── service.cc │ │ │ ├── service.h │ │ │ ├── stubs │ │ │ ├── common.cc │ │ │ ├── common.h │ │ │ ├── common_unittest.cc │ │ │ ├── hash.cc │ │ │ ├── hash.h │ │ │ ├── map-util.h │ │ │ ├── once.cc │ │ │ ├── once.h │ │ │ ├── once_unittest.cc │ │ │ ├── stl_util-inl.h │ │ │ ├── structurally_valid.cc │ │ │ ├── structurally_valid_unittest.cc │ │ │ ├── strutil.cc │ │ │ ├── strutil.h │ │ │ ├── strutil_unittest.cc │ │ │ ├── substitute.cc │ │ │ └── substitute.h │ │ │ ├── test_util.cc │ │ │ ├── test_util.h │ │ │ ├── test_util_lite.cc │ │ │ ├── test_util_lite.h │ │ │ ├── testdata │ │ │ ├── golden_message │ │ │ ├── golden_packed_fields_message │ │ │ ├── text_format_unittest_data.txt │ │ │ └── text_format_unittest_extensions_data.txt │ │ │ ├── testing │ │ │ ├── file.cc │ │ │ ├── file.h │ │ │ ├── googletest.cc │ │ │ ├── googletest.h │ │ │ ├── zcgunzip.cc │ │ │ └── zcgzip.cc │ │ │ ├── text_format.cc │ │ │ ├── text_format.h │ │ │ ├── text_format_unittest.cc │ │ │ ├── unittest.proto │ │ │ ├── unittest_custom_options.proto │ │ │ ├── unittest_embed_optimize_for.proto │ │ │ ├── unittest_empty.proto │ │ │ ├── unittest_enormous_descriptor.proto │ │ │ ├── unittest_import.proto │ │ │ ├── unittest_import_lite.proto │ │ │ ├── unittest_lite.proto │ │ │ ├── unittest_lite_imports_nonlite.proto │ │ │ ├── unittest_mset.proto │ │ │ ├── unittest_no_generic_services.proto │ │ │ ├── unittest_optimize_for.proto │ │ │ ├── unknown_field_set.cc │ │ │ ├── unknown_field_set.h │ │ │ ├── unknown_field_set_unittest.cc │ │ │ ├── wire_format.cc │ │ │ ├── wire_format.h │ │ │ ├── wire_format_lite.cc │ │ │ ├── wire_format_lite.h │ │ │ ├── wire_format_lite_inl.h │ │ │ └── wire_format_unittest.cc │ ├── stamp-h1 │ └── vsprojects │ │ ├── UpgradeLog.XML │ │ ├── config.h │ │ ├── convert2008to2005.sh │ │ ├── extract_includes.bat │ │ ├── libprotobuf-lite.vcproj │ │ ├── libprotobuf-lite.vcxproj │ │ ├── libprotobuf-lite.vcxproj.filters │ │ ├── libprotobuf-lite.vcxproj.user │ │ ├── libprotobuf.vcproj │ │ ├── libprotobuf.vcxproj │ │ ├── libprotobuf.vcxproj.filters │ │ ├── libprotobuf.vcxproj.user │ │ ├── libprotoc.vcproj │ │ ├── libprotoc.vcxproj │ │ ├── libprotoc.vcxproj.filters │ │ ├── libprotoc.vcxproj.user │ │ ├── lite-test.vcproj │ │ ├── lite-test.vcxproj │ │ ├── lite-test.vcxproj.filters │ │ ├── lite-test.vcxproj.user │ │ ├── protobuf.sln │ │ ├── protobuf.suo │ │ ├── protoc.vcproj │ │ ├── protoc.vcxproj │ │ ├── protoc.vcxproj.filters │ │ ├── protoc.vcxproj.user │ │ ├── readme.txt │ │ ├── test_plugin.vcproj │ │ ├── test_plugin.vcxproj │ │ ├── test_plugin.vcxproj.filters │ │ ├── test_plugin.vcxproj.user │ │ ├── tests.vcproj │ │ ├── tests.vcxproj │ │ ├── tests.vcxproj.filters │ │ └── tests.vcxproj.user └── xcore │ ├── Debug │ └── xcore.log │ ├── http_util.cpp │ ├── http_util.h │ ├── makefile │ ├── monitor.cpp │ ├── monitor.h │ ├── xcore.vcxproj │ ├── xcore.vcxproj.filters │ ├── xcore.vcxproj.user │ ├── xcore_atomic.cpp │ ├── xcore_atomic.h │ ├── xcore_base64.cpp │ ├── xcore_base64.h │ ├── xcore_byte_order.cpp │ ├── xcore_byte_order.h │ ├── xcore_clock.cpp │ ├── xcore_clock.h │ ├── xcore_conver.cpp │ ├── xcore_conver.h │ ├── xcore_crc.cpp │ ├── xcore_crc.h │ ├── xcore_critical.cpp │ ├── xcore_critical.h │ ├── xcore_define.h │ ├── xcore_event.cpp │ ├── xcore_event.h │ ├── xcore_file_util.cpp │ ├── xcore_file_util.h │ ├── xcore_json.cpp │ ├── xcore_json.h │ ├── xcore_log.cpp │ ├── xcore_log.h │ ├── xcore_macro.h │ ├── xcore_markup.cpp │ ├── xcore_markup.h │ ├── xcore_md5.cpp │ ├── xcore_md5.h │ ├── xcore_memory.cpp │ ├── xcore_memory.h │ ├── xcore_mutex.cpp │ ├── xcore_mutex.h │ ├── xcore_noncopyable.h │ ├── xcore_rw_lock.cpp │ ├── xcore_rw_lock.h │ ├── xcore_semaphore.cpp │ ├── xcore_semaphore.h │ ├── xcore_smart_ptr.h │ ├── xcore_sock_addr.cpp │ ├── xcore_sock_addr.h │ ├── xcore_socket.cpp │ ├── xcore_socket.h │ ├── xcore_str_parser.cpp │ ├── xcore_str_parser.h │ ├── xcore_str_util.cpp │ ├── xcore_str_util.h │ ├── xcore_test.h │ ├── xcore_thread.cpp │ ├── xcore_thread.h │ ├── xcore_thread_array.cpp │ ├── xcore_thread_array.h │ ├── xcore_thread_pool.cpp │ ├── xcore_thread_pool.h │ ├── xcore_thread_queue.h │ ├── xcore_time.cpp │ ├── xcore_time.h │ ├── xcore_time_span.cpp │ ├── xcore_time_span.h │ ├── xcore_timer.cpp │ ├── xcore_timer.h │ ├── xcore_utility.cpp │ ├── xcore_utility.h │ ├── xcore_version.cpp │ └── xcore_version.h ├── svr ├── CBackNetD.cpp ├── CBackNetD.h ├── CCallbackObj.cpp ├── CCallbackObj.h ├── CCliNetD.bak ├── CCliNetD.cpp ├── CCliNetD.h ├── CConnectPoll.h ├── CLog.cpp ├── CLog.h ├── CMainD.cpp ├── CMainD.h ├── CMetaThread.h ├── CNetfun.cpp ├── CNetfun.h ├── CQueue.h ├── CRWCache.bak ├── CRWCache.cpp ├── CRWCache.h ├── CSvr.cpp ├── CSvr.h ├── CTcpSocket.cpp ├── CTcpSocket.h ├── CThreadSync.cpp ├── CThreadSync.h ├── CTimeout.h ├── CTimerContainer.cpp ├── CTimerContainer.h ├── Define.h ├── Interaction.cpp ├── Interaction.h ├── Makefile ├── NSHeader.h ├── Statistic.cpp └── Statistic.h ├── third-party ├── gmock │ ├── gmock-actions.h │ ├── gmock-cardinalities.h │ ├── gmock-generated-actions.h │ ├── gmock-generated-function-mockers.h │ ├── gmock-generated-matchers.h │ ├── gmock-generated-nice-strict.h │ ├── gmock-matchers.h │ ├── gmock-more-actions.h │ ├── gmock-spec-builders.h │ ├── gmock.h │ ├── internal │ │ ├── gmock-generated-internal-utils.h │ │ ├── gmock-internal-utils.h │ │ └── gmock-port.h │ └── src │ │ ├── gmock-all.cc │ │ ├── gmock-cardinalities.cc │ │ ├── gmock-internal-utils.cc │ │ ├── gmock-matchers.cc │ │ ├── gmock-spec-builders.cc │ │ ├── gmock.cc │ │ └── gmock_main.cc └── gunittest │ ├── gtest-death-test-internal.h │ ├── gtest-death-test.cc │ ├── gtest-death-test.h │ ├── gtest-filepath.cc │ ├── gtest-filepath.h │ ├── gtest-internal-inl.h │ ├── gtest-internal.h │ ├── gtest-linked_ptr.h │ ├── gtest-message.h │ ├── gtest-param-test.h │ ├── gtest-param-util-generated.h │ ├── gtest-param-util.h │ ├── gtest-port.cc │ ├── gtest-port.h │ ├── gtest-printers.cc │ ├── gtest-printers.h │ ├── gtest-spi.h │ ├── gtest-string.h │ ├── gtest-test-part.cc │ ├── gtest-test-part.h │ ├── gtest-tuple.h │ ├── gtest-type-util.h │ ├── gtest-typed-test.cc │ ├── gtest-typed-test.h │ ├── gtest.cc │ ├── gtest.h │ ├── gtest_main.cc │ ├── gtest_pred_impl.h │ ├── gtest_prod.h │ └── makefile └── xcore ├── closure.h ├── co_hook_sys_call.cpp ├── coroutine.cpp ├── coroutine.h ├── makefile ├── monitor.cpp ├── monitor.h ├── pbext.h ├── xcore.vcxproj ├── xcore.vcxproj.filters ├── xcore.vcxproj.user ├── xcore_atomic.cpp ├── xcore_atomic.h ├── xcore_base64.cpp ├── xcore_base64.h ├── xcore_byte_order.cpp ├── xcore_byte_order.h ├── xcore_clock.cpp ├── xcore_clock.h ├── xcore_conver.cpp ├── xcore_conver.h ├── xcore_crc.cpp ├── xcore_crc.h ├── xcore_critical.cpp ├── xcore_critical.h ├── xcore_define.h ├── xcore_event.cpp ├── xcore_event.h ├── xcore_file_util.cpp ├── xcore_file_util.h ├── xcore_json.cpp ├── xcore_json.h ├── xcore_log.cpp ├── xcore_log.h ├── xcore_macro.h ├── xcore_markup.cpp ├── xcore_markup.h ├── xcore_md5.cpp ├── xcore_md5.h ├── xcore_memory.cpp ├── xcore_memory.h ├── xcore_mutex.cpp ├── xcore_mutex.h ├── xcore_noncopyable.h ├── xcore_resource_pool.h ├── xcore_rpc_common.cpp ├── xcore_rpc_common.h ├── xcore_rw_lock.cpp ├── xcore_rw_lock.h ├── xcore_semaphore.cpp ├── xcore_semaphore.h ├── xcore_smart_ptr.h ├── xcore_sock_addr.cpp ├── xcore_sock_addr.h ├── xcore_socket.cpp ├── xcore_socket.h ├── xcore_str_parser.cpp ├── xcore_str_parser.h ├── xcore_str_util.cpp ├── xcore_str_util.h ├── xcore_test.h ├── xcore_thread.cpp ├── xcore_thread.h ├── xcore_thread_array.cpp ├── xcore_thread_array.h ├── xcore_thread_pool.cpp ├── xcore_thread_pool.h ├── xcore_thread_queue.h ├── xcore_time.cpp ├── xcore_time.h ├── xcore_time_span.cpp ├── xcore_time_span.h ├── xcore_timer.cpp ├── xcore_timer.h ├── xcore_utility.cpp ├── xcore_utility.h ├── xcore_version.cpp └── xcore_version.h /README.md: -------------------------------------------------------------------------------- 1 | FastRPC是一款内部封装了类似go语言协程+通道特性的C++ RPC框架,使得你能够使用同步的代码编写出异步效果同时提供RPC的功能。 2 | 例如:可使的mysql redis的操作在保持同步编码方式下达到异步的效果。 3 | 另外框架特别推出了协程模式下的线程池、资源池、定时器使用。 4 | 使得多线程和协程间可轻易切换进行编程,达到一些无法hook的阻塞系统调用可用多线程来补充(例如C++调用python的阻塞库) 5 | 6 | 文档请移步这里 http://my.oschina.net/feimat/blog/663758 -------------------------------------------------------------------------------- /fastrpc/build.sh: -------------------------------------------------------------------------------- 1 | cur_dir=`pwd`; 2 | cd ependingpool 3 | make clean 4 | make 5 | cd $cur_dir 6 | 7 | cd http_codec 8 | make clean 9 | make 10 | cd $cur_dir 11 | 12 | cd svr 13 | make clean 14 | make 15 | cd $cur_dir 16 | 17 | cd comm 18 | make clean 19 | make 20 | cd $cur_dir 21 | 22 | cd xcore 23 | make clean 24 | make 25 | cd $cur_dir 26 | 27 | cd http_rpc_client 28 | make clean 29 | make 30 | cd $cur_dir 31 | 32 | cd http_rpc_server 33 | make clean 34 | make 35 | cd $cur_dir 36 | 37 | -------------------------------------------------------------------------------- /fastrpc/clean: -------------------------------------------------------------------------------- 1 | cur_dir=`pwd`; 2 | cd ependingpool 3 | make clean 4 | cd $cur_dir 5 | 6 | cd http_codec 7 | make clean 8 | cd $cur_dir 9 | 10 | cd svr 11 | make clean 12 | cd $cur_dir 13 | 14 | cd ipcs_common 15 | make clean 16 | cd $cur_dir 17 | 18 | cd comm 19 | make clean 20 | cd $cur_dir 21 | 22 | cd xcore 23 | make clean 24 | cd $cur_dir 25 | 26 | cd http_rpc_client 27 | make clean 28 | cd $cur_dir 29 | 30 | cd http_rpc_server 31 | make clean 32 | cd $cur_dir 33 | -------------------------------------------------------------------------------- /fastrpc/clean.sh: -------------------------------------------------------------------------------- 1 | cur_dir=`pwd`; 2 | cd ependingpool 3 | make clean 4 | cd $cur_dir 5 | 6 | cd http_codec 7 | make clean 8 | cd $cur_dir 9 | 10 | cd svr 11 | make clean 12 | cd $cur_dir 13 | 14 | cd comm 15 | make clean 16 | cd $cur_dir 17 | 18 | cd xcore 19 | make clean 20 | cd $cur_dir 21 | 22 | cd http_rpc_client 23 | make clean 24 | cd $cur_dir 25 | 26 | cd http_rpc_server 27 | make clean 28 | cd $cur_dir 29 | -------------------------------------------------------------------------------- /fastrpc/comm/Makefile.bak: -------------------------------------------------------------------------------- 1 | EXE := libcomm.a 2 | 3 | SOURCE := $(wildcard *.c) $(wildcard *.cpp) 4 | OBJS := $(patsubst %.c,%.o,$(patsubst %.cpp,%.o,$(SOURCE))) 5 | 6 | all: $(OBJS) 7 | $(AR) r $(EXE) $^ 8 | 9 | clean: 10 | rm -f $(OBJS) $(EXE) 11 | 12 | install: 13 | mv -f $(EXE) ../lib 14 | cp -f *.h ../include 15 | -------------------------------------------------------------------------------- /fastrpc/comm/base64.h: -------------------------------------------------------------------------------- 1 | #ifndef _BASE64_H_ 2 | #define _BASE64_H_ 3 | 4 | unsigned char *base64_encode(const unsigned char *str, int length,unsigned char *result,int *ret_length); 5 | unsigned char *base64_decode(const unsigned char *str, int length,unsigned char *result,int *ret_length); 6 | #endif 7 | -------------------------------------------------------------------------------- /fastrpc/comm/baseheader.h: -------------------------------------------------------------------------------- 1 | #ifndef _BASE_HEADER_H_ 2 | #define _BASE_HEADER_H_ 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include 26 | #include 27 | #include 28 | #include 29 | #include 30 | #include 31 | #include 32 | #include 33 | #include 34 | #include 35 | using namespace std; 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /fastrpc/comm/basetools.h: -------------------------------------------------------------------------------- 1 | #ifndef _BASE_TOOLS_H_ 2 | #define _BASE_TOOLS_H_ 3 | 4 | #include "baseheader.h" 5 | 6 | static const size_t log_buffer_len = 1024*20; 7 | 8 | class BaseTools { 9 | public: 10 | BaseTools(string pdir):file_is_open(false), nHandle(-1) { 11 | dir = pdir; 12 | if (dir.empty()) { 13 | dir = "./nodefine_log"; 14 | } 15 | szLine = new char[log_buffer_len]; 16 | szMsg = new char[log_buffer_len]; 17 | } 18 | ~BaseTools() { 19 | delete []szLine; 20 | delete []szMsg; 21 | } 22 | void SetLogDir(string pdir); 23 | int WriteLog(char *pszFmt,...); 24 | private: 25 | bool file_is_open; 26 | int nHandle; 27 | string last_filepath; 28 | string dir; 29 | char *szLine; 30 | char *szMsg; 31 | }; 32 | 33 | int WriteDeBase64(char *pDir,char *pStr,int nLength); 34 | void DateAdd(int day, char *all_data, char *day_data, 35 | char *all_format, char *day_format, int all_size, int day_size); 36 | bool Replace_c(char *pBuff, char *pOldStr, char *pNewStr); 37 | unsigned long GetTickCount(); 38 | #endif 39 | -------------------------------------------------------------------------------- /fastrpc/comm/cgi.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/cgi.h -------------------------------------------------------------------------------- /fastrpc/comm/common_def.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/common_def.h -------------------------------------------------------------------------------- /fastrpc/comm/conn_pool.cpp.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/conn_pool.cpp.bak -------------------------------------------------------------------------------- /fastrpc/comm/conn_pool.h.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/conn_pool.h.bak -------------------------------------------------------------------------------- /fastrpc/comm/connection.cpp,bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/connection.cpp,bak -------------------------------------------------------------------------------- /fastrpc/comm/connection.h.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/connection.h.bak -------------------------------------------------------------------------------- /fastrpc/comm/getlog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/getlog.cpp -------------------------------------------------------------------------------- /fastrpc/comm/getlog.hpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include "basetools.h" 26 | extern "C" 27 | { 28 | #include "base64.h" 29 | #include "myfile.h" 30 | #include "mysock.h" 31 | #include "my_mem.h" 32 | #include "mem_hash.h" 33 | #include "myconfig.h" 34 | #include "hashtable.h" 35 | } 36 | #include "cgi.h" 37 | 38 | -------------------------------------------------------------------------------- /fastrpc/comm/hashtable.h: -------------------------------------------------------------------------------- 1 | #ifndef hashtable_h 2 | #define hashtable_h 3 | 4 | #include 5 | 6 | typedef const char *KEY; 7 | 8 | #define KEY_DEF 9 | 10 | typedef struct 11 | { 12 | KEY name; 13 | } 14 | NAMED; 15 | 16 | typedef struct 17 | { 18 | NAMED **v; 19 | size_t size; 20 | size_t used; 21 | size_t usedLim; 22 | } 23 | HASH_TABLE; 24 | 25 | NAMED *hashTableLookup (HASH_TABLE * table, KEY name, size_t createSize); 26 | void hashTableInit (HASH_TABLE *); 27 | void hashTableDestroy (HASH_TABLE *); 28 | 29 | typedef struct 30 | { 31 | NAMED **p; 32 | NAMED **end; 33 | } 34 | HASH_TABLE_ITER; 35 | 36 | void hashTableIterInit (HASH_TABLE_ITER *, const HASH_TABLE *); 37 | NAMED *hashTableIterNext (HASH_TABLE_ITER *); 38 | 39 | #endif 40 | -------------------------------------------------------------------------------- /fastrpc/comm/log.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/log.cpp -------------------------------------------------------------------------------- /fastrpc/comm/log.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/log.h -------------------------------------------------------------------------------- /fastrpc/comm/logfile.h: -------------------------------------------------------------------------------- 1 | #ifndef logfile_h 2 | #define logfile_h 3 | 4 | #define DEFAULTLOGFILENAME "| /usr/local/apache-1.3.31/bin/rotatelogs /www/log//alllog.%Y%m%d.log 86400" 5 | #define MAX_LOG_SIZE 4096 6 | 7 | extern void debug_log (const char *msgfmt, ...); 8 | extern char _logfilename[1024]; 9 | 10 | #endif 11 | -------------------------------------------------------------------------------- /fastrpc/comm/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | ROOT_DIR= $(shell pwd) 8 | SRC_DIR= $(ROOT_DIR) 9 | 10 | SRC_FILES := $(shell find $(SRC_DIR) -name '*.cpp') 11 | SRC_FILES += $(shell find $(SRC_DIR) -name '*.c') 12 | HEAD_FILES := $(shell find $(SRC_DIR) -name '*.h*') 13 | OBJ_FILES := $(SRC_FILES:.cpp=.o) 14 | 15 | CFLAGS= -Wall -DUNIX $(DEBUG) -Wno-deprecated -D_REENTRANT 16 | 17 | INC_DIR=-I./ 18 | #INC_DIR=-I/usr/include/mysql 19 | 20 | LIB_NAME := comm 21 | LIB_SUFFIX := .a 22 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 23 | 24 | .PHONY: all clean 25 | 26 | all: $(LIB_TARGET); 27 | 28 | $(LIB_TARGET): $(OBJ_FILES) 29 | $(AR) -rc $@ $(OBJ_FILES) 30 | @if [ -d $(ROOT_DIR)/output ]; then rm -rf $(ROOT_DIR)/output; fi 31 | @if [ -d $(ROOT_DIR)/include ]; then rm -rf $(ROOT_DIR)/include; fi 32 | @mkdir $(ROOT_DIR)/output; 33 | @mkdir $(ROOT_DIR)/include; 34 | cp $(HEAD_FILES) $(ROOT_DIR)/include; 35 | cp $(OBJ_FILES) $(ROOT_DIR)/output; 36 | cp $(LIB_TARGET) $(ROOT_DIR)/output; 37 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 38 | @echo 39 | 40 | %.o: %.cpp 41 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 42 | 43 | clean: 44 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 45 | @if [ -d $(ROOT_DIR)/output ]; then rm -rf $(ROOT_DIR)/output; fi 46 | @if [ -d $(ROOT_DIR)/include ]; then rm -rf $(ROOT_DIR)/include; fi 47 | -------------------------------------------------------------------------------- /fastrpc/comm/mem_hash.h: -------------------------------------------------------------------------------- 1 | #ifndef _MEM_HASH_HEADER_H_ 2 | #define _MEM_HASH_HEADER_H_ 3 | 4 | #include 5 | #include 6 | #include 7 | 8 | #define READ_WAIT -2 9 | 10 | #ifndef KEY_DEF 11 | typedef const char *KEY; 12 | #endif 13 | 14 | typedef struct ht 15 | { 16 | unsigned int size; 17 | unsigned int num; 18 | char name_len; 19 | char value_len; 20 | char status; 21 | char psize; 22 | }ht; 23 | 24 | int mem_hash_init(ht *d, int name_len, int value_len, int max_size); 25 | int mem_hash_init_new(ht *d, int name_len, int value_len, int max_size, int my_way); 26 | int finish_hash(ht *d); 27 | int pause_hash(ht *d); 28 | int get_key(char *p, ht *d, char *name ); 29 | int make_key(char *p, ht *d, char *name, char *value); 30 | char * get_mem_name(char *p, ht *d, size_t h); 31 | char * get_mem_value(char *p, ht *d, size_t h); 32 | void input_mem(char *p, ht *d, char *value, unsigned int i); 33 | 34 | #endif 35 | -------------------------------------------------------------------------------- /fastrpc/comm/my_lib.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/my_lib.cpp -------------------------------------------------------------------------------- /fastrpc/comm/my_lib.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/my_lib.h -------------------------------------------------------------------------------- /fastrpc/comm/my_mem.h: -------------------------------------------------------------------------------- 1 | #ifndef _MY_MEM_HEADER_H_ 2 | #define _MY_MEM_HEADER_H_ 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | 13 | #include "mem_hash.h" 14 | 15 | #define MEM_LEN (1000000000/8)+1 16 | #define MEM_HEAD_LEN 32 17 | 18 | typedef struct for_mem 19 | { 20 | int mem_len; 21 | int key; 22 | int shm_id; 23 | char *p; 24 | char *p_mem; 25 | int m_len; 26 | } for_mem; 27 | 28 | typedef struct m_byte 29 | { 30 | char b1:1; 31 | char b2:1; 32 | char b3:1; 33 | char b4:1; 34 | char b5:1; 35 | char b6:1; 36 | char b7:1; 37 | char b8:1; 38 | } m_byte; 39 | 40 | extern int init_mem(for_mem *mymem, int key, int len); 41 | extern int get_tel_status(for_mem *mymem, char *tel); 42 | int read_16(char *str); 43 | int init_mem_hash_head(for_mem *mymem, ht **d); 44 | int get_mem_hash_value(char *name, char *value, for_mem *mymem, ht **d); 45 | int get_num_mem_value(char *name, char *value, for_mem *mymem, ht **d); 46 | #endif 47 | -------------------------------------------------------------------------------- /fastrpc/comm/myconfig.h: -------------------------------------------------------------------------------- 1 | #ifndef myconfig_h 2 | #define myconfig_h 3 | 4 | typedef struct _MyConfig 5 | { 6 | const char *name; 7 | char *value; 8 | }MyConfig; 9 | 10 | int myconfig_init (const char *filename); 11 | const char *myconfig_get (const char *name); 12 | const char *myconfig_set (const char *name, const char *value); 13 | void myconfig_destroy (); 14 | 15 | #endif 16 | -------------------------------------------------------------------------------- /fastrpc/comm/myfile.h: -------------------------------------------------------------------------------- 1 | // myfile.h 2 | 3 | #include 4 | #include 5 | #include 6 | 7 | int fifowrite(const char* file_name, const char* pbuf, unsigned long size); 8 | int fiforead(const char* file_name, char* pbuf, unsigned long size); 9 | -------------------------------------------------------------------------------- /fastrpc/comm/mysock.h: -------------------------------------------------------------------------------- 1 | // mysock.h 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | #define BLOCK_SIZE 1024 10 | #define MYSOCK_TIMEOUT_ERR 0 11 | #define MYSOCK_CLOSED_ERR -1 12 | 13 | int listen_socket(const char* bind_ip, unsigned long port); 14 | int safe_recv(int sd, char* pBuf, int size, int timeout); 15 | int safe_send(int sd, const char* pBuf, int size, int timeout); 16 | int connect_to(const char* ip, unsigned int port); 17 | int safe_close(int conn); 18 | int _my_inet_ntoa(struct in_addr in, char* ip_addr); 19 | 20 | -------------------------------------------------------------------------------- /fastrpc/comm/mysql_pool.cpp.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/mysql_pool.cpp.bak -------------------------------------------------------------------------------- /fastrpc/comm/mysql_pool.h.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/comm/mysql_pool.h.bak -------------------------------------------------------------------------------- /fastrpc/comm/safe_map.h: -------------------------------------------------------------------------------- 1 | /** 2 | ************************************ 3 | * Copyright (c) 2013 baidu 4 | * All rights reserved. 5 | ************************************ 6 | * 7 | * @file conn_pool.h 8 | * 9 | * @version 0.0.1 10 | * @author hemingzhe 11 | * @date 2013.6.6 12 | */ 13 | 14 | #ifndef _SAFE_MAP_H_ 15 | #define _SAFE_MAP_H_ 16 | 17 | #include 18 | #include 19 | 20 | template 21 | class SafeMap 22 | { 23 | public: 24 | SafeMap() { 25 | pthread_mutex_init(&mutex, NULL); 26 | } 27 | ~SafeMap() { 28 | pthread_mutex_destroy(&mutex); 29 | } 30 | 31 | void insert(T1 key, T2 value); 32 | 33 | T2 find(T1 key, T2 default_value); 34 | 35 | private: 36 | pthread_mutex_t mutex; 37 | std::map map_obj; 38 | }; 39 | 40 | template 41 | void SafeMap::insert(T1 key, T2 value) { 42 | pthread_mutex_lock(&mutex); 43 | map_obj.insert(std::map::value_type(key, value)); 44 | pthread_mutex_unlock(&mutex); 45 | } 46 | 47 | template 48 | T2 SafeMap::find(T1 key, T2 default_value) { 49 | pthread_mutex_lock(&mutex); 50 | map::iterator iter; 51 | iter = map_obj.find(key); 52 | if (iter != map_obj.end()) { 53 | return iter->second; 54 | } 55 | else { 56 | return default_value; 57 | } 58 | pthread_mutex_unlock(&mutex); 59 | } 60 | 61 | #endif 62 | -------------------------------------------------------------------------------- /fastrpc/comm/transunicode.cpp: -------------------------------------------------------------------------------- 1 | #include "transunicode.hpp" 2 | #include 3 | extern "C" 4 | { 5 | #include "base64.h" 6 | } 7 | using namespace std; 8 | /*int main(int argc,char *argv[]) 9 | { 10 | FILE *fp = fopen("/home/work/log/encode.txt", "r"); 11 | int nSign = 0; 12 | char filename[128] = {0}; 13 | char szDate[32] = {0}; 14 | DateAdd(-1, szDate, (char *)"%Y%m%d", sizeof(szDate)); 15 | sprintf(filename, "/home/work/log/code_%s.txt", szDate); 16 | while(1) 17 | { 18 | if(feof(fp)) break; 19 | char value[1024*15] = {0}; 20 | fgets(value, sizeof(value), fp); 21 | char dename[1024*15] = {0}; 22 | int b64resnum = 1; 23 | base64_decode((unsigned char *)value, strlen(value), (unsigned char *)dename, &b64resnum); 24 | int nHandle = open(filename,O_CREAT|O_APPEND|O_RDWR, 0666); 25 | if(nHandle && nSign == 0) 26 | { 27 | write(nHandle,dename,b64resnum); 28 | nSign = 1; 29 | } else if(nHandle && nSign == 1) 30 | { 31 | write(nHandle,dename+2,b64resnum-2); 32 | } 33 | close(nHandle); 34 | } 35 | fclose(fp); 36 | return 0; 37 | }*/ 38 | 39 | 40 | -------------------------------------------------------------------------------- /fastrpc/comm/transunicode.hpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #include 13 | #include 14 | #include 15 | #include 16 | #include 17 | #include 18 | #include 19 | #include 20 | #include 21 | #include 22 | #include 23 | #include 24 | #include 25 | #include "basetools.h" 26 | #include 27 | #include 28 | extern "C" 29 | { 30 | #include "base64.h" 31 | #include "myfile.h" 32 | #include "mysock.h" 33 | #include "my_mem.h" 34 | #include "mem_hash.h" 35 | #include "myconfig.h" 36 | #include "hashtable.h" 37 | } 38 | #include "cgi.h" 39 | 40 | -------------------------------------------------------------------------------- /fastrpc/ependingpool/BUILD: -------------------------------------------------------------------------------- 1 | # Jack 2 | cc_library( 3 | name='libroled', 4 | srcs = [ 5 | 'epoll.c', 6 | 'ependingpool.cpp', 7 | ], 8 | deps=[ 9 | ], 10 | defs=[ 11 | 'LINUX' 12 | ] 13 | ) 14 | -------------------------------------------------------------------------------- /fastrpc/ependingpool/Makefile: -------------------------------------------------------------------------------- 1 | 2 | LIBS = libependingpool.a 3 | OUTPUT = ./output/ 4 | 5 | SRCS = ependingpool.cpp 6 | HEADS = $(wildcard *.h) 7 | 8 | OBJS = $(SRCS:.cpp=.o) 9 | 10 | GCC = g++ 11 | AR = ar 12 | 13 | LIBPATH=../ 14 | 15 | #KVER = $(findstring 2.4, $(shell uname -r)) 16 | #ifeq ($(KVER), 2.4) 17 | # EPOOLOBJ = epoll.o 18 | # DEFINES = -DKERNEL24 19 | #endif 20 | 21 | 22 | 23 | 24 | INCLUDE = -I$(LIBPATH)ullib/include 25 | #CPPFLAGS = -g $(USERFLAGS) -finline-functions -W -Wall -Winline -pipe 26 | CPPFLAGS = $(USERFLAGS) -finline-functions -W -Wall -Winline -pipe -lpthread 27 | 28 | 29 | .cpp.o : 30 | $(GCC) -c $(CPPFLAGS) $(INCLUDE) $(DEFINES) $< 31 | 32 | all : deps $(LIBS) $(OUTPUT) 33 | 34 | $(LIBS) : $(OBJS) $(EPOOLOBJ) 35 | @$(AR) -r $@ $^ 36 | 37 | $(OUTPUT) : $(LIBS) 38 | @if [ -d $@ ]; then rm -rf $@; fi 39 | @if [ -d $@/include ]; then rm -rf $@/include; fi 40 | @mkdir $@; 41 | @mkdir $@/include; 42 | cp $^ $@; 43 | cp $(HEADS) $@/include; 44 | 45 | 46 | deps : $(SRCS) $(HEADS) 47 | @$(GCC) -MM -MG $(CPPFLAGS) $(INCLUDE) $(DEFINES) $(filter %.c %.cpp, $^) > $@ 48 | 49 | clean : 50 | rm -rf $(LIBS) *.o 51 | rm -rf deps $(OUTPUT) 52 | 53 | # Clean and make all 54 | rebuild : clean all 55 | 56 | -include deps 57 | 58 | ccp_check: 59 | ccp -dR ./ --formatter vim --quiet 60 | -------------------------------------------------------------------------------- /fastrpc/ependingpool/ependingpool.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/ependingpool/ependingpool.cpp -------------------------------------------------------------------------------- /fastrpc/ependingpool/ependingpool.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/ependingpool/ependingpool.h -------------------------------------------------------------------------------- /fastrpc/ependingpool/output.bak/output/include/ependingpool.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/ependingpool/output.bak/output/include/ependingpool.h -------------------------------------------------------------------------------- /fastrpc/example/client/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | 8 | ROOT_DIR = $(shell pwd) 9 | SRC_DIR = $(ROOT_DIR) 10 | PRO_ROOT = ../../ 11 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 12 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 13 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 14 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 15 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 16 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 17 | 18 | CFLAGS= -Wall -DUNIX -Wno-deprecated -D_REENTRANT -lrt -pthread -lpthread -ldl 19 | OFLAG = -o 20 | 21 | INC_DIR=-I./ 22 | INC_DIR+=-I./protobuf 23 | INC_DIR+=-I$(PRO_ROOT)/svr -I$(PRO_ROOT)/http_codec/api -I$(PRO_ROOT)/ependingpool/output/include/ 24 | INC_DIR+=-I$(PRO_ROOT)/http_codec/http #-I$(PRO_ROOT)/http_codec/json 25 | INC_DIR+=-I$(PRO_ROOT)/comm/include 26 | INC_DIR+=-I$(PRO_ROOT)/protobuf/include 27 | INC_DIR+=-I$(PRO_ROOT)/xcore/include 28 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_server 29 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_client 30 | 31 | LIBS = $(PRO_ROOT)/http_rpc_server/librpc_server.a 32 | LIBS += $(PRO_ROOT)/http_rpc_client/librpc_client.a 33 | LIBS += $(PRO_ROOT)/svr/libasvr.a $(PRO_ROOT)/http_codec/libhttpapi.a 34 | LIBS += $(PRO_ROOT)/ependingpool/output/libependingpool.a 35 | #LIBS += $(PRO_ROOT)/comm/output/libcomm.a 36 | LIBS += $(PRO_ROOT)/protobuf/lib/libprotobuf.a 37 | LIBS += $(PRO_ROOT)/xcore/libxcore.a 38 | 39 | .PHONY: all clean 40 | 41 | all: main; 42 | 43 | main: $(OBJ_FILES) 44 | $(CC) $(OBJ_FILES) $(INC_DIR) $(LIBS) $(CFLAGS) $(DEBUGFLAGS) $(OFLAG) $(RELEASE)$@ 45 | @echo *********Build $@ Successful********* 46 | @echo 47 | 48 | %.o: %.cpp 49 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 50 | %.o: %.cc 51 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 52 | 53 | clean: 54 | rm -f main $(LIB_TARGET:.a=.so) $(OBJ_FILES) 55 | -------------------------------------------------------------------------------- /fastrpc/example/client/protobuf/echo.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package echo; 3 | 4 | message EchoRequest 5 | { 6 | string message = 1; 7 | optional string aaa = 2; 8 | map values = 3; 9 | }; 10 | 11 | message EchoResponse 12 | { 13 | string response = 1; 14 | }; 15 | 16 | message DummyRequest 17 | { 18 | string message = 1; 19 | }; 20 | 21 | message DummyResponse 22 | { 23 | }; 24 | 25 | service EchoService 26 | { 27 | rpc Echo(EchoRequest) returns (EchoResponse); 28 | rpc Dummy(DummyRequest) returns (DummyResponse); 29 | }; 30 | 31 | option cc_generic_services = true; 32 | -------------------------------------------------------------------------------- /fastrpc/example/hook_example/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ -g 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | 8 | ROOT_DIR = $(shell pwd) 9 | SRC_DIR = $(ROOT_DIR) 10 | PRO_ROOT = ../../ 11 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 12 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 13 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 14 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 15 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 16 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 17 | 18 | CFLAGS= -Wall -DUNIX -Wno-deprecated -D_REENTRANT -lrt -pthread -lpthread -ldl 19 | OFLAG = -o 20 | 21 | INC_DIR=-I./ 22 | #INC_DIR+=-I./protobuf 23 | INC_DIR+=-I$(PRO_ROOT)/protobuf/include 24 | INC_DIR+=-I$(PRO_ROOT)/svr -I$(PRO_ROOT)/http_codec/api -I$(PRO_ROOT)/ependingpool/output/include/ 25 | INC_DIR+=-I$(PRO_ROOT)/http_codec/http #-I$(PRO_ROOT)/http_codec/json 26 | INC_DIR+=-I$(PRO_ROOT)/comm/include 27 | INC_DIR+=-I$(PRO_ROOT)/xcore/include 28 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_server 29 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_client 30 | 31 | LIBS = $(PRO_ROOT)/http_rpc_server/librpc_server.a 32 | LIBS += $(PRO_ROOT)/http_rpc_client/librpc_client.a 33 | LIBS += $(PRO_ROOT)/xcore/libxcore.a 34 | LIBS += $(PRO_ROOT)/protobuf/lib/libprotobuf.a 35 | LIBS += $(PRO_ROOT)/svr/libasvr.a $(PRO_ROOT)/http_codec/libhttpapi.a 36 | LIBS += $(PRO_ROOT)/ependingpool/output/libependingpool.a 37 | #LIBS += $(PRO_ROOT)/comm/output/libcomm.a 38 | 39 | .PHONY: all clean 40 | 41 | all: main; 42 | 43 | main: $(OBJ_FILES) 44 | $(CC) $(OBJ_FILES) $(INC_DIR) $(LIBS) $(CFLAGS) $(DEBUGFLAGS) $(OFLAG) $(RELEASE)$@ 45 | @echo *********Build $@ Successful********* 46 | @echo 47 | 48 | %.o: %.cpp 49 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 50 | %.o: %.cc 51 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 52 | 53 | clean: 54 | rm -f main $(LIB_TARGET:.a=.so) $(OBJ_FILES) 55 | -------------------------------------------------------------------------------- /fastrpc/example/hook_example/protobuf/echo.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package echo; 3 | 4 | message EchoRequest 5 | { 6 | string message = 1; 7 | optional string aaa = 2; 8 | map values = 3; 9 | }; 10 | 11 | message EchoResponse 12 | { 13 | string response = 1; 14 | }; 15 | 16 | message DummyRequest 17 | { 18 | string message = 1; 19 | }; 20 | 21 | message DummyResponse 22 | { 23 | }; 24 | 25 | service EchoService 26 | { 27 | rpc Echo(EchoRequest) returns (EchoResponse); 28 | rpc Dummy(DummyRequest) returns (DummyResponse); 29 | }; 30 | 31 | option cc_generic_services = true; 32 | -------------------------------------------------------------------------------- /fastrpc/example/server/arpc_server.20150604.log: -------------------------------------------------------------------------------- 1 | [2015-06-04 23:46:01] Info:IndexD CClientNetSvr detach thread create,pid=1146,tid=3902211840 2 | [2015-06-04 23:46:01] Info:Thread Pool 1 Create.Svr Start with Pool mode. 3 | [2015-06-04 23:46:01] Info:IndexD CSearchTheadPool thread create,pid=1146,tid=3825202944 4 | [2015-06-04 23:46:01] Info:IndexD CClientNetSvr detach thread create,pid=1139,tid=3902211840 5 | [2015-06-04 23:46:01] Info:IndexD CSearchTheadPool thread create,pid=1139,tid=3825202944 6 | [2015-06-04 23:46:01] Info:Thread Pool 1 Create.Svr Start with Pool mode. 7 | -------------------------------------------------------------------------------- /fastrpc/example/server/arpc_server.20150605.log: -------------------------------------------------------------------------------- 1 | [2015-06-05 22:27:25] Info:IndexD CClientNetSvr detach thread create,pid=4790,tid=520083200 2 | [2015-06-05 22:27:25] Info:IndexD CSearchTheadPool thread create,pid=4790,tid=511690496 3 | [2015-06-05 22:27:25] Info:Thread Pool 1 Create.Svr Start with Pool mode. 4 | [2015-06-05 22:27:25] Info:IndexD CClientNetSvr detach thread create,pid=4791,tid=520083200 5 | [2015-06-05 22:27:25] Info:IndexD CSearchTheadPool thread create,pid=4791,tid=511690496 6 | [2015-06-05 22:27:25] Info:Thread Pool 1 Create.Svr Start with Pool mode. 7 | -------------------------------------------------------------------------------- /fastrpc/example/server/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | 8 | ROOT_DIR = $(shell pwd) 9 | SRC_DIR = $(ROOT_DIR) 10 | PRO_ROOT = ../../ 11 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 12 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 13 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 14 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 15 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 16 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 17 | 18 | CFLAGS= -Wall -DUNIX -Wno-deprecated -D_REENTRANT -lrt -pthread -lpthread -ldl 19 | OFLAG = -o 20 | 21 | INC_DIR=-I./ 22 | INC_DIR+=-I./protobuf 23 | INC_DIR+=-I$(PRO_ROOT)/svr -I$(PRO_ROOT)/http_codec/api -I$(PRO_ROOT)/ependingpool/output/include/ 24 | INC_DIR+=-I$(PRO_ROOT)/http_codec/http #-I$(PRO_ROOT)/http_codec/json 25 | INC_DIR+=-I$(PRO_ROOT)/comm/include 26 | INC_DIR+=-I$(PRO_ROOT)/protobuf/include 27 | INC_DIR+=-I$(PRO_ROOT)/xcore/include 28 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_server 29 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_client 30 | 31 | LIBS = $(PRO_ROOT)/http_rpc_server/librpc_server.a 32 | LIBS += $(PRO_ROOT)/http_rpc_client/librpc_client.a 33 | LIBS += $(PRO_ROOT)/svr/libasvr.a $(PRO_ROOT)/http_codec/libhttpapi.a 34 | LIBS += $(PRO_ROOT)/ependingpool/output/libependingpool.a 35 | #LIBS += $(PRO_ROOT)/comm/output/libcomm.a 36 | LIBS += $(PRO_ROOT)/protobuf/lib/libprotobuf.a 37 | LIBS += $(PRO_ROOT)/xcore/libxcore.a 38 | 39 | .PHONY: all clean 40 | 41 | all: main; 42 | 43 | main: $(OBJ_FILES) 44 | $(CC) $(OBJ_FILES) $(INC_DIR) $(LIBS) $(CFLAGS) $(DEBUGFLAGS) $(OFLAG) $(RELEASE)$@ 45 | @echo *********Build $@ Successful********* 46 | @echo 47 | 48 | %.o: %.cpp 49 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 50 | %.o: %.cc 51 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 52 | 53 | clean: 54 | rm -f main $(LIB_TARGET:.a=.so) $(OBJ_FILES) 55 | -------------------------------------------------------------------------------- /fastrpc/example/server/protobuf/echo.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package echo; 3 | 4 | message EchoRequest 5 | { 6 | string message = 1; 7 | optional string aaa = 2; 8 | map values = 3; 9 | }; 10 | 11 | message EchoResponse 12 | { 13 | string response = 1; 14 | }; 15 | 16 | message DummyRequest 17 | { 18 | string message = 1; 19 | }; 20 | 21 | message DummyResponse 22 | { 23 | }; 24 | 25 | service EchoService 26 | { 27 | rpc Echo(EchoRequest) returns (EchoResponse); 28 | rpc Dummy(DummyRequest) returns (DummyResponse); 29 | }; 30 | 31 | option cc_generic_services = true; 32 | -------------------------------------------------------------------------------- /fastrpc/example/server2/arpc_server.20150604.log: -------------------------------------------------------------------------------- 1 | [2015-06-04 23:46:01] Info:IndexD CClientNetSvr detach thread create,pid=1146,tid=3902211840 2 | [2015-06-04 23:46:01] Info:Thread Pool 1 Create.Svr Start with Pool mode. 3 | [2015-06-04 23:46:01] Info:IndexD CSearchTheadPool thread create,pid=1146,tid=3825202944 4 | [2015-06-04 23:46:01] Info:IndexD CClientNetSvr detach thread create,pid=1139,tid=3902211840 5 | [2015-06-04 23:46:01] Info:IndexD CSearchTheadPool thread create,pid=1139,tid=3825202944 6 | [2015-06-04 23:46:01] Info:Thread Pool 1 Create.Svr Start with Pool mode. 7 | -------------------------------------------------------------------------------- /fastrpc/example/server2/arpc_server.20150605.log: -------------------------------------------------------------------------------- 1 | [2015-06-05 22:27:25] Info:IndexD CClientNetSvr detach thread create,pid=4790,tid=520083200 2 | [2015-06-05 22:27:25] Info:IndexD CSearchTheadPool thread create,pid=4790,tid=511690496 3 | [2015-06-05 22:27:25] Info:Thread Pool 1 Create.Svr Start with Pool mode. 4 | [2015-06-05 22:27:25] Info:IndexD CClientNetSvr detach thread create,pid=4791,tid=520083200 5 | [2015-06-05 22:27:25] Info:IndexD CSearchTheadPool thread create,pid=4791,tid=511690496 6 | [2015-06-05 22:27:25] Info:Thread Pool 1 Create.Svr Start with Pool mode. 7 | -------------------------------------------------------------------------------- /fastrpc/example/server2/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | 8 | ROOT_DIR = $(shell pwd) 9 | SRC_DIR = $(ROOT_DIR) 10 | PRO_ROOT = ../../ 11 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 12 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 13 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 14 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 15 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 16 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 17 | 18 | CFLAGS= -Wall -DUNIX -Wno-deprecated -D_REENTRANT -lrt -pthread -lpthread -ldl 19 | OFLAG = -o 20 | 21 | INC_DIR=-I./ 22 | INC_DIR+=-I./protobuf 23 | INC_DIR+=-I$(PRO_ROOT)/svr -I$(PRO_ROOT)/http_codec/api -I$(PRO_ROOT)/ependingpool/output/include/ 24 | INC_DIR+=-I$(PRO_ROOT)/http_codec/http #-I$(PRO_ROOT)/http_codec/json 25 | INC_DIR+=-I$(PRO_ROOT)/comm/include 26 | INC_DIR+=-I$(PRO_ROOT)/protobuf/include 27 | INC_DIR+=-I$(PRO_ROOT)/xcore/include 28 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_server 29 | INC_DIR+=-I$(PRO_ROOT)/http_rpc_client 30 | 31 | LIBS = $(PRO_ROOT)/http_rpc_server/librpc_server.a 32 | LIBS += $(PRO_ROOT)/http_rpc_client/librpc_client.a 33 | LIBS += $(PRO_ROOT)/svr/libasvr.a $(PRO_ROOT)/http_codec/libhttpapi.a 34 | LIBS += $(PRO_ROOT)/ependingpool/output/libependingpool.a 35 | #LIBS += $(PRO_ROOT)/comm/output/libcomm.a 36 | LIBS += $(PRO_ROOT)/protobuf/lib/libprotobuf.a 37 | LIBS += $(PRO_ROOT)/xcore/libxcore.a 38 | 39 | .PHONY: all clean 40 | 41 | all: main; 42 | 43 | main: $(OBJ_FILES) 44 | $(CC) $(OBJ_FILES) $(INC_DIR) $(LIBS) $(CFLAGS) $(DEBUGFLAGS) $(OFLAG) $(RELEASE)$@ 45 | @echo *********Build $@ Successful********* 46 | @echo 47 | 48 | %.o: %.cpp 49 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 50 | %.o: %.cc 51 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 52 | 53 | clean: 54 | rm -f main $(LIB_TARGET:.a=.so) $(OBJ_FILES) 55 | -------------------------------------------------------------------------------- /fastrpc/example/server2/protobuf/echo.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package echo; 3 | 4 | message EchoRequest 5 | { 6 | string message = 1; 7 | optional string aaa = 2; 8 | map values = 3; 9 | }; 10 | 11 | message EchoResponse 12 | { 13 | string response = 1; 14 | }; 15 | 16 | message DummyRequest 17 | { 18 | string message = 1; 19 | }; 20 | 21 | message DummyResponse 22 | { 23 | }; 24 | 25 | service EchoService 26 | { 27 | rpc Echo(EchoRequest) returns (EchoResponse); 28 | rpc Dummy(DummyRequest) returns (DummyResponse); 29 | }; 30 | 31 | option cc_generic_services = true; 32 | -------------------------------------------------------------------------------- /fastrpc/hook_lib/main: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/main -------------------------------------------------------------------------------- /fastrpc/hook_lib/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ -g 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | 8 | ROOT_DIR = $(shell pwd) 9 | SRC_DIR = $(ROOT_DIR) 10 | PRO_ROOT = ../../ 11 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 12 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 13 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 14 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 15 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 16 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 17 | 18 | CFLAGS= -Wall -DUNIX -Wno-deprecated -D_REENTRANT -lrt -pthread -lpthread -ldl 19 | OFLAG = -o 20 | 21 | INC_DIR=-I./ 22 | 23 | .PHONY: all clean 24 | 25 | all: main; 26 | 27 | main: $(OBJ_FILES) 28 | $(CC) $(OBJ_FILES) $(INC_DIR) $(LIBS) $(CFLAGS) $(DEBUGFLAGS) $(OFLAG) $(RELEASE)$@ 29 | @echo *********Build $@ Successful********* 30 | @echo 31 | 32 | %.o: %.cpp 33 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 34 | %.o: %.cc 35 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 36 | 37 | clean: 38 | rm -f main $(LIB_TARGET:.a=.so) $(OBJ_FILES) 39 | -------------------------------------------------------------------------------- /fastrpc/hook_lib/tconnd_xcore_byte_order.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/tconnd_xcore_byte_order.cpp -------------------------------------------------------------------------------- /fastrpc/hook_lib/tconnd_xcore_byte_order.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/tconnd_xcore_byte_order.h -------------------------------------------------------------------------------- /fastrpc/hook_lib/tconnd_xcore_common.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/tconnd_xcore_common.cpp -------------------------------------------------------------------------------- /fastrpc/hook_lib/tconnd_xcore_common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/tconnd_xcore_common.h -------------------------------------------------------------------------------- /fastrpc/hook_lib/tconnd_xcore_define.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/tconnd_xcore_define.h -------------------------------------------------------------------------------- /fastrpc/hook_lib/tconnd_xcore_json.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/hook_lib/tconnd_xcore_json.cpp -------------------------------------------------------------------------------- /fastrpc/http_codec/api/http_arg_define.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/api/http_arg_define.h -------------------------------------------------------------------------------- /fastrpc/http_codec/api/http_server_codec.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/api/http_server_codec.cpp -------------------------------------------------------------------------------- /fastrpc/http_codec/api/http_server_codec.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/api/http_server_codec.h -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_base_str.h: -------------------------------------------------------------------------------- 1 | #ifndef _HTTP_SVR_STR_H_ 2 | #define _HTTP_SVR_STR_H_ 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | 10 | 11 | 12 | template std::string to_str(const T& t) 13 | { 14 | std::ostringstream s; 15 | s << t; 16 | return s.str(); 17 | } 18 | 19 | template T from_str(const std::string& s) 20 | { 21 | std::istringstream is(s); 22 | T t; 23 | is >> t; 24 | return t; 25 | } 26 | 27 | inline void sran() 28 | { 29 | struct timeval tv; 30 | gettimeofday(&tv, NULL); 31 | srand(tv.tv_usec); 32 | } 33 | 34 | inline unsigned int ran(unsigned range) 35 | { 36 | unsigned r = rand() | (rand() << 16); 37 | r = r%range; 38 | //r = (unsigned) ( (0.0+range) * (r+0.0) / (ULONG_MAX+1.0)); 39 | //cerr << "ran " << r << endl; 40 | return r; 41 | } 42 | 43 | 44 | #endif 45 | 46 | -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_func.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_func.cpp -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_func.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_func.h -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_head.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_head.cpp -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_head.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_head.h -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_req.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_req.cpp -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_req.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_req.h -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_respond.h: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #ifndef HTTP_RESPOND_H 5 | #define HTTP_RESPOND_H 6 | 7 | 8 | using namespace std; 9 | 10 | class Chttp_simple_rsp{ 11 | public: 12 | static Chttp_simple_rsp * instance(); 13 | void NotFound(string &strrsp, int error); 14 | void NormalResponse(string &strrsp, const string& http_body, const char *body_type, unsigned mode = 0); 15 | void RedirectResponse(string &strrsp, const string& location); 16 | void NotModified(string &strrsp); 17 | void Forbidden(string &strrsp, const string& http_body, const char *body_type); 18 | void BadRequest(string &strrsp, int error); 19 | void ServerBusy(string & strrsp); 20 | 21 | 22 | ~Chttp_simple_rsp(); 23 | 24 | protected: 25 | Chttp_simple_rsp(){}; 26 | private: 27 | static Chttp_simple_rsp * _instance; 28 | 29 | }; 30 | 31 | 32 | #define HTTP_RSP (Chttp_simple_rsp::instance()) 33 | 34 | 35 | 36 | #endif 37 | 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_rsp.cpp: -------------------------------------------------------------------------------- 1 | #include "http_base_str.h" 2 | #include "http_rsp.h" 3 | #include "string.h" 4 | 5 | using namespace std; 6 | using namespace httpsvr; 7 | 8 | 9 | ////////////////////////////////////////////////////////////////////////// 10 | 11 | void CHttpStatusLine::make_line() 12 | { 13 | _line = "HTTP/" + to_str(_http_version_primary) + "." 14 | + to_str(_http_version_seconday) + " " + to_str(_status_code) + "\r\n"; 15 | return ; 16 | } 17 | 18 | int CHttpRsp::simple_rsp(unsigned status_code) 19 | { 20 | _status_line._status_code = status_code; 21 | _status_line._http_version_primary = 1; 22 | _status_line._http_version_seconday = 0; 23 | _status_line.make_line(); 24 | return 0; 25 | } 26 | 27 | int CHttpRsp::output(char* buffer, unsigned buf_size, unsigned& data_len) 28 | { 29 | // status_line 30 | _status_line.make_line(); 31 | unsigned offset = 0; 32 | memcpy(buffer, _status_line._line.c_str(), _status_line._line.size()); 33 | offset += _status_line._line.size(); 34 | 35 | // header 36 | data_len = 0; 37 | int ret = _header.output(buffer + offset, buf_size - offset, data_len); 38 | if (ret) return ret; 39 | offset += data_len; 40 | 41 | // body 42 | memcpy(buffer + offset, _body._buf, _body._data_len); 43 | return 0; 44 | } 45 | 46 | ////////////////////////////////////////////////////////////////////////// 47 | ///:~ 48 | -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_util.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_util.cpp -------------------------------------------------------------------------------- /fastrpc/http_codec/http/http_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/http/http_util.h -------------------------------------------------------------------------------- /fastrpc/http_codec/json/autolink.h: -------------------------------------------------------------------------------- 1 | #ifndef JSON_AUTOLINK_H_INCLUDED 2 | # define JSON_AUTOLINK_H_INCLUDED 3 | 4 | # include "config.h" 5 | 6 | # ifdef JSON_IN_CPPTL 7 | # include 8 | # endif 9 | 10 | # if !defined(JSON_NO_AUTOLINK) && !defined(JSON_DLL_BUILD) && !defined(JSON_IN_CPPTL) 11 | # define CPPTL_AUTOLINK_NAME "json" 12 | # undef CPPTL_AUTOLINK_DLL 13 | # ifdef JSON_DLL 14 | # define CPPTL_AUTOLINK_DLL 15 | # endif 16 | # include "autolink.h" 17 | # endif 18 | 19 | #endif // JSON_AUTOLINK_H_INCLUDED 20 | -------------------------------------------------------------------------------- /fastrpc/http_codec/json/config.h: -------------------------------------------------------------------------------- 1 | #ifndef JSON_CONFIG_H_INCLUDED 2 | # define JSON_CONFIG_H_INCLUDED 3 | 4 | /// If defined, indicates that json library is embedded in CppTL library. 5 | //# define JSON_IN_CPPTL 1 6 | 7 | /// If defined, indicates that json may leverage CppTL library 8 | //# define JSON_USE_CPPTL 1 9 | /// If defined, indicates that cpptl vector based map should be used instead of std::map 10 | /// as Value container. 11 | //# define JSON_USE_CPPTL_SMALLMAP 1 12 | /// If defined, indicates that Json specific container should be used 13 | /// (hash table & simple deque container with customizable allocator). 14 | /// THIS FEATURE IS STILL EXPERIMENTAL! 15 | //# define JSON_VALUE_USE_INTERNAL_MAP 1 16 | /// Force usage of standard new/malloc based allocator instead of memory pool based allocator. 17 | /// The memory pools allocator used optimization (initializing Value and ValueInternalLink 18 | /// as if it was a POD) that may cause some validation tool to report errors. 19 | /// Only has effects if JSON_VALUE_USE_INTERNAL_MAP is defined. 20 | //# define JSON_USE_SIMPLE_INTERNAL_ALLOCATOR 1 21 | 22 | /// If defined, indicates that Json use exception to report invalid type manipulation 23 | /// instead of C assert macro. 24 | # define JSON_USE_EXCEPTION 1 25 | 26 | # ifdef JSON_IN_CPPTL 27 | # include 28 | # ifndef JSON_USE_CPPTL 29 | # define JSON_USE_CPPTL 1 30 | # endif 31 | # endif 32 | 33 | # ifdef JSON_IN_CPPTL 34 | # define JSON_API CPPTL_API 35 | # elif defined(JSON_DLL_BUILD) 36 | # define JSON_API __declspec(dllexport) 37 | # elif defined(JSON_DLL) 38 | # define JSON_API __declspec(dllimport) 39 | # else 40 | # define JSON_API 41 | # endif 42 | 43 | #endif // JSON_CONFIG_H_INCLUDED 44 | -------------------------------------------------------------------------------- /fastrpc/http_codec/json/features.h: -------------------------------------------------------------------------------- 1 | #ifndef CPPTL_JSON_FEATURES_H_INCLUDED 2 | # define CPPTL_JSON_FEATURES_H_INCLUDED 3 | 4 | # include "forwards.h" 5 | 6 | namespace Json { 7 | 8 | /** \brief Configuration passed to reader and writer. 9 | * This configuration object can be used to force the Reader or Writer 10 | * to behave in a standard conforming way. 11 | */ 12 | class JSON_API Features 13 | { 14 | public: 15 | /** \brief A configuration that allows all features and assumes all strings are UTF-8. 16 | * - C & C++ comments are allowed 17 | * - Root object can be any JSON value 18 | * - Assumes Value strings are encoded in UTF-8 19 | */ 20 | static Features all(); 21 | 22 | /** \brief A configuration that is strictly compatible with the JSON specification. 23 | * - Comments are forbidden. 24 | * - Root object must be either an array or an object value. 25 | * - Assumes Value strings are encoded in UTF-8 26 | */ 27 | static Features strictMode(); 28 | 29 | /** \brief Initialize the configuration like JsonConfig::allFeatures; 30 | */ 31 | Features(); 32 | 33 | /// \c true if comments are allowed. Default: \c true. 34 | bool allowComments_; 35 | 36 | /// \c true if root must be either an array or an object value. Default: \c false. 37 | bool strictRoot_; 38 | }; 39 | 40 | } // namespace Json 41 | 42 | #endif // CPPTL_JSON_FEATURES_H_INCLUDED 43 | -------------------------------------------------------------------------------- /fastrpc/http_codec/json/forwards.h: -------------------------------------------------------------------------------- 1 | #ifndef JSON_FORWARDS_H_INCLUDED 2 | # define JSON_FORWARDS_H_INCLUDED 3 | 4 | # include "config.h" 5 | 6 | namespace Json { 7 | 8 | // writer.h 9 | class FastWriter; 10 | class StyledWriter; 11 | 12 | // reader.h 13 | class Reader; 14 | 15 | // features.h 16 | class Features; 17 | 18 | // value.h 19 | typedef int Int; 20 | typedef unsigned int UInt; 21 | class StaticString; 22 | class Path; 23 | class PathArgument; 24 | class Value; 25 | class ValueIteratorBase; 26 | class ValueIterator; 27 | class ValueConstIterator; 28 | #ifdef JSON_VALUE_USE_INTERNAL_MAP 29 | class ValueAllocator; 30 | class ValueMapAllocator; 31 | class ValueInternalLink; 32 | class ValueInternalArray; 33 | class ValueInternalMap; 34 | #endif // #ifdef JSON_VALUE_USE_INTERNAL_MAP 35 | 36 | } // namespace Json 37 | 38 | 39 | #endif // JSON_FORWARDS_H_INCLUDED 40 | -------------------------------------------------------------------------------- /fastrpc/http_codec/json/json.h: -------------------------------------------------------------------------------- 1 | #ifndef JSON_JSON_H_INCLUDED 2 | # define JSON_JSON_H_INCLUDED 3 | 4 | # include "autolink.h" 5 | # include "value.h" 6 | # include "reader.h" 7 | # include "writer.h" 8 | # include "features.h" 9 | 10 | #endif // JSON_JSON_H_INCLUDED 11 | -------------------------------------------------------------------------------- /fastrpc/http_codec/json/newalloc.h: -------------------------------------------------------------------------------- 1 | class Elem 2 | { 3 | public: 4 | Elem(){cout << "Elem()" << endl;} 5 | Elem(const Elem&){cout << "Elem(const Elem&)" << endl;} 6 | ~Elem(){cout << "~Elem()" << endl;} 7 | int m_i; 8 | float m_f; 9 | }; 10 | template 11 | class MyAlloc 12 | { 13 | public: 14 | typedef T* pointer; 15 | typedef const T* const_pointer; 16 | typedef T& reference; 17 | typedef const T& const_reference; 18 | template 19 | struct rebind 20 | { 21 | typedef MyAlloc other; 22 | }; 23 | pointer allocate(size_t num) 24 | { 25 | cout << " allocate: " << num << endl; 26 | return (pointer)::operator new(num*sizeof(T)); 27 | } 28 | void deallocate(pointer p, size_t num) 29 | { 30 | cout << "deallocate: " << typeid(p).name() << " " << num << endl; 31 | ::operator delete ((void*)p); 32 | } 33 | MyAlloc()throw(){cout << "myalloc()" << endl;} 34 | template 35 | MyAlloc(const MyAlloc&) throw(){cout << "myalloc(const&" << typeid(U).name() << ")" << endl;} 36 | }; 37 | template 38 | bool operator == (const MyAlloc& , const MyAlloc&) 39 | { 40 | return true; 41 | } -------------------------------------------------------------------------------- /fastrpc/http_codec/log: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_codec/log -------------------------------------------------------------------------------- /fastrpc/http_codec/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | CC=g++ 3 | ifeq ($(debug), 1) 4 | CC += -g 5 | else 6 | CC += -O3 7 | endif 8 | 9 | ROOT_DIR = $(shell pwd) 10 | SRC_DIR = $(ROOT_DIR)/json $(ROOT_DIR)/http $(ROOT_DIR)/api 11 | SRC_FILES := $(shell find $(SRC_DIR) -name '*.cpp') 12 | OBJ_FILES := $(SRC_FILES:.cpp=.o) 13 | INC_DIR := -I$(ROOT_DIR)/ -I$(ROOT_DIR)/http -I$(ROOT_DIR)/api -D_USE_HTTP_PROTO_ 14 | CFLAGS := 15 | 16 | LIB_NAME := httpapi 17 | LIB_SUFFIX := .a 18 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 19 | 20 | .PHONY: all clean 21 | 22 | all: $(LIB_TARGET); 23 | 24 | $(LIB_TARGET): $(OBJ_FILES) 25 | $(AR) -rc $@ $(OBJ_FILES) 26 | #$(CC) -shared -fpic -o $(LIB_TARGET:.a=.so) $(OBJ_FILES) $(LDFLAGS) 27 | $(CC) -o test $(OBJ_FILES) 28 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 29 | @echo 30 | 31 | %.o: %.cpp 32 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 33 | 34 | clean: 35 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 36 | rm -f test 37 | -------------------------------------------------------------------------------- /fastrpc/http_rpc_client/a.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/http_rpc_client/a.txt -------------------------------------------------------------------------------- /fastrpc/http_rpc_client/llog: -------------------------------------------------------------------------------- 1 | sync: cli hello 2 server_hello 2 | len: 0 parse head error 3 | -------------------------------------------------------------------------------- /fastrpc/http_rpc_client/log: -------------------------------------------------------------------------------- 1 | connect success 2 | sync: cli hello 2 server_hello 3 | success 4 | -------------------------------------------------------------------------------- /fastrpc/http_rpc_client/main.py: -------------------------------------------------------------------------------- 1 | #-*- coding:utf-8 -*- 2 | import sys 3 | import os 4 | import time 5 | 6 | reload(sys) 7 | sys.setdefaultencoding('utf8') 8 | 9 | v = 0 10 | for i in range(0, 10000000): 11 | v += i 12 | -------------------------------------------------------------------------------- /fastrpc/http_rpc_client/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | CC += -g 3 | 4 | ROOT_DIR = $(shell pwd) 5 | SRC_DIR = $(ROOT_DIR) 6 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 7 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 8 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 9 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 10 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 11 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 12 | 13 | 14 | INC_DIR=-I/usr/include -I/usr/local/include 15 | INC_DIR+=-I./ 16 | INC_DIR+=-I./protobuf 17 | INC_DIR+=-I../svr -I../http_codec/api -I../ependingpool/output/include/ 18 | INC_DIR+=-I../http_codec/http 19 | INC_DIR+=-I../comm/include 20 | INC_DIR+=-I../protobuf/include 21 | INC_DIR+=-I../xcore/include 22 | 23 | CFLAGS := -lpthread -Wwrite-strings -w #-fPIC 24 | 25 | LIB_NAME := rpc_client 26 | LIB_SUFFIX := .a 27 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 28 | 29 | .PHONY: all clean 30 | 31 | all: $(LIB_TARGET); 32 | 33 | $(LIB_TARGET): $(OBJ_FILES) 34 | $(AR) -rc $@ $(OBJ_FILES) 35 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 36 | @echo 37 | 38 | %.o: %.cpp 39 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 40 | %.o: %.c 41 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 42 | %.o: %.cc 43 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 44 | 45 | clean: 46 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 47 | -------------------------------------------------------------------------------- /fastrpc/http_rpc_server/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | CC += -g 3 | 4 | ROOT_DIR = $(shell pwd) 5 | SRC_DIR = $(ROOT_DIR) 6 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 7 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 8 | SRC_FILES_CC := $(shell find $(SRC_DIR) -name '*.cc') 9 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o ) 10 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 11 | OBJ_FILES += $(SRC_FILES_CC:.cc=.o) 12 | 13 | 14 | INC_DIR=-I./ 15 | INC_DIR+=-I../svr -I../http_codec/api -I../ependingpool/output/include/ 16 | INC_DIR+=-I../http_codec/http 17 | INC_DIR+=-I../comm/include 18 | INC_DIR+=-I../protobuf/include 19 | INC_DIR+=-I../xcore/include 20 | INC_DIR+=-I../http_rpc_client 21 | 22 | CFLAGS := -lpthread -Wwrite-strings -w #-fPIC 23 | 24 | LIB_NAME := rpc_server 25 | LIB_SUFFIX := .a 26 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 27 | 28 | .PHONY: all clean 29 | 30 | all: $(LIB_TARGET); 31 | 32 | $(LIB_TARGET): $(OBJ_FILES) 33 | $(AR) -rc $@ $(OBJ_FILES) 34 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 35 | @echo 36 | 37 | %.o: %.cpp 38 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 39 | %.o: %.c 40 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 41 | %.o: %.cc 42 | $(CC) $(CFLAGS) $(INC_DIR) -c $(DEBUGFLAGS) $< -o $@ 43 | 44 | clean: 45 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 46 | -------------------------------------------------------------------------------- /fastrpc/protobuf/include/google/protobuf/stubs/pbconfig.h: -------------------------------------------------------------------------------- 1 | // Note: Google Protobuf internal only. Do NOT include. 2 | #define GOOGLE_PROTOBUF_HASH_MAP_CLASS unordered_map 3 | #define GOOGLE_PROTOBUF_HASH_MAP_H 4 | #define GOOGLE_PROTOBUF_HASH_NAMESPACE std::tr1 5 | #define GOOGLE_PROTOBUF_HASH_SET_CLASS unordered_set 6 | #define GOOGLE_PROTOBUF_HASH_SET_H 7 | #define GOOGLE_PROTOBUF_HAVE_HASH_MAP 1 8 | #define GOOGLE_PROTOBUF_HAVE_HASH_SET 1 9 | -------------------------------------------------------------------------------- /fastrpc/protobuf/lib/libprotobuf.a: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/protobuf/lib/libprotobuf.a -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a.html -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/adsbygoogle.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/adsbygoogle.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/ca-pub-7090564139599510.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/ca-pub-7090564139599510.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/channel.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/channel.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/channel.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/channel.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/code.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/code.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/default.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/default.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/jquery-1.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/jquery-1.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/jquery.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/jquery.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/jquery.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/jquery.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/jquery_002.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/jquery_002.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/jquery_003.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/jquery_003.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/kindeditor-min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/kindeditor-min.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/oschina.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/oschina.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/oschina.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/oschina.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/scrolltopcontrol.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/scrolltopcontrol.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/shAutoloader.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/shAutoloader.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/shCore.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/shCore.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/shCore.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/shCore.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/shThemeDefault.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/shThemeDefault.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/show_ads.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/show_ads.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/style2013.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/style2013.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/tag.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/tag.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/tip-yellowsimple.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/tip-yellowsimple.css -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/utils.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/utils.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/cache_static/a_files/xregexp-min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/cache_static/a_files/xregexp-min.js -------------------------------------------------------------------------------- /fastrpc/python_http_server/network-server.log: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/network-server.log -------------------------------------------------------------------------------- /fastrpc/python_http_server/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/readme.txt -------------------------------------------------------------------------------- /fastrpc/python_http_server/static/a_files/1382328_50.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/python_http_server/static/a_files/1382328_50.jpg -------------------------------------------------------------------------------- /fastrpc/python_http_server/static/a_files/ca-pub-7090564139599510.js: -------------------------------------------------------------------------------- 1 | (google_async_config = window.google_async_config || {})['ca-pub-7090564139599510'] = {"sra_enabled":false}; -------------------------------------------------------------------------------- /fastrpc/python_http_server/static/a_files/code.js: -------------------------------------------------------------------------------- 1 | document.writeln(""); 2 | document.writeln(""); 3 | document.writeln(""); 7 | document.writeln(""); -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/CaseRun.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/CaseRun/CaseRun.rc -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/CaseRun.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | ..\Debug 5 | WindowsLocalDebugger 6 | 7 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/Debug/CaseRun.lastbuildstate: -------------------------------------------------------------------------------- 1 | #v4.0:v100 2 | Debug|Win32|D:\workspace\houtai\houtai\tools\rpc_client_for_win\| 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/Debug/CaseRun.log: -------------------------------------------------------------------------------- 1 | 生成启动时间为 2015/8/13 21:53:20。 2 | 1>项目“E:\workspace3\rpc_client_vs_project\rpc_client_vs_project\CaseRun\CaseRun.vcxproj”在节点 2 上(clean 个目标)。 3 | 1>_PrepareForClean: 4 | 正在删除文件“Debug\RpcClient.lastbuildstate”。 5 | 1>已完成生成项目“E:\workspace3\rpc_client_vs_project\rpc_client_vs_project\CaseRun\CaseRun.vcxproj”(clean 个目标)的操作。 6 | 7 | 生成成功。 8 | 9 | 已用时间 00:00:00.04 10 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/Debug/CaseRun.unsuccessfulbuild: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/CaseRun/Debug/CaseRun.unsuccessfulbuild -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/Debug/RCa05668: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/CaseRun/Debug/RCa05668 -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/RCa05988: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/CaseRun/RCa05988 -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/netproto/echo.proto: -------------------------------------------------------------------------------- 1 | syntax = "proto3"; 2 | package echo; 3 | 4 | message EchoRequest 5 | { 6 | string message = 1; 7 | optional string aaa = 2; 8 | map values = 3; 9 | }; 10 | 11 | message EchoResponse 12 | { 13 | string response = 1; 14 | }; 15 | 16 | message DummyRequest 17 | { 18 | string message = 1; 19 | }; 20 | 21 | message DummyResponse 22 | { 23 | }; 24 | 25 | service EchoService 26 | { 27 | rpc Echo(EchoRequest) returns (EchoResponse); 28 | rpc Dummy(DummyRequest) returns (DummyResponse); 29 | }; 30 | 31 | option cc_generic_services = true; 32 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/rpc_client/main: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/CaseRun/rpc_client/main -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/CaseRun/rpc_client/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/CaseRun/rpc_client/main.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/TestClient.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/TestClient.suo -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/COPYING.txt: -------------------------------------------------------------------------------- 1 | Copyright 2008, Google Inc. 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are 6 | met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | * Redistributions in binary form must reproduce the above 11 | copyright notice, this list of conditions and the following disclaimer 12 | in the documentation and/or other materials provided with the 13 | distribution. 14 | * Neither the name of Google Inc. nor the names of its 15 | contributors may be used to endorse or promote products derived from 16 | this software without specific prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | 30 | Code generated by the Protocol Buffer compiler is owned by the owner 31 | of the input file used when generating it. This code is not 32 | standalone and requires a support library to be linked with it. This 33 | support library is itself covered by the above license. 34 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/autogen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Run this script to generate the configure script and other files that will 4 | # be included in the distribution. These files are not checked in because they 5 | # are automatically generated. 6 | 7 | set -e 8 | 9 | # Check that we're being run from the right directory. 10 | if test ! -f src/google/protobuf/stubs/common.h; then 11 | cat >&2 << __EOF__ 12 | Could not find source code. Make sure you are running this script from the 13 | root of the distribution tree. 14 | __EOF__ 15 | exit 1 16 | fi 17 | 18 | # Check that gtest is present. Usually it is already there since the 19 | # directory is set up as an SVN external. 20 | if test ! -e gtest; then 21 | echo "Google Test not present. Fetching gtest-1.7.0 from the web..." 22 | curl -O https://googletest.googlecode.com/files/gtest-1.7.0.zip 23 | unzip -q gtest-1.7.0.zip 24 | rm gtest-1.7.0.zip 25 | mv gtest-1.7.0 gtest 26 | fi 27 | 28 | set -ex 29 | 30 | # Temporary hack: Must change C runtime library to "multi-threaded DLL", 31 | # otherwise it will be set to "multi-threaded static" when MSVC upgrades 32 | # the project file to MSVC 2005/2008. vladl of Google Test says gtest will 33 | # probably change their default to match, then this will be unnecessary. 34 | # One of these mappings converts the debug configuration and the other 35 | # converts the release configuration. I don't know which is which. 36 | sed -i -e 's/RuntimeLibrary="5"/RuntimeLibrary="3"/g; 37 | s/RuntimeLibrary="4"/RuntimeLibrary="2"/g;' gtest/msvc/*.vcproj 38 | 39 | # TODO(kenton): Remove the ",no-obsolete" part and fix the resulting warnings. 40 | autoreconf -f -i -Wall,no-obsolete 41 | 42 | rm -rf autom4te.cache config.h.in~ 43 | exit 0 44 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/debug/libprotobuf.log: -------------------------------------------------------------------------------- 1 | Build started 2014/7/29 13:12:59. 2 | 3 | Build succeeded. 4 | 5 | Time Elapsed 00:00:00.00 6 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/editors/README.txt: -------------------------------------------------------------------------------- 1 | This directory contains syntax highlighting and configuration files for editors 2 | to properly display Protocol Buffer files. 3 | 4 | See each file's header comment for directions on how to use it with the 5 | appropriate editor. 6 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/examples/ListPeople.java: -------------------------------------------------------------------------------- 1 | // See README.txt for information and build instructions. 2 | 3 | import com.example.tutorial.AddressBookProtos.AddressBook; 4 | import com.example.tutorial.AddressBookProtos.Person; 5 | import java.io.FileInputStream; 6 | import java.io.IOException; 7 | import java.io.PrintStream; 8 | 9 | class ListPeople { 10 | // Iterates though all people in the AddressBook and prints info about them. 11 | static void Print(AddressBook addressBook) { 12 | for (Person person: addressBook.getPersonList()) { 13 | System.out.println("Person ID: " + person.getId()); 14 | System.out.println(" Name: " + person.getName()); 15 | if (person.hasEmail()) { 16 | System.out.println(" E-mail address: " + person.getEmail()); 17 | } 18 | 19 | for (Person.PhoneNumber phoneNumber : person.getPhoneList()) { 20 | switch (phoneNumber.getType()) { 21 | case MOBILE: 22 | System.out.print(" Mobile phone #: "); 23 | break; 24 | case HOME: 25 | System.out.print(" Home phone #: "); 26 | break; 27 | case WORK: 28 | System.out.print(" Work phone #: "); 29 | break; 30 | } 31 | System.out.println(phoneNumber.getNumber()); 32 | } 33 | } 34 | } 35 | 36 | // Main function: Reads the entire address book from a file and prints all 37 | // the information inside. 38 | public static void main(String[] args) throws Exception { 39 | if (args.length != 1) { 40 | System.err.println("Usage: ListPeople ADDRESS_BOOK_FILE"); 41 | System.exit(-1); 42 | } 43 | 44 | // Read the existing address book. 45 | AddressBook addressBook = 46 | AddressBook.parseFrom(new FileInputStream(args[0])); 47 | 48 | Print(addressBook); 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/examples/README.txt: -------------------------------------------------------------------------------- 1 | This directory contains example code that uses Protocol Buffers to manage an 2 | address book. Two programs are provided, each with three different 3 | implementations, one written in each of C++, Java, and Python. The add_person 4 | example adds a new person to an address book, prompting the user to input 5 | the person's information. The list_people example lists people already in the 6 | address book. The examples use the exact same format in all three languages, 7 | so you can, for example, use add_person_java to create an address book and then 8 | use list_people_python to read it. 9 | 10 | You must install the protobuf package before you can build these. 11 | 12 | To build all the examples (on a unix-like system), simply run "make". This 13 | creates the following executable files in the current directory: 14 | add_person_cpp list_people_cpp 15 | add_person_java list_people_java 16 | add_person_python list_people_python 17 | 18 | If you only want to compile examples in one language, use "make cpp"*, 19 | "make java", or "make python". 20 | 21 | All of these programs simply take an address book file as their parameter. 22 | The add_person programs will create the file if it doesn't already exist. 23 | 24 | These examples are part of the Protocol Buffers tutorial, located at: 25 | https://developers.google.com/protocol-buffers/docs/tutorials 26 | 27 | * Note that on some platforms you may have to edit the Makefile and remove 28 | "-lpthread" from the linker commands (perhaps replacing it with something else). 29 | We didn't do this automatically because we wanted to keep the example simple. 30 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/examples/addressbook.proto: -------------------------------------------------------------------------------- 1 | // See README.txt for information and build instructions. 2 | 3 | package tutorial; 4 | 5 | option java_package = "com.example.tutorial"; 6 | option java_outer_classname = "AddressBookProtos"; 7 | 8 | message Person { 9 | required string name = 1; 10 | required int32 id = 2; // Unique ID number for this person. 11 | optional string email = 3; 12 | 13 | enum PhoneType { 14 | MOBILE = 0; 15 | HOME = 1; 16 | WORK = 2; 17 | } 18 | 19 | message PhoneNumber { 20 | required string number = 1; 21 | optional PhoneType type = 2 [default = HOME]; 22 | } 23 | 24 | repeated PhoneNumber phone = 4; 25 | } 26 | 27 | // Our address book file is just one of these. 28 | message AddressBook { 29 | repeated Person person = 1; 30 | } 31 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/examples/list_people.py: -------------------------------------------------------------------------------- 1 | #! /usr/bin/python 2 | 3 | # See README.txt for information and build instructions. 4 | 5 | import addressbook_pb2 6 | import sys 7 | 8 | # Iterates though all people in the AddressBook and prints info about them. 9 | def ListPeople(address_book): 10 | for person in address_book.person: 11 | print "Person ID:", person.id 12 | print " Name:", person.name 13 | if person.HasField('email'): 14 | print " E-mail address:", person.email 15 | 16 | for phone_number in person.phone: 17 | if phone_number.type == addressbook_pb2.Person.MOBILE: 18 | print " Mobile phone #:", 19 | elif phone_number.type == addressbook_pb2.Person.HOME: 20 | print " Home phone #:", 21 | elif phone_number.type == addressbook_pb2.Person.WORK: 22 | print " Work phone #:", 23 | print phone_number.number 24 | 25 | # Main procedure: Reads the entire address book from a file and prints all 26 | # the information inside. 27 | if len(sys.argv) != 2: 28 | print "Usage:", sys.argv[0], "ADDRESS_BOOK_FILE" 29 | sys.exit(-1) 30 | 31 | address_book = addressbook_pb2.AddressBook() 32 | 33 | # Read the existing address book. 34 | f = open(sys.argv[1], "rb") 35 | address_book.ParseFromString(f.read()) 36 | f.close() 37 | 38 | ListPeople(address_book) 39 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/generate_descriptor_proto.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # Run this script to regenerate descriptor.pb.{h,cc} after the protocol 4 | # compiler changes. Since these files are compiled into the protocol compiler 5 | # itself, they cannot be generated automatically by a make rule. "make check" 6 | # will fail if these files do not match what the protocol compiler would 7 | # generate. 8 | # 9 | # HINT: Flags passed to generate_descriptor_proto.sh will be passed directly 10 | # to make when building protoc. This is particularly useful for passing 11 | # -j4 to run 4 jobs simultaneously. 12 | 13 | if test ! -e src/google/protobuf/stubs/common.h; then 14 | cat >&2 << __EOF__ 15 | Could not find source code. Make sure you are running this script from the 16 | root of the distribution tree. 17 | __EOF__ 18 | exit 1 19 | fi 20 | 21 | if test ! -e src/Makefile; then 22 | cat >&2 << __EOF__ 23 | Could not find src/Makefile. You must run ./configure (and perhaps 24 | ./autogen.sh) first. 25 | __EOF__ 26 | exit 1 27 | fi 28 | 29 | cd src 30 | make $@ protoc && 31 | ./protoc --cpp_out=dllexport_decl=LIBPROTOBUF_EXPORT:. google/protobuf/descriptor.proto && \ 32 | ./protoc --cpp_out=dllexport_decl=LIBPROTOC_EXPORT:. google/protobuf/compiler/plugin.proto 33 | cd .. 34 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This file contains a list of people who've made non-trivial 2 | # contribution to the Google C++ Testing Framework project. People 3 | # who commit code to the project are encouraged to add their names 4 | # here. Please keep the list sorted by first names. 5 | 6 | Ajay Joshi 7 | Balázs Dán 8 | Bharat Mediratta 9 | Chandler Carruth 10 | Chris Prince 11 | Chris Taylor 12 | Dan Egnor 13 | Eric Roman 14 | Jeffrey Yasskin 15 | Jói Sigurðsson 16 | Keir Mierle 17 | Keith Ray 18 | Kenton Varda 19 | Markus Heule 20 | Mika Raento 21 | Patrick Hanna 22 | Patrick Riley 23 | Peter Kaminski 24 | Preston Jackson 25 | Rainer Klaffenboeck 26 | Russ Cox 27 | Russ Rufer 28 | Sean Mcafee 29 | Sigurður Ásgeirsson 30 | Tracy Bialik 31 | Vadim Berman 32 | Vlad Losev 33 | Zhanyong Wan 34 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/COPYING: -------------------------------------------------------------------------------- 1 | Copyright 2008, Google Inc. 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are 6 | met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | * Redistributions in binary form must reproduce the above 11 | copyright notice, this list of conditions and the following disclaimer 12 | in the documentation and/or other materials provided with the 13 | distribution. 14 | * Neither the name of Google Inc. nor the names of its 15 | contributors may be used to endorse or promote products derived from 16 | this software without specific prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 19 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 20 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 21 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 22 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 23 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 24 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 25 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 26 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 28 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/build-aux/stamp-h1: -------------------------------------------------------------------------------- 1 | timestamp for build-aux/config.h 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/msvc/gtest.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/msvc/gtest_main.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample1.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample10_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample1_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample2.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample2_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample3_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample4.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample4_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample5_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample6_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample7_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample8_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/samples/.deps/sample9_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest-death-test.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest-filepath.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest-port.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest-test-part.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest-typed-test.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/gtest_main.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_no_rtti_test-gtest-all.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_no_rtti_test-gtest_main.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_throw_on_failure_ex_test-gtest-all.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_throw_on_failure_test_-gtest-all.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_tuple_test-gtest-all.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_tuple_test-gtest_main.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/src/.deps/test_gtest_use_own_tuple_test-gtest-all.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-filepath_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-linked_ptr_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-listener_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-message_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-options_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-param-test2_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-param-test_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-port_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-test-part_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-typed-test2_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-typed-test_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest-unittest-api_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_break_on_failure_unittest_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_color_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_env_var_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_environment_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_filter_unittest_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_help_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_list_tests_unittest_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_main_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_no_test_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_output_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_pred_impl_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_prod_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_repeat_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_shuffle_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_sole_header_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_stress_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_uninitialized_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_xml_outfile1_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_xml_outfile2_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/gtest_xml_output_unittest_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/production.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_death_test_test-gtest-death-test_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_no_rtti_test-gtest_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_throw_on_failure_ex_test-gtest_throw_on_failure_ex_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_throw_on_failure_test_-gtest_throw_on_failure_test_.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_tuple_test-gtest-tuple_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_use_own_tuple_test-gtest-param-test2_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/test/.deps/test_gtest_use_own_tuple_test-gtest-param-test_test.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Config/DebugProject.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // DebugProject.xcconfig 3 | // 4 | // These are Debug Configuration project settings for the gtest framework and 5 | // examples. It is set in the "Based On:" dropdown in the "Project" info 6 | // dialog. 7 | // This file is based on the Xcode Configuration files in: 8 | // http://code.google.com/p/google-toolbox-for-mac/ 9 | // 10 | 11 | #include "General.xcconfig" 12 | 13 | // No optimization 14 | GCC_OPTIMIZATION_LEVEL = 0 15 | 16 | // Deployment postprocessing is what triggers Xcode to strip, turn it off 17 | DEPLOYMENT_POSTPROCESSING = NO 18 | 19 | // Dead code stripping off 20 | DEAD_CODE_STRIPPING = NO 21 | 22 | // Debug symbols should be on obviously 23 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES 24 | 25 | // Define the DEBUG macro in all debug builds 26 | OTHER_CFLAGS = $(OTHER_CFLAGS) -DDEBUG=1 27 | 28 | // These are turned off to avoid STL incompatibilities with client code 29 | // // Turns on special C++ STL checks to "encourage" good STL use 30 | // GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS) _GLIBCXX_DEBUG_PEDANTIC _GLIBCXX_DEBUG _GLIBCPP_CONCEPT_CHECKS 31 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Config/FrameworkTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // FrameworkTarget.xcconfig 3 | // 4 | // These are Framework target settings for the gtest framework and examples. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | // This file is based on the Xcode Configuration files in: 7 | // http://code.google.com/p/google-toolbox-for-mac/ 8 | // 9 | 10 | // Dynamic libs need to be position independent 11 | GCC_DYNAMIC_NO_PIC = NO 12 | 13 | // Dynamic libs should not have their external symbols stripped. 14 | STRIP_STYLE = non-global 15 | 16 | // Let the user install by specifying the $DSTROOT with xcodebuild 17 | SKIP_INSTALL = NO 18 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Config/General.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // General.xcconfig 3 | // 4 | // These are General configuration settings for the gtest framework and 5 | // examples. 6 | // This file is based on the Xcode Configuration files in: 7 | // http://code.google.com/p/google-toolbox-for-mac/ 8 | // 9 | 10 | // Build for PPC and Intel, 32- and 64-bit 11 | ARCHS = i386 x86_64 ppc ppc64 12 | 13 | // Zerolink prevents link warnings so turn it off 14 | ZERO_LINK = NO 15 | 16 | // Prebinding considered unhelpful in 10.3 and later 17 | PREBINDING = NO 18 | 19 | // Strictest warning policy 20 | WARNING_CFLAGS = -Wall -Werror -Wendif-labels -Wnewline-eof -Wno-sign-compare 21 | 22 | // Work around Xcode bugs by using external strip. See: 23 | // http://lists.apple.com/archives/Xcode-users/2006/Feb/msg00050.html 24 | SEPARATE_STRIP = YES 25 | 26 | // Force C99 dialect 27 | GCC_C_LANGUAGE_STANDARD = c99 28 | 29 | // not sure why apple defaults this on, but it's pretty risky 30 | ALWAYS_SEARCH_USER_PATHS = NO 31 | 32 | // Turn on position dependent code for most cases (overridden where appropriate) 33 | GCC_DYNAMIC_NO_PIC = YES 34 | 35 | // Default SDK and minimum OS version is 10.4 36 | SDKROOT = $(DEVELOPER_SDK_DIR)/MacOSX10.4u.sdk 37 | MACOSX_DEPLOYMENT_TARGET = 10.4 38 | GCC_VERSION = 4.0 39 | 40 | // VERSIONING BUILD SETTINGS (used in Info.plist) 41 | GTEST_VERSIONINFO_ABOUT = © 2008 Google Inc. 42 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Config/ReleaseProject.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // ReleaseProject.xcconfig 3 | // 4 | // These are Release Configuration project settings for the gtest framework 5 | // and examples. It is set in the "Based On:" dropdown in the "Project" info 6 | // dialog. 7 | // This file is based on the Xcode Configuration files in: 8 | // http://code.google.com/p/google-toolbox-for-mac/ 9 | // 10 | 11 | #include "General.xcconfig" 12 | 13 | // subconfig/Release.xcconfig 14 | 15 | // Optimize for space and size (Apple recommendation) 16 | GCC_OPTIMIZATION_LEVEL = s 17 | 18 | // Deploment postprocessing is what triggers Xcode to strip 19 | DEPLOYMENT_POSTPROCESSING = YES 20 | 21 | // No symbols 22 | GCC_GENERATE_DEBUGGING_SYMBOLS = NO 23 | 24 | // Dead code strip does not affect ObjC code but can help for C 25 | DEAD_CODE_STRIPPING = YES 26 | 27 | // NDEBUG is used by things like assert.h, so define it for general compat. 28 | // ASSERT going away in release tends to create unused vars. 29 | OTHER_CFLAGS = $(OTHER_CFLAGS) -DNDEBUG=1 -Wno-unused-variable 30 | 31 | // When we strip we want to strip all symbols in release, but save externals. 32 | STRIP_STYLE = all 33 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Config/StaticLibraryTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // StaticLibraryTarget.xcconfig 3 | // 4 | // These are static library target settings for libgtest.a. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | // This file is based on the Xcode Configuration files in: 7 | // http://code.google.com/p/google-toolbox-for-mac/ 8 | // 9 | 10 | // Static libs can be included in bundles so make them position independent 11 | GCC_DYNAMIC_NO_PIC = NO 12 | 13 | // Static libs should not have their internal globals or external symbols 14 | // stripped. 15 | STRIP_STYLE = debugging 16 | 17 | // Let the user install by specifying the $DSTROOT with xcodebuild 18 | SKIP_INSTALL = NO 19 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Config/TestTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // TestTarget.xcconfig 3 | // 4 | // These are Test target settings for the gtest framework and examples. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | 7 | PRODUCT_NAME = $(TARGET_NAME) 8 | HEADER_SEARCH_PATHS = ../include 9 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.google.${PRODUCT_NAME} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | GTEST_VERSIONINFO_LONG 21 | CFBundleShortVersionString 22 | GTEST_VERSIONINFO_SHORT 23 | CFBundleGetInfoString 24 | ${PRODUCT_NAME} GTEST_VERSIONINFO_LONG, ${GTEST_VERSIONINFO_ABOUT} 25 | NSHumanReadableCopyright 26 | ${GTEST_VERSIONINFO_ABOUT} 27 | CSResourcesFileMapped 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Samples/FrameworkSample/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.google.gtest.${PRODUCT_NAME:identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | FMWK 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | CSResourcesFileMapped 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/gtest/xcode/Scripts/runtests.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Executes the samples and tests for the Google Test Framework. 4 | 5 | # Help the dynamic linker find the path to the libraries. 6 | export DYLD_FRAMEWORK_PATH=$BUILT_PRODUCTS_DIR 7 | export DYLD_LIBRARY_PATH=$BUILT_PRODUCTS_DIR 8 | 9 | # Create some executables. 10 | test_executables=("$BUILT_PRODUCTS_DIR/gtest_unittest-framework" 11 | "$BUILT_PRODUCTS_DIR/gtest_unittest" 12 | "$BUILT_PRODUCTS_DIR/sample1_unittest-framework" 13 | "$BUILT_PRODUCTS_DIR/sample1_unittest-static") 14 | 15 | # Now execute each one in turn keeping track of how many succeeded and failed. 16 | succeeded=0 17 | failed=0 18 | failed_list=() 19 | for test in ${test_executables[*]}; do 20 | "$test" 21 | result=$? 22 | if [ $result -eq 0 ]; then 23 | succeeded=$(( $succeeded + 1 )) 24 | else 25 | failed=$(( failed + 1 )) 26 | failed_list="$failed_list $test" 27 | fi 28 | done 29 | 30 | # Report the successes and failures to the console. 31 | echo "Tests complete with $succeeded successes and $failed failures." 32 | if [ $failed -ne 0 ]; then 33 | echo "The following tests failed:" 34 | echo $failed_list 35 | fi 36 | exit $failed 37 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/m4/ac_system_extensions.m4: -------------------------------------------------------------------------------- 1 | dnl Provide AC_USE_SYSTEM_EXTENSIONS for old autoconf machines. 2 | AC_DEFUN([ACX_USE_SYSTEM_EXTENSIONS],[ 3 | ifdef([AC_USE_SYSTEM_EXTENSIONS],[ 4 | AC_USE_SYSTEM_EXTENSIONS 5 | ],[ 6 | AC_BEFORE([$0], [AC_COMPILE_IFELSE]) 7 | AC_BEFORE([$0], [AC_RUN_IFELSE]) 8 | 9 | AC_REQUIRE([AC_GNU_SOURCE]) 10 | AC_REQUIRE([AC_AIX]) 11 | AC_REQUIRE([AC_MINIX]) 12 | 13 | AH_VERBATIM([__EXTENSIONS__], 14 | [/* Enable extensions on Solaris. */ 15 | #ifndef __EXTENSIONS__ 16 | # undef __EXTENSIONS__ 17 | #endif 18 | #ifndef _POSIX_PTHREAD_SEMANTICS 19 | # undef _POSIX_PTHREAD_SEMANTICS 20 | #endif 21 | #ifndef _TANDEM_SOURCE 22 | # undef _TANDEM_SOURCE 23 | #endif]) 24 | AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__], 25 | [ac_cv_safe_to_define___extensions__], 26 | [AC_COMPILE_IFELSE( 27 | [AC_LANG_PROGRAM([ 28 | # define __EXTENSIONS__ 1 29 | AC_INCLUDES_DEFAULT])], 30 | [ac_cv_safe_to_define___extensions__=yes], 31 | [ac_cv_safe_to_define___extensions__=no])]) 32 | test $ac_cv_safe_to_define___extensions__ = yes && 33 | AC_DEFINE([__EXTENSIONS__]) 34 | AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) 35 | AC_DEFINE([_TANDEM_SOURCE]) 36 | ]) 37 | ]) 38 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/m4/ltversion.m4: -------------------------------------------------------------------------------- 1 | # ltversion.m4 -- version numbers -*- Autoconf -*- 2 | # 3 | # Copyright (C) 2004 Free Software Foundation, Inc. 4 | # Written by Scott James Remnant, 2004 5 | # 6 | # This file is free software; the Free Software Foundation gives 7 | # unlimited permission to copy and/or distribute it, with or without 8 | # modifications, as long as this notice is preserved. 9 | 10 | # Generated from ltversion.in. 11 | 12 | # serial 2976 ltversion.m4 13 | # This file is part of GNU Libtool 14 | 15 | m4_define([LT_PACKAGE_VERSION], [2.2.4]) 16 | m4_define([LT_PACKAGE_REVISION], [1.2976]) 17 | 18 | AC_DEFUN([LTVERSION_VERSION], 19 | [macro_version='2.2.4' 20 | macro_revision='1.2976' 21 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) 22 | _LT_DECL(, macro_revision, 0) 23 | ]) 24 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/protobuf-lite.pc: -------------------------------------------------------------------------------- 1 | prefix=/usr/local 2 | exec_prefix=${prefix} 3 | libdir=${exec_prefix}/lib 4 | includedir=${prefix}/include 5 | 6 | Name: Protocol Buffers 7 | Description: Google's Data Interchange Format 8 | Version: 2.3.0 9 | Libs: -L${libdir} -lprotobuf-lite 10 | Cflags: -I${includedir} 11 | # Commented out because it crashes pkg-config *sigh*: 12 | # http://bugs.freedesktop.org/show_bug.cgi?id=13265 13 | # Conflicts: protobuf 14 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/protobuf-lite.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: Protocol Buffers 7 | Description: Google's Data Interchange Format 8 | Version: @VERSION@ 9 | Libs: -L${libdir} -lprotobuf-lite @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 10 | Cflags: -I${includedir} @PTHREAD_CFLAGS@ 11 | # Commented out because it crashes pkg-config *sigh*: 12 | # http://bugs.freedesktop.org/show_bug.cgi?id=13265 13 | # Conflicts: protobuf 14 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/protobuf.pc: -------------------------------------------------------------------------------- 1 | prefix=/usr/local 2 | exec_prefix=${prefix} 3 | libdir=${exec_prefix}/lib 4 | includedir=${prefix}/include 5 | 6 | Name: Protocol Buffers 7 | Description: Google's Data Interchange Format 8 | Version: 2.3.0 9 | Libs: -L${libdir} -lprotobuf -lz 10 | Cflags: -I${includedir} 11 | # Commented out because it crashes pkg-config *sigh*: 12 | # http://bugs.freedesktop.org/show_bug.cgi?id=13265 13 | # Conflicts: protobuf-lite 14 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/protobuf.pc.in: -------------------------------------------------------------------------------- 1 | prefix=@prefix@ 2 | exec_prefix=@exec_prefix@ 3 | libdir=@libdir@ 4 | includedir=@includedir@ 5 | 6 | Name: Protocol Buffers 7 | Description: Google's Data Interchange Format 8 | Version: @VERSION@ 9 | Libs: -L${libdir} -lprotobuf @PTHREAD_CFLAGS@ @PTHREAD_LIBS@ 10 | Libs.private: @LIBS@ 11 | Cflags: -I${includedir} @PTHREAD_CFLAGS@ 12 | # Commented out because it crashes pkg-config *sigh*: 13 | # http://bugs.freedesktop.org/show_bug.cgi?id=13265 14 | # Conflicts: protobuf-lite 15 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/python/google/__init__.py: -------------------------------------------------------------------------------- 1 | __import__('pkg_resources').declare_namespace(__name__) 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/python/google/protobuf/internal/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/protobuf/python/google/protobuf/internal/__init__.py -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/code_generator.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/coded_stream.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/command_line_interface.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/common.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_enum.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_enum_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_extension.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_file.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_generator.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_helpers.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_message.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_message_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_primitive_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_service.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/cpp_string_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/descriptor.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/descriptor.pb.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/descriptor_database.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/dynamic_message.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/extension_set.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/extension_set_heavy.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/generated_message_reflection.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/generated_message_util.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/gzip_stream.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/hash.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/importer.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_enum.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_enum_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_extension.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_file.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_generator.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_helpers.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_message.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_message_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_primitive_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/java_service.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/main.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/message.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/message_lite.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/once.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/parser.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/plugin.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/plugin.pb.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/printer.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-cpp_test_bad_identifiers.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-cpp_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-file.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-googletest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-test_util.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_custom_options.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_embed_optimize_for.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_empty.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_import.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_import_lite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_lite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_lite_imports_nonlite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_mset.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_no_generic_services.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lazy_descriptor_test-unittest_optimize_for.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lite_test-lite_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lite_test-test_util_lite.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lite_test-unittest_import_lite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_lite_test-unittest_lite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-coded_stream_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-command_line_interface_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-common_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-cpp_bootstrap_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-cpp_plugin_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-cpp_test_bad_identifiers.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-cpp_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-descriptor_database_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-descriptor_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-dynamic_message_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-extension_set_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-file.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-generated_message_reflection_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-googletest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-importer_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-java_plugin_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-message_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-mock_code_generator.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-once_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-parser_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-printer_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-python_plugin_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-reflection_ops_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-repeated_field_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-structurally_valid_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-strutil_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-test_util.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-text_format_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-tokenizer_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_custom_options.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_embed_optimize_for.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_empty.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_import.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_import_lite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_lite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_lite_imports_nonlite.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_mset.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_no_generic_services.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unittest_optimize_for.pb.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-unknown_field_set_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-wire_format_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/protobuf_test-zero_copy_stream_unittest.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/python_generator.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/reflection_ops.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/repeated_field.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/service.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/structurally_valid.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/strutil.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/subprocess.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/substitute.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/test_plugin-file.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/test_plugin-mock_code_generator.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/test_plugin-test_plugin.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/text_format.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/tokenizer.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/unknown_field_set.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/wire_format.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/wire_format_lite.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/zcgunzip.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/zcgzip.Po: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/zero_copy_stream.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/zero_copy_stream_impl.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/zero_copy_stream_impl_lite.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/.deps/zip_writer.Plo: -------------------------------------------------------------------------------- 1 | # dummy 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/google/protobuf/stubs/structurally_valid_unittest.cc: -------------------------------------------------------------------------------- 1 | // Copyright 2008 Google Inc. All Rights Reserved. 2 | // Author: xpeng@google.com (Peter Peng) 3 | 4 | #include 5 | #include 6 | 7 | namespace google { 8 | namespace protobuf { 9 | namespace internal { 10 | namespace { 11 | 12 | TEST(StructurallyValidTest, ValidUTF8String) { 13 | // On GCC, this string can be written as: 14 | // "abcd 1234 - \u2014\u2013\u2212" 15 | // MSVC seems to interpret \u differently. 16 | string valid_str("abcd 1234 - \342\200\224\342\200\223\342\210\222 - xyz789"); 17 | EXPECT_TRUE(IsStructurallyValidUTF8(valid_str.data(), 18 | valid_str.size())); 19 | // Additional check for pointer alignment 20 | for (int i = 1; i < 8; ++i) { 21 | EXPECT_TRUE(IsStructurallyValidUTF8(valid_str.data() + i, 22 | valid_str.size() - i)); 23 | } 24 | } 25 | 26 | TEST(StructurallyValidTest, InvalidUTF8String) { 27 | const string invalid_str("abcd\xA0\xB0\xA0\xB0\xA0\xB0 - xyz789"); 28 | EXPECT_FALSE(IsStructurallyValidUTF8(invalid_str.data(), 29 | invalid_str.size())); 30 | // Additional check for pointer alignment 31 | for (int i = 1; i < 8; ++i) { 32 | EXPECT_FALSE(IsStructurallyValidUTF8(invalid_str.data() + i, 33 | invalid_str.size() - i)); 34 | } 35 | } 36 | 37 | } // namespace 38 | } // namespace internal 39 | } // namespace protobuf 40 | } // namespace google 41 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/google/protobuf/testdata/golden_message: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/protobuf/src/google/protobuf/testdata/golden_message -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/src/google/protobuf/testdata/golden_packed_fields_message: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/protobuf/src/google/protobuf/testdata/golden_packed_fields_message -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/stamp-h1: -------------------------------------------------------------------------------- 1 | timestamp for config.h 2 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/config.h: -------------------------------------------------------------------------------- 1 | /* protobuf config.h for MSVC. On other platforms, this is generated 2 | * automatically by autoheader / autoconf / configure. */ 3 | 4 | /* the location of */ 5 | #define HASH_MAP_H 6 | 7 | /* the namespace of hash_map/hash_set */ 8 | // Apparently Microsoft decided to move hash_map *back* to the std namespace 9 | // in MSVC 2010: 10 | // http://blogs.msdn.com/vcblog/archive/2009/05/25/stl-breaking-changes-in-visual-studio-2010-beta-1.aspx 11 | // TODO(kenton): Use unordered_map instead, which is available in MSVC 2010. 12 | #if _MSC_VER < 1310 || _MSC_VER >= 1600 13 | #define HASH_NAMESPACE std 14 | #else 15 | #define HASH_NAMESPACE stdext 16 | #endif 17 | 18 | /* the location of */ 19 | #define HASH_SET_H 20 | 21 | /* define if the compiler has hash_map */ 22 | #define HAVE_HASH_MAP 1 23 | 24 | /* define if the compiler has hash_set */ 25 | #define HAVE_HASH_SET 1 26 | 27 | /* define if you want to use zlib. See readme.txt for additional 28 | * requirements. */ 29 | // #define HAVE_ZLIB 1 30 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/convert2008to2005.sh: -------------------------------------------------------------------------------- 1 | #! /bin/sh -e 2 | 3 | # This script downgrades MSVC 2008 projects to MSVC 2005 projects, allowing 4 | # people with MSVC 2005 to open them. Otherwise, MSVC 2005 simply refuses to 5 | # open projects created with 2008. We run this as part of our release process. 6 | # If you obtained the code direct from version control and you want to use 7 | # MSVC 2005, you may have to run this manually. (Hint: Use Cygwin or MSYS.) 8 | 9 | for file in *.sln; do 10 | echo "downgrading $file..." 11 | sed -i -re 's/Format Version 10.00/Format Version 9.00/g; 12 | s/Visual Studio 2008/Visual Studio 2005/g;' $file 13 | done 14 | 15 | for file in *.vcproj; do 16 | echo "downgrading $file..." 17 | sed -i -re 's/Version="9.00"/Version="8.00"/g;' $file 18 | done 19 | 20 | # Yes, really, that's it. 21 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/libprotobuf-lite.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/libprotobuf.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/libprotoc.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/lite-test.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/protobuf.suo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/protobuf/vsprojects/protobuf.suo -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/protoc.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {93995380-89BD-4b04-88EB-625FBE52EBFB} 6 | h;hpp;hxx;hm;inl;inc;xsd 7 | 8 | 9 | {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} 10 | rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx 11 | 12 | 13 | {4FC737F1-C7A5-4376-A066-2A32D752A2FF} 14 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 15 | 16 | 17 | 18 | 19 | Source Files 20 | 21 | 22 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/protoc.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/test_plugin.vcxproj.filters: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | {d0e8b03c-a211-4a75-9ae3-6cd8dac86729} 6 | h;hpp;hxx;hm;inl;inc;xsd 7 | 8 | 9 | {baeee8f4-4bb4-4348-b2ce-a820cc797604} 10 | cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx 11 | 12 | 13 | 14 | 15 | Header Files 16 | 17 | 18 | Header Files 19 | 20 | 21 | 22 | 23 | Source Files 24 | 25 | 26 | Source Files 27 | 28 | 29 | Source Files 30 | 31 | 32 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/test_plugin.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/protobuf/vsprojects/tests.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/Debug/xcore.log: -------------------------------------------------------------------------------- 1 | 生成启动时间为 2015/8/13 21:53:14。 2 | 1>项目“E:\workspace3\rpc_client_vs_project\rpc_client_vs_project\xcore\xcore.vcxproj”在节点 2 上(clean 个目标)。 3 | 1>_PrepareForClean: 4 | 正在删除文件“.\Debug\libxcore.lastbuildstate”。 5 | 1>已完成生成项目“E:\workspace3\rpc_client_vs_project\rpc_client_vs_project\xcore\xcore.vcxproj”(clean 个目标)的操作。 6 | 7 | 生成成功。 8 | 9 | 已用时间 00:00:00.01 10 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/http_util.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/http_util.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/http_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/http_util.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | ROOT_DIR= $(shell pwd) 8 | SRC_DIR= $(ROOT_DIR) 9 | 10 | SRC_FILES := $(shell find $(SRC_DIR) -name '*.cpp') 11 | SRC_FILES += $(shell find $(SRC_DIR) -name '*.c') 12 | HEAD_FILES := $(shell find $(SRC_DIR) -name '*.h*') 13 | OBJ_FILES := $(SRC_FILES:.cpp=.o) 14 | 15 | CFLAGS= -lrt -Wall -DUNIX $(DEBUG) -Wno-deprecated -D_REENTRANT 16 | 17 | INC_DIR=-I./ 18 | INC_DIR+=-I../http_codec/api 19 | INC_DIR+=-I../http_codec/http 20 | 21 | LIB_NAME := xcore 22 | LIB_SUFFIX := .a 23 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 24 | 25 | .PHONY: all clean 26 | 27 | all: $(LIB_TARGET); 28 | 29 | $(LIB_TARGET): $(OBJ_FILES) 30 | $(AR) -rc $@ $(OBJ_FILES) 31 | @if [ -d $(ROOT_DIR)/output ]; then rm -rf $(ROOT_DIR)/output; fi 32 | @if [ -d $(ROOT_DIR)/include ]; then rm -rf $(ROOT_DIR)/include; fi 33 | @mkdir $(ROOT_DIR)/output; 34 | @mkdir $(ROOT_DIR)/include; 35 | cp $(HEAD_FILES) $(ROOT_DIR)/include; 36 | cp $(OBJ_FILES) $(ROOT_DIR)/output; 37 | cp $(LIB_TARGET) $(ROOT_DIR)/output; 38 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 39 | @echo 40 | 41 | %.o: %.cpp 42 | $(CC) $(CFLAGS) $(DEBUGFLAGS) $(INC_DIR) -c $< -o $@ 43 | 44 | clean: 45 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 46 | @if [ -d $(ROOT_DIR)/output ]; then rm -rf $(ROOT_DIR)/output; fi 47 | @if [ -d $(ROOT_DIR)/include ]; then rm -rf $(ROOT_DIR)/include; fi 48 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/monitor.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright(C) feimat hemingzhe 3 | */ 4 | #include "monitor.h" 5 | 6 | Monitor::Monitor() { 7 | } 8 | 9 | Monitor::~Monitor() { 10 | } 11 | 12 | void Monitor::Wait() { 13 | xsem.wait(); 14 | } 15 | 16 | void Monitor::TimeWait(uint64 timeout_ms) { 17 | if (timeout_ms <= 0) 18 | return; 19 | xsem.trywait((uint32)timeout_ms); 20 | } 21 | 22 | void Monitor::Notify() { 23 | xsem.post(); 24 | } 25 | 26 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/monitor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright(C) feimat hemingzhe 3 | */ 4 | #ifndef __ARPC_MONITOR_H__ 5 | #define __ARPC_MONITOR_H__ 6 | #include "xcore_semaphore.h" 7 | 8 | class Monitor { 9 | public: 10 | Monitor(); 11 | 12 | ~Monitor(); 13 | 14 | void TimeWait(uint64 timeout_ms); 15 | 16 | void Wait(); 17 | 18 | void Notify(); 19 | 20 | private: 21 | XSemaphore xsem; 22 | }; 23 | 24 | #endif 25 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_atomic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_atomic.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_atomic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_atomic.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_base64.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_base64.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_base64.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_base64.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_byte_order.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_byte_order.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_byte_order.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_byte_order.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_clock.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_clock.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_clock.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_clock.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_conver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_conver.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_conver.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_conver.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_crc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_crc.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_crc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_crc.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_critical.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_critical.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_critical.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_critical.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_define.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_define.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_event.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_event.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_event.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_event.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_file_util.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_file_util.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_file_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_file_util.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_json.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_json.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_json.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_json.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_log.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_log.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_log.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_log.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_md5.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_md5.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_md5.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_md5.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_memory.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_memory.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_memory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_memory.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_mutex.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_mutex.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_mutex.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_mutex.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_noncopyable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_noncopyable.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_rw_lock.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_rw_lock.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_rw_lock.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_rw_lock.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_semaphore.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_semaphore.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_semaphore.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_semaphore.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_smart_ptr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_smart_ptr.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_sock_addr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_sock_addr.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_sock_addr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_sock_addr.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_socket.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_socket.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_socket.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_socket.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_str_parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_str_parser.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_str_parser.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_str_parser.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_str_util.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_str_util.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_str_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_str_util.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_test.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_test.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread_array.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread_array.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread_array.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread_array.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread_pool.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread_pool.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread_pool.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread_pool.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_thread_queue.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_thread_queue.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_time.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_time.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_time.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_time.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_time_span.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_time_span.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_time_span.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_time_span.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_timer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_timer.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_timer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_timer.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_utility.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_utility.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_utility.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_utility.h -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_version.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_version.cpp -------------------------------------------------------------------------------- /fastrpc/rpc_client_vs_project/xcore/xcore_version.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/rpc_client_vs_project/xcore/xcore_version.h -------------------------------------------------------------------------------- /fastrpc/svr/CBackNetD.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CBackNetD.h -------------------------------------------------------------------------------- /fastrpc/svr/CCallbackObj.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CCallbackObj.cpp -------------------------------------------------------------------------------- /fastrpc/svr/CCallbackObj.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CCallbackObj.h -------------------------------------------------------------------------------- /fastrpc/svr/CCliNetD.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CCliNetD.bak -------------------------------------------------------------------------------- /fastrpc/svr/CConnectPoll.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CConnectPoll.h -------------------------------------------------------------------------------- /fastrpc/svr/CLog.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CLog.cpp -------------------------------------------------------------------------------- /fastrpc/svr/CLog.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CLog.h -------------------------------------------------------------------------------- /fastrpc/svr/CMainD.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CMainD.h -------------------------------------------------------------------------------- /fastrpc/svr/CMetaThread.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CMetaThread.h -------------------------------------------------------------------------------- /fastrpc/svr/CNetfun.h: -------------------------------------------------------------------------------- 1 | #ifndef _SVR_CNET_FUN_CLIENT_H_ 2 | #define _SVR_CNET_FUN_CLIENT_H_ 3 | 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include "CRWCache.h" 10 | 11 | 12 | using namespace std; 13 | 14 | 15 | /** 16 | * @author feimat@baidu.com 17 | * 18 | * 19 | *
20 | * 网络读写函数
21 | * 
22 | **/ 23 | 24 | 25 | 26 | 27 | const unsigned CLIENT_COMPLETE_MAX_BUFFER = (1*1024*1024); // 接受缓冲区初始化大小 28 | const unsigned BACK_COMPLETE_MAX_BUFFER = (1); // 接收后台最大的包 29 | 30 | 31 | 32 | int do_accept(int sockfd); 33 | int do_setsocktonoblock(int sd); 34 | int do_tcplisten(const char *strip,int port, int queue); 35 | 36 | 37 | 38 | string sock2peer(const int &sock); 39 | int sock2peer(const int &sock,unsigned long &addr_4byte); 40 | string ip2str(unsigned long addr); 41 | int str2ip(const string &addr,unsigned long &addr_4byte); 42 | int interaction_str2ip(const string &addr,unsigned long &addr_4byte); 43 | int interaction_sock2ip(const int sock,unsigned long &addr_4byte); 44 | char *time2str(time_t t,char *szDateTime); 45 | 46 | 47 | unsigned GenClientFlowNo(int offset,int sock); 48 | int GetOffsetFromFlowNo(unsigned flow,int &offset,int &sock); 49 | 50 | long GetMillisecondTime(); 51 | long GetMicrosecondTime(); 52 | 53 | /* 54 | read_size 返回已经读取的长度 55 | buff_size buff的缓冲长度 56 | return 0 成功 57 | return -1 失败,需要关闭socket 58 | return -2 关闭 59 | */ 60 | int noblock_read_buff(int sock, char*& buff, unsigned *read_size, unsigned& buff_size); 61 | 62 | /* 63 | buff 写的内容 64 | buff_size 准备写入的大小 65 | write_succ_size 返回真正写入的大小 66 | return 0 成功 67 | return -1 失败 68 | return -2 关闭 69 | */ 70 | int noblock_write_buff(int sock, CRWCache& sendcache, unsigned *write_succ_size); 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | #endif 79 | 80 | -------------------------------------------------------------------------------- /fastrpc/svr/CQueue.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CQueue.h -------------------------------------------------------------------------------- /fastrpc/svr/CRWCache.bak: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CRWCache.bak -------------------------------------------------------------------------------- /fastrpc/svr/CRWCache.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CRWCache.cpp -------------------------------------------------------------------------------- /fastrpc/svr/CRWCache.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CRWCache.h -------------------------------------------------------------------------------- /fastrpc/svr/CThreadSync.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #include "CThreadSync.h" 5 | 6 | 7 | CMutex::CMutex(int kind) 8 | { 9 | pthread_mutexattr_t attr; 10 | pthread_mutexattr_init(&attr); 11 | //attr.__mutexkind = kind; 12 | 13 | pthread_mutex_init(&mutex_, &attr); 14 | } 15 | 16 | CMutex::CMutex() 17 | { 18 | pthread_mutexattr_t attr; 19 | pthread_mutexattr_init(&attr); 20 | //attr.__mutexkind = PTHREAD_MUTEX_TIMED_NP; 21 | 22 | pthread_mutex_init(&mutex_, &attr); 23 | } 24 | 25 | CMutex::~CMutex() 26 | { 27 | pthread_mutex_destroy(&mutex_); 28 | } 29 | 30 | int CMutex::lock() 31 | { 32 | if (pthread_mutex_lock(&mutex_) != 0) 33 | { 34 | return MUTEX_ERROR_BASE; 35 | } 36 | return 0; 37 | } 38 | 39 | int CMutex::trylock() 40 | { 41 | if (pthread_mutex_trylock(&mutex_) != 0) 42 | { 43 | return MUTEX_ERROR_BASE; 44 | } 45 | return 0; 46 | } 47 | 48 | int CMutex::unlock() 49 | { 50 | if (pthread_mutex_unlock(&mutex_) != 0) 51 | { 52 | return MUTEX_ERROR_BASE; 53 | } 54 | 55 | return 0; 56 | } 57 | 58 | pthread_mutex_t* CMutex::mutex() 59 | { 60 | return &mutex_; 61 | } 62 | -------------------------------------------------------------------------------- /fastrpc/svr/CThreadSync.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CThreadSync.h -------------------------------------------------------------------------------- /fastrpc/svr/CTimeout.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CTimeout.h -------------------------------------------------------------------------------- /fastrpc/svr/CTimerContainer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CTimerContainer.cpp -------------------------------------------------------------------------------- /fastrpc/svr/CTimerContainer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/CTimerContainer.h -------------------------------------------------------------------------------- /fastrpc/svr/Define.h: -------------------------------------------------------------------------------- 1 | #include "CBackNetD.h" 2 | #include "CCallbackObj.h" 3 | #include "CCliNetD.h" 4 | #include "CConnectPoll.h" 5 | #include "CLog.h" 6 | #include "CMainD.h" 7 | #include "CMetaThread.h" 8 | #include "CNetfun.h" 9 | #include "CQueue.h" 10 | #include "CRWCache.h" 11 | #include "CTcpSocket.h" 12 | #include "CThreadSync.h" 13 | #include "CTimeout.h" 14 | #include "CTimerContainer.h" 15 | #include "Interaction.h" 16 | #include "NSHeader.h" 17 | #include "Statistic.h" 18 | #include "CSvr.h" 19 | 20 | 21 | -------------------------------------------------------------------------------- /fastrpc/svr/Makefile: -------------------------------------------------------------------------------- 1 | CC= g++ 2 | RANLIB= ranlib 3 | 4 | 5 | DEBUG = -g 6 | #DEBUG = -O3 7 | 8 | 9 | CFLAGS= -Wall -DUNIX $(DEBUG) -Wno-deprecated -D_REENTRANT 10 | CFLAGS+=-I../ependingpool/output/include/ #-I../ullib/include 11 | CFLAGS+=-I../http_codec/api -I./ 12 | 13 | OBJS = CSvr.o CCliNetD.o CBackNetD.o CCliNetD.o CMainD.o CNetfun.o CRWCache.o CTcpSocket.o 14 | OBJS += CLog.o Interaction.o CThreadSync.o CCallbackObj.o Statistic.o CTimerContainer.o 15 | LIB = libasvr.a 16 | 17 | all:$(LIB) 18 | $(LIB): 19 | rm -rf $@ 20 | rm -rf *.o 21 | $(CC) $(CFLAGS) -c CTimerContainer.cpp 22 | $(CC) $(CFLAGS) -c Statistic.cpp 23 | $(CC) $(CFLAGS) -c CCallbackObj.cpp 24 | $(CC) $(CFLAGS) -c CThreadSync.cpp 25 | $(CC) $(CFLAGS) -c Interaction.cpp 26 | $(CC) $(CFLAGS) -c CLog.cpp 27 | $(CC) $(CFLAGS) -c CTcpSocket.cpp 28 | $(CC) $(CFLAGS) -c CRWCache.cpp 29 | $(CC) $(CFLAGS) -c CNetfun.cpp 30 | $(CC) $(CFLAGS) -c CMainD.cpp 31 | $(CC) $(CFLAGS) -c CCliNetD.cpp 32 | $(CC) $(CFLAGS) -c CBackNetD.cpp 33 | $(CC) $(CFLAGS) -c CCliNetD.cpp 34 | $(CC) $(CFLAGS) -c CSvr.cpp 35 | ar q $@ $(OBJS) 36 | $(RANLIB) $@ 37 | 38 | clean: 39 | rm -rf *.o 40 | rm -rf core 41 | rm -f libasvr.a 42 | -------------------------------------------------------------------------------- /fastrpc/svr/NSHeader.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/NSHeader.h -------------------------------------------------------------------------------- /fastrpc/svr/Statistic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/Statistic.cpp -------------------------------------------------------------------------------- /fastrpc/svr/Statistic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/svr/Statistic.h -------------------------------------------------------------------------------- /fastrpc/third-party/gunittest/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | DEBUG = -D_USE_HTTP_PROTO_ 3 | ROOT_DIR = $(shell pwd) 4 | SRC_DIR = $(ROOT_DIR) 5 | SRC_FILES := $(shell find $(SRC_DIR) -name '*.cc') 6 | OBJ_FILES := $(SRC_FILES:.cc=.o) 7 | 8 | CFLAGS= -Wall -DUNIX $(DEBUG) -Wno-deprecated -D_REENTRANT 9 | INC_DIR+=-I./ 10 | 11 | LIB_NAME := gtest 12 | LIB_SUFFIX := .a 13 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 14 | 15 | .PHONY: all clean 16 | 17 | all: $(LIB_TARGET); 18 | 19 | $(LIB_TARGET): $(OBJ_FILES) 20 | $(AR) -rc $@ $(OBJ_FILES) 21 | #$(CC) -shared -fpic -o $(LIB_TARGET:.a=.so) $(OBJ_FILES) $(LDFLAGS) 22 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 23 | @echo 24 | 25 | %.o: %.cc 26 | $(CC) $(CFLAGS) $(INC_DIR) -c $< -o $@ 27 | 28 | clean: 29 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 30 | -------------------------------------------------------------------------------- /fastrpc/xcore/makefile: -------------------------------------------------------------------------------- 1 | CC=g++ 2 | ifeq ($(debug), 1) 3 | DEBUGFLAGS = -g 4 | else 5 | DEBUGFLAGS = -O3 6 | endif 7 | ROOT_DIR= $(shell pwd) 8 | SRC_DIR= $(ROOT_DIR) 9 | 10 | SRC_FILES_CPP := $(shell find $(SRC_DIR) -name '*.cpp') 11 | SRC_FILES_C := $(shell find $(SRC_DIR) -name '*.c') 12 | HEAD_FILES := $(shell find $(SRC_DIR) -name '*.h*') 13 | OBJ_FILES := $(SRC_FILES_CPP:.cpp=.o) 14 | OBJ_FILES += $(SRC_FILES_C:.c=.o) 15 | 16 | CFLAGS= -ldl -lrt -Wall -DUNIX $(DEBUG) -Wno-deprecated -D_REENTRANT 17 | 18 | INC_DIR=-I./ 19 | INC_DIR+=-I../http_codec/api 20 | INC_DIR+=-I../http_codec/http 21 | INC_DIR+=-I../protobuf/include 22 | 23 | LIB_NAME := xcore 24 | LIB_SUFFIX := .a 25 | LIB_TARGET := lib$(LIB_NAME)$(LIB_SUFFIX) 26 | 27 | .PHONY: all clean 28 | 29 | all: $(LIB_TARGET); 30 | 31 | $(LIB_TARGET): $(OBJ_FILES) 32 | $(AR) -rc $@ $(OBJ_FILES) 33 | @if [ -d $(ROOT_DIR)/output ]; then rm -rf $(ROOT_DIR)/output; fi 34 | @if [ -d $(ROOT_DIR)/include ]; then rm -rf $(ROOT_DIR)/include; fi 35 | @mkdir $(ROOT_DIR)/output; 36 | @mkdir $(ROOT_DIR)/include; 37 | cp $(HEAD_FILES) $(ROOT_DIR)/include; 38 | cp $(OBJ_FILES) $(ROOT_DIR)/output; 39 | cp $(LIB_TARGET) $(ROOT_DIR)/output; 40 | @echo *********Build $@ $(LIB_TARGET:.a=.so) Successful********* 41 | @echo 42 | 43 | %.o: %.cpp 44 | $(CC) $(CFLAGS) $(DEBUGFLAGS) $(INC_DIR) -c $< -o $@ 45 | 46 | clean: 47 | rm -f $(LIB_TARGET) $(LIB_TARGET:.a=.so) $(OBJ_FILES) 48 | @if [ -d $(ROOT_DIR)/output ]; then rm -rf $(ROOT_DIR)/output; fi 49 | @if [ -d $(ROOT_DIR)/include ]; then rm -rf $(ROOT_DIR)/include; fi 50 | -------------------------------------------------------------------------------- /fastrpc/xcore/monitor.cpp: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright(C) feimat hemingzhe 3 | */ 4 | #include "monitor.h" 5 | 6 | Monitor::Monitor() { 7 | m_has_notify = false; 8 | } 9 | 10 | Monitor::~Monitor() { 11 | } 12 | 13 | void Monitor::Wait() { 14 | xsem.wait(); 15 | } 16 | 17 | void Monitor::TimeWait(uint64 timeout_ms) { 18 | if (timeout_ms <= 0) 19 | return; 20 | xsem.trywait((uint32)timeout_ms); 21 | } 22 | 23 | void Monitor::Notify() { 24 | xsem.post(); 25 | m_has_notify = true; 26 | } 27 | 28 | -------------------------------------------------------------------------------- /fastrpc/xcore/monitor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright(C) feimat hemingzhe 3 | */ 4 | #ifndef __ARPC_MONITOR_H__ 5 | #define __ARPC_MONITOR_H__ 6 | #include "xcore_semaphore.h" 7 | 8 | class Monitor { 9 | public: 10 | Monitor(); 11 | 12 | ~Monitor(); 13 | 14 | void TimeWait(uint64 timeout_ms); 15 | 16 | void Wait(); 17 | 18 | void Notify(); 19 | 20 | bool m_has_notify; 21 | 22 | private: 23 | XSemaphore xsem; 24 | }; 25 | 26 | #endif 27 | -------------------------------------------------------------------------------- /fastrpc/xcore/xcore.vcxproj.user: -------------------------------------------------------------------------------- 1 |  2 | 3 | -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_atomic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_atomic.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_atomic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_atomic.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_base64.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_base64.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_base64.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_base64.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_byte_order.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_byte_order.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_byte_order.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_byte_order.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_clock.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_clock.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_clock.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_clock.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_conver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_conver.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_conver.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_conver.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_crc.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_crc.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_crc.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_crc.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_critical.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_critical.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_critical.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_critical.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_define.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_define.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_event.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_event.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_event.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_event.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_file_util.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_file_util.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_file_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_file_util.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_json.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_json.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_json.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_json.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_log.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_log.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_log.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_log.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_md5.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_md5.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_md5.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_md5.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_memory.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_memory.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_memory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_memory.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_mutex.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_mutex.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_mutex.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_mutex.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_noncopyable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_noncopyable.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_rw_lock.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_rw_lock.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_rw_lock.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_rw_lock.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_semaphore.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_semaphore.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_semaphore.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_semaphore.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_smart_ptr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_smart_ptr.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_sock_addr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_sock_addr.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_sock_addr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_sock_addr.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_socket.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_socket.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_socket.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_socket.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_str_parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_str_parser.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_str_parser.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_str_parser.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_str_util.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_str_util.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_str_util.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_str_util.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_test.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_test.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread_array.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread_array.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread_array.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread_array.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread_pool.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread_pool.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread_pool.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread_pool.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_thread_queue.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_thread_queue.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_time.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_time.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_time.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_time.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_time_span.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_time_span.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_time_span.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_time_span.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_timer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_timer.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_timer.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_timer.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_utility.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_utility.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_utility.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_utility.h -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_version.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_version.cpp -------------------------------------------------------------------------------- /fastrpc/xcore/xcore_version.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LiveMirror/fastrpc/c238ee7d378fc1f647badada7b0b006f838c9019/fastrpc/xcore/xcore_version.h --------------------------------------------------------------------------------