gitextract_q11n9gsq/ ├── .gitignore ├── LICENSE ├── README.md ├── README_zh_CN.md ├── examples/ │ ├── IntegratingIntoYourProject.cpp │ ├── generate_examples.sh │ ├── getAllInstances.cpp │ ├── getConfig.cpp │ ├── listenToKeys.cpp │ ├── registerInstances.cpp │ ├── setConfig.cpp │ └── subscribeServices.cpp ├── include/ │ ├── Compatibility.h │ ├── Nacos.h │ ├── NacosExceptions.h │ ├── NacosString.h │ ├── Properties.h │ ├── ResourceGuard.h │ ├── config/ │ │ └── ConfigService.h │ ├── constant/ │ │ ├── ConfigConstant.h │ │ ├── NamingConstant.h │ │ ├── PropertyKeyConst.h │ │ └── UtilAndComs.h │ ├── factory/ │ │ ├── INacosServiceFactory.h │ │ └── NacosFactoryFactory.h │ ├── listen/ │ │ └── Listener.h │ ├── naming/ │ │ ├── ChangeAdvice.h │ │ ├── Cluster.h │ │ ├── Instance.h │ │ ├── ListView.h │ │ ├── NamingMaintainService.h │ │ ├── NamingService.h │ │ ├── ServiceInfo.h │ │ ├── ServiceInfo2.h │ │ ├── selectors/ │ │ │ ├── HealthInstanceSelector.h │ │ │ ├── RandomByWeightSelector.h │ │ │ ├── RandomSelector.h │ │ │ └── Selector.h │ │ └── subscribe/ │ │ └── EventListener.h │ ├── server/ │ │ └── ServerSelector.h │ └── thread/ │ └── AtomicInt.h ├── nacos-cpp-cli.properties ├── src/ │ ├── NacosExceptions.cpp │ ├── NacosString.cpp │ ├── config/ │ │ ├── AppConfigManager.cpp │ │ ├── AppConfigManager.h │ │ ├── ConcurrentDiskUtil.cpp │ │ ├── ConcurrentDiskUtil.h │ │ ├── ConfigProxy.cpp │ │ ├── ConfigProxy.h │ │ ├── IOUtils.cpp │ │ ├── IOUtils.h │ │ ├── JVMUtil.h │ │ ├── LocalSnapshotManager.cpp │ │ ├── LocalSnapshotManager.h │ │ ├── NacosConfigService.cpp │ │ ├── NacosConfigService.h │ │ ├── SnapShotSwitch.cpp │ │ └── SnapShotSwitch.h │ ├── constant/ │ │ ├── ConfigConstant.cpp │ │ ├── NamingConstant.cpp │ │ ├── PropertyKeyConst.cpp │ │ └── UtilAndComs.cpp │ ├── crypto/ │ │ ├── MACProvider.cpp │ │ ├── MACProvider.h │ │ ├── SignatureTool.h │ │ ├── base64/ │ │ │ └── base64.h │ │ ├── hmac_sha1/ │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── hmac/ │ │ │ │ ├── hmac.h │ │ │ │ └── hmac_sha1.cpp │ │ │ └── sha/ │ │ │ ├── sha.h │ │ │ └── sha1.cpp │ │ └── md5/ │ │ ├── md5.cpp │ │ └── md5.h │ ├── debug/ │ │ └── DebugAssertion.h │ ├── factory/ │ │ ├── NacosFactoryFactory.cpp │ │ ├── NacosServiceFactory.cpp │ │ ├── NacosServiceFactory.h │ │ ├── ObjectConfigData.cpp │ │ └── ObjectConfigData.h │ ├── http/ │ │ ├── HTTPCli.cpp │ │ ├── HTTPCli.h │ │ ├── HttpDelegate.h │ │ ├── HttpStatus.h │ │ ├── IHttpCli.h │ │ └── delegate/ │ │ ├── NacosAuthHttpDelegate.cpp │ │ ├── NacosAuthHttpDelegate.h │ │ ├── NoOpHttpDelegate.cpp │ │ └── NoOpHttpDelegate.h │ ├── init/ │ │ ├── Init.cpp │ │ └── Init.h │ ├── json/ │ │ ├── JSON.cpp │ │ ├── JSON.h │ │ └── rapidjson/ │ │ ├── allocators.h │ │ ├── cursorstreamwrapper.h │ │ ├── document.h │ │ ├── encodedstream.h │ │ ├── encodings.h │ │ ├── error/ │ │ │ ├── en.h │ │ │ └── error.h │ │ ├── filereadstream.h │ │ ├── filewritestream.h │ │ ├── fwd.h │ │ ├── internal/ │ │ │ ├── biginteger.h │ │ │ ├── diyfp.h │ │ │ ├── dtoa.h │ │ │ ├── ieee754.h │ │ │ ├── itoa.h │ │ │ ├── meta.h │ │ │ ├── pow10.h │ │ │ ├── regex.h │ │ │ ├── stack.h │ │ │ ├── strfunc.h │ │ │ ├── strtod.h │ │ │ └── swap.h │ │ ├── istreamwrapper.h │ │ ├── memorybuffer.h │ │ ├── memorystream.h │ │ ├── msinttypes/ │ │ │ ├── inttypes.h │ │ │ └── stdint.h │ │ ├── ostreamwrapper.h │ │ ├── pointer.h │ │ ├── prettywriter.h │ │ ├── rapidjson.h │ │ ├── reader.h │ │ ├── schema.h │ │ ├── stream.h │ │ ├── stringbuffer.h │ │ └── writer.h │ ├── listen/ │ │ ├── ClientWorker.cpp │ │ ├── ClientWorker.h │ │ ├── ListeningData.h │ │ └── OperateItem.h │ ├── log/ │ │ ├── Logger.cpp │ │ └── Logger.h │ ├── naming/ │ │ ├── Cluster.cpp │ │ ├── Instance.cpp │ │ ├── NacosNamingMaintainService.cpp │ │ ├── NacosNamingMaintainService.h │ │ ├── NacosNamingService.cpp │ │ ├── NacosNamingService.h │ │ ├── NamingProxy.cpp │ │ ├── NamingProxy.h │ │ ├── ServiceInfo.cpp │ │ ├── beat/ │ │ │ ├── BeatInfo.cpp │ │ │ ├── BeatInfo.h │ │ │ ├── BeatReactor.cpp │ │ │ ├── BeatReactor.h │ │ │ ├── BeatTask.cpp │ │ │ └── BeatTask.h │ │ ├── cache/ │ │ │ ├── ChangeAdvice.cpp │ │ │ ├── NamingCache.cpp │ │ │ └── NamingCache.h │ │ ├── selectors/ │ │ │ ├── HealthInstanceSelector.cpp │ │ │ ├── RandomByWeightSelector.cpp │ │ │ └── RandomSelector.cpp │ │ └── subscribe/ │ │ ├── EventDispatcher.cpp │ │ ├── EventDispatcher.h │ │ ├── EventListener.cpp │ │ ├── HostReactor.cpp │ │ ├── HostReactor.h │ │ ├── SubscriptionPoller.cpp │ │ ├── SubscriptionPoller.h │ │ ├── UdpNamingServiceListener.cpp │ │ └── UdpNamingServiceListener.h │ ├── security/ │ │ ├── SecurityManager.cpp │ │ └── SecurityManager.h │ ├── server/ │ │ ├── NacosServerInfo.h │ │ ├── ServerListManager.cpp │ │ └── ServerListManager.h │ ├── thread/ │ │ ├── BlockingQueue.h │ │ ├── DelayedThreadPool.cpp │ │ ├── DelayedThreadPool.h │ │ ├── Mutex.h │ │ ├── RWLock.h │ │ ├── Task.h │ │ ├── Thread.cpp │ │ ├── Thread.h │ │ ├── ThreadLocal.h │ │ ├── ThreadPool.cpp │ │ ├── ThreadPool.h │ │ ├── Tid.cpp │ │ └── Tid.h │ └── utils/ │ ├── ConfigParserUtils.cpp │ ├── ConfigParserUtils.h │ ├── DirUtils.cpp │ ├── DirUtils.h │ ├── Env.h │ ├── GroupKey.h │ ├── NamingUtils.h │ ├── NetUtils.cpp │ ├── NetUtils.h │ ├── ParamUtils.h │ ├── RandomUtils.cpp │ ├── RandomUtils.h │ ├── SequenceProvider.h │ ├── TimeUtils.cpp │ ├── TimeUtils.h │ ├── UuidUtils.cpp │ ├── UuidUtils.h │ ├── url.cpp │ └── url.h └── test/ ├── allinone.cpp └── testcase/ ├── AssertString.cpp ├── DebugTest.cpp ├── testAppConfigManager.cpp ├── testCache.cpp ├── testDelayedThreadPool.cpp ├── testDeleteConfig.cpp ├── testDeleteListenedKeys.cpp ├── testEndpointWithNamingSvc.cpp ├── testGetAllInstances.cpp ├── testGetConfig.cpp ├── testGetServiceNames.cpp ├── testHttpRequest.cpp ├── testIOUtils.cpp ├── testInstanceSelector.cpp ├── testJson2BizObjects.cpp ├── testListenWorker.cpp ├── testListeningKeys.cpp ├── testListeningKeysWithHttpPrefix.cpp ├── testMAC.cpp ├── testMD5.cpp ├── testMaintainInstances.cpp ├── testMaintainServices.cpp ├── testNamingService.cpp ├── testNamingSubscribe.cpp ├── testNetUtils.cpp ├── testPublishConfig.cpp ├── testPublishConfigWithHttpPrefix.cpp ├── testRapidJson.cpp ├── testSequenceProvider.cpp ├── testServerListManager.cpp ├── testStringExplode.cpp ├── testThreadLocal.cpp ├── testThreadSmoke.cpp ├── testURL.cpp └── testUUID.cpp