gitextract_jq1qgnkm/ ├── .gitignore ├── LICENSE ├── README.md ├── build.txt ├── commons-api2doc/ │ ├── .gitignore │ ├── README.md │ ├── doc/ │ │ ├── TODO.md │ │ └── aboutCurl.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── terran4j/ │ │ │ └── commons/ │ │ │ └── api2doc/ │ │ │ ├── Api2DocMocker.java │ │ │ ├── annotations/ │ │ │ │ ├── Api2Doc.java │ │ │ │ ├── ApiComment.java │ │ │ │ ├── ApiError.java │ │ │ │ └── ApiErrors.java │ │ │ ├── codewriter/ │ │ │ │ ├── CodeConfig.java │ │ │ │ ├── CodeOutput.java │ │ │ │ ├── CodeUtils.java │ │ │ │ ├── EnumCodeWriter.java │ │ │ │ ├── FileCodeOutput.java │ │ │ │ ├── JavaBeanCodeWriter.java │ │ │ │ ├── MemoryCodeOutput.java │ │ │ │ └── RetrofitCodeWriter.java │ │ │ ├── config/ │ │ │ │ ├── Api2DocConfiguration.java │ │ │ │ └── EnableApi2Doc.java │ │ │ ├── controller/ │ │ │ │ ├── Api2DocController.java │ │ │ │ ├── ApiEntry.java │ │ │ │ ├── ApiInfo.java │ │ │ │ ├── ApiMetaController.java │ │ │ │ └── MenuData.java │ │ │ ├── domain/ │ │ │ │ ├── ApiDataType.java │ │ │ │ ├── ApiDocObject.java │ │ │ │ ├── ApiDocUtils.java │ │ │ │ ├── ApiErrorObject.java │ │ │ │ ├── ApiFolderObject.java │ │ │ │ ├── ApiObject.java │ │ │ │ ├── ApiParamLocation.java │ │ │ │ ├── ApiParamObject.java │ │ │ │ ├── ApiResultObject.java │ │ │ │ └── DateConverter.java │ │ │ ├── impl/ │ │ │ │ ├── Api2DocCollector.java │ │ │ │ ├── Api2DocObjectFactory.java │ │ │ │ ├── Api2DocProperties.java │ │ │ │ ├── Api2DocService.java │ │ │ │ ├── Api2DocUtils.java │ │ │ │ ├── ApiCommentUtils.java │ │ │ │ ├── ClasspathFreeMarker.java │ │ │ │ ├── CurlBuilder.java │ │ │ │ ├── DocMenuBuilder.java │ │ │ │ ├── DocPageBuilder.java │ │ │ │ ├── FlexibleString.java │ │ │ │ └── MappingMethod.java │ │ │ └── meta/ │ │ │ ├── ApiMetaService.java │ │ │ ├── ClassMeta.java │ │ │ ├── MethodMeta.java │ │ │ └── ParamMeta.java │ │ └── resources/ │ │ ├── api2doc/ │ │ │ └── welcome.md │ │ ├── com/ │ │ │ └── terran4j/ │ │ │ └── commons/ │ │ │ └── api2doc/ │ │ │ ├── codewriter/ │ │ │ │ ├── bean.java.ftl │ │ │ │ ├── enum.java.ftl │ │ │ │ └── retrofit.java.ftl │ │ │ └── impl/ │ │ │ └── doc.md.ftl │ │ ├── static/ │ │ │ └── api2doc/ │ │ │ ├── css/ │ │ │ │ ├── doc.less │ │ │ │ ├── home.less │ │ │ │ ├── md.less │ │ │ │ └── test.less │ │ │ ├── flexible-lite/ │ │ │ │ └── flexible-lite-1.0.js │ │ │ ├── less/ │ │ │ │ └── less-1.7.0.js │ │ │ ├── test.html │ │ │ └── vue/ │ │ │ └── vue-2.5.10.js │ │ └── templates/ │ │ └── api2doc/ │ │ ├── doc.ftl │ │ └── home.ftl │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── terran4j/ │ │ ├── demo/ │ │ │ └── api2doc/ │ │ │ ├── Api2DocDemoApp.java │ │ │ ├── CodeGenerator.java │ │ │ ├── FileInfo.java │ │ │ ├── ShowMappingController.java │ │ │ ├── ShowParamController.java │ │ │ ├── ShowResultController.java │ │ │ ├── User.java │ │ │ ├── UserController.java │ │ │ ├── UserController1.java │ │ │ ├── UserController2.java │ │ │ ├── UserController3.java │ │ │ ├── UserGroup.java │ │ │ └── UserType.java │ │ └── test/ │ │ └── api2doc/ │ │ ├── Api2DocCollectorTest.java │ │ ├── Api2DocObjectFactoryTest.java │ │ ├── Api2DocUtilsTest.java │ │ ├── ApiCommentUtilsTest.java │ │ ├── ApiResultObjectTest.java │ │ ├── Application.java │ │ ├── BaseApi2DocTest.java │ │ ├── CurlBuilderTest.java │ │ ├── JavaBeanCodeWriterTest.java │ │ ├── MyBean.java │ │ ├── ParseApiCommentOnMethod.java │ │ ├── ParseApiCommentOnParam.java │ │ ├── ParseApiCommentOnSeeClass.java │ │ ├── ParseApiCommentOnSeeClassLoop.java │ │ ├── ParseEnumTest.java │ │ ├── ParseListBeanTest.java │ │ ├── ResultSourceTypeTest.java │ │ └── ToMockResultTest.java │ └── resources/ │ ├── api2doc/ │ │ ├── demo3/ │ │ │ ├── 1-项目简介.md │ │ │ ├── 11-接口1的补充说明.md │ │ │ ├── 2-技术架构.md │ │ │ ├── 21-接口2的补充说明.md │ │ │ └── 3-应用场景.md │ │ └── welcome.md │ └── application.yml ├── commons-armq/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── terran4j/ │ │ └── commons/ │ │ └── armq/ │ │ ├── ArmqConfig.java │ │ ├── ConsumerConfig.java │ │ ├── MessageConsumer.java │ │ ├── MessageEntity.java │ │ ├── MessageService.java │ │ └── impl/ │ │ ├── MessageConsumerTask.java │ │ ├── MessageConsumerTransfer.java │ │ └── MessageServiceImpl.java │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── terran4j/ │ │ └── commons/ │ │ └── test/ │ │ └── armq/ │ │ ├── ArmqTestApp.java │ │ ├── Normal.java │ │ ├── NormalTopicTest.java │ │ ├── Producer.java │ │ └── SendTest.java │ └── resources/ │ └── .gitignore ├── commons-dsql/ │ ├── .gitignore │ ├── README.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── terran4j/ │ │ └── commons/ │ │ └── dsql/ │ │ ├── DsqlExecutor.java │ │ ├── DsqlModifying.java │ │ ├── DsqlQuery.java │ │ ├── DsqlRepository.java │ │ ├── EnableDsqlRepositories.java │ │ ├── QueryBean.java │ │ ├── config/ │ │ │ └── DsqlConfiguration.java │ │ └── impl/ │ │ ├── CompositeBeanRowMapper.java │ │ ├── DsqlBuilder.java │ │ ├── DsqlExecutorImpl.java │ │ ├── DsqlRepositoryBeanFactory.java │ │ ├── DsqlRepositoryConfigRegistrar.java │ │ ├── DsqlRepositoryProxy.java │ │ └── SqlInfo.java │ └── test/ │ └── java/ │ └── com/ │ └── terran4j/ │ ├── demo/ │ │ └── dsql/ │ │ ├── Address.java │ │ ├── AddressDAO.java │ │ ├── AddressDistance.java │ │ ├── AddressDistanceDAO.java │ │ ├── AddressQuery.java │ │ ├── address-count.sql.ftl │ │ ├── address-delete-nearest.sql.ftl │ │ ├── address-list.sql.ftl │ │ ├── address-nearest-2.sql.ftl │ │ ├── address-nearest.sql.ftl │ │ ├── address-update-nearest.sql.ftl │ │ ├── appdsql/ │ │ │ └── DsqlDemoApplication.java │ │ └── appjpa/ │ │ └── JpaDemoApplication.java │ └── test/ │ └── dsql/ │ ├── BaseDsqlTest.java │ ├── DsqlAutoTest.java │ ├── DsqlModifyingTest.java │ ├── DsqlQueryTest.java │ ├── dao/ │ │ ├── Location.java │ │ ├── LocationDAO.java │ │ └── LocationQuery.java │ ├── dao1/ │ │ ├── LocationDsqlDAO.java │ │ ├── delete-nearest.sql.ftl │ │ └── update-nearest.sql.ftl │ ├── dao2/ │ │ ├── LocationDistance.java │ │ ├── LocationDistanceDAO.java │ │ ├── location-nearest.sql.ftl │ │ └── locations.sql.ftl │ ├── dao3/ │ │ ├── DistancedLocation.java │ │ ├── DistancedLocationDAO.java │ │ ├── location-count.sql.ftl │ │ └── locations.sql.ftl │ └── dao4/ │ ├── LocationAutoDAO.java │ ├── countLocation.sql.ftl │ ├── getLocations.sql.ftl │ └── getNearestLocation.sql.ftl ├── commons-hedis/ │ ├── .gitignore │ ├── README.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── terran4j/ │ │ ├── commons/ │ │ │ └── hedis/ │ │ │ ├── cache/ │ │ │ │ ├── CacheService.java │ │ │ │ ├── JedisCacheService.java │ │ │ │ └── RedisTemplateCacheService.java │ │ │ ├── config/ │ │ │ │ ├── EnableHedis.java │ │ │ │ └── HedisConfiguration.java │ │ │ ├── dschedule/ │ │ │ │ ├── DScheduling.java │ │ │ │ ├── DSchedulingAspect.java │ │ │ │ ├── JobExeInfo.java │ │ │ │ └── ScheduleContext.java │ │ │ └── dsyn/ │ │ │ ├── DSynchArgs.java │ │ │ ├── DSynchronized.java │ │ │ ├── DSynchronizedAspect.java │ │ │ └── Server.java │ │ └── mock/ │ │ └── hedis/ │ │ ├── MockCacheService.java │ │ └── MockHedisConfig.java │ └── test/ │ └── java/ │ └── com/ │ └── terran4j/ │ ├── demo/ │ │ └── hedis/ │ │ ├── CountService.java │ │ ├── DSynchronizedCountService.java │ │ ├── DemoCacheService.java │ │ ├── HedisDemoApp.java │ │ ├── LoopIncrementJob.java │ │ └── User.java │ └── test/ │ └── hedis/ │ ├── BaseSpringBootTest.java │ ├── BaseTestExecutionListener.java │ ├── CacheAnnoTest.java │ ├── JedisCacheServiceTest.java │ ├── MockitoInitializer.java │ ├── RedisTestConfig.java │ ├── RedissonClientTest.java │ ├── SchedulingApplication.java │ └── dsyn/ │ ├── BaseCacheTest.java │ ├── CacheTestApplication.java │ ├── CountService.java │ ├── DSynchronizedService.java │ ├── DSynchronizedTest.java │ ├── Home.java │ └── HomeService.java ├── commons-hi/ │ ├── .gitignore │ ├── README.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── terran4j/ │ │ └── commons/ │ │ └── hi/ │ │ ├── Action.java │ │ ├── ApacheHttpClientBuilder.java │ │ ├── Api2DocSupport.java │ │ ├── AssertResponseFailedException.java │ │ ├── HttpClient.java │ │ ├── HttpClientListener.java │ │ ├── HttpErrorCode.java │ │ ├── HttpErrorCode.properties │ │ ├── HttpException.java │ │ ├── HttpRequest.java │ │ ├── Param.java │ │ ├── Request.java │ │ ├── Response.java │ │ ├── Session.java │ │ ├── WrappedResponse.java │ │ ├── Write.java │ │ └── WriteTo.java │ └── test/ │ └── java/ │ ├── application.yml │ ├── com/ │ │ └── terran4j/ │ │ ├── demo/ │ │ │ └── hi/ │ │ │ ├── Calculator.java │ │ │ ├── CalculatorController.java │ │ │ ├── HttpClientApp.java │ │ │ └── demo.json │ │ └── test/ │ │ └── hi/ │ │ ├── BaseHiTest.java │ │ ├── HttpClientTest.java │ │ ├── HttpClientTest.json │ │ ├── TestHiApp.java │ │ ├── api2doc/ │ │ │ ├── Api2DocApp.java │ │ │ ├── Api2DocDemoController.java │ │ │ ├── Api2DocSupportTest.java │ │ │ └── MultiplyObject.java │ │ └── exe/ │ │ ├── ExeController.java │ │ ├── ExeTest.java │ │ ├── ExeTest.json │ │ └── PlusObject.java │ ├── example.json │ ├── hi.json │ └── http.config.json ├── commons-jfinger/ │ ├── .gitignore │ ├── README.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ ├── com/ │ │ │ └── terran4j/ │ │ │ └── commons/ │ │ │ └── jfinger/ │ │ │ ├── Command.java │ │ │ ├── CommandDefine.java │ │ │ ├── CommandErrorCode.java │ │ │ ├── CommandException.java │ │ │ ├── CommandExecutor.java │ │ │ ├── CommandGroup.java │ │ │ ├── CommandGroupDefine.java │ │ │ ├── CommandGroups.java │ │ │ ├── CommandInterpreter.java │ │ │ ├── CommandOption.java │ │ │ ├── CommandOptionDefine.java │ │ │ ├── CommandOptionType.java │ │ │ ├── EnableJFinger.java │ │ │ ├── Encoding.java │ │ │ ├── JFingerConfiguration.java │ │ │ ├── OptionType.java │ │ │ ├── builtin/ │ │ │ │ ├── LogCommand.java │ │ │ │ ├── SpringCommand.java │ │ │ │ └── SystemCommand.java │ │ │ └── impl/ │ │ │ ├── BackCommandException.java │ │ │ ├── CommandInterpreterImpl.java │ │ │ ├── CommandLineApplicationListener.java │ │ │ ├── CommandLineService.java │ │ │ ├── CommandLineTask.java │ │ │ ├── DynMethodCommandExecutor.java │ │ │ └── Util.java │ │ └── error.properties │ └── test/ │ └── java/ │ ├── cmd.txt │ └── com/ │ └── terran4j/ │ └── test/ │ └── commons/ │ └── jfinger/ │ └── JFingerTestApplication.java ├── commons-reflux/ │ ├── .gitignore │ ├── README.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── terran4j/ │ │ └── commons/ │ │ └── reflux/ │ │ ├── EnableReflux.java │ │ ├── Message.java │ │ ├── OnMessage.java │ │ ├── RefluxClient.java │ │ ├── RefluxErrorCode.java │ │ ├── RefluxServer.java │ │ ├── Reply.java │ │ ├── client/ │ │ │ ├── ClientConnection.java │ │ │ ├── EnableRefluxClient.java │ │ │ ├── MessageHandler.java │ │ │ ├── RefluxClientConfiguration.java │ │ │ └── RefluxClientImpl.java │ │ └── server/ │ │ ├── ClientAppInfo.java │ │ ├── ClientConnectionInfo.java │ │ ├── EnableRefluxServer.java │ │ ├── RefluxServerConfiguration.java │ │ ├── RefluxServerEndpoint.java │ │ └── RefluxServerImpl.java │ └── test/ │ └── java/ │ └── com/ │ └── terran4j/ │ └── test/ │ └── commons/ │ └── reflux/ │ ├── Hello.java │ ├── RefluxApplication.java │ ├── SendAndReceiveTest.java │ └── TestServerEndpoint.java ├── commons-restpack/ │ ├── .gitignore │ ├── README.md │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── terran4j/ │ │ │ └── commons/ │ │ │ └── restpack/ │ │ │ ├── EnableRestPack.java │ │ │ ├── HttpResult.java │ │ │ ├── HttpResultConverter.java │ │ │ ├── Log.java │ │ │ ├── LogItem.java │ │ │ ├── PageResult.java │ │ │ ├── RestPackController.java │ │ │ ├── RestPackIgnore.java │ │ │ ├── ServletUtils.java │ │ │ ├── config/ │ │ │ │ └── RestPackConfiguration.java │ │ │ ├── impl/ │ │ │ │ ├── DateConverter.java │ │ │ │ ├── ExceptionHolder.java │ │ │ │ ├── HttpAroundHandler.java │ │ │ │ ├── HttpErrorHandler.java │ │ │ │ ├── HttpResultMapper.java │ │ │ │ ├── RestPackAdvice.java │ │ │ │ ├── RestPackAspect.java │ │ │ │ ├── RestPackConfig.java │ │ │ │ ├── RestPackMessageConverter.java │ │ │ │ └── RestPackUtils.java │ │ │ └── log/ │ │ │ ├── RestPackLogAppender.java │ │ │ └── RestPackLogAspect.java │ │ └── resources/ │ │ └── restpack/ │ │ └── freemarker.properties │ └── test/ │ ├── java/ │ │ └── com/ │ │ └── terran4j/ │ │ ├── demo/ │ │ │ └── restpack/ │ │ │ ├── DemoHttpResultConverter.java │ │ │ ├── HelloBean.java │ │ │ ├── HelloController.java │ │ │ ├── RestPackDemoApp.java │ │ │ ├── RestPackDemoAspect.java │ │ │ ├── RestPackDemoController.java │ │ │ └── RestPackErrorController.java │ │ └── test/ │ │ └── restpack/ │ │ ├── HttpResultConverterTest.java │ │ ├── HttpResultMapperTest.java │ │ ├── NoHttpResultConverterTest.java │ │ └── RestPackTest.java │ └── resources/ │ ├── application.yml │ ├── logback.xml │ ├── static/ │ │ └── restpack/ │ │ └── hello.css │ └── templates/ │ └── restpack/ │ └── hello.ftl ├── commons-test/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ └── com/ │ │ └── terran4j/ │ │ └── commons/ │ │ └── test/ │ │ ├── BaseHttpTest.java │ │ ├── BaseSpringBootTest.java │ │ ├── BaseTestExecutionListener.java │ │ ├── DatabaseInitializer.java │ │ ├── DatabaseTestConfig.java │ │ ├── ExtAssert.java │ │ ├── MockitoInitializer.java │ │ ├── RedisTestConfig.java │ │ ├── SigListener.java │ │ ├── TruncateTable.java │ │ ├── database.properties │ │ └── redis.properties │ └── test/ │ └── java/ │ └── com/ │ └── terran4j/ │ └── commons/ │ └── test/ │ ├── HelloService.java │ ├── MockitoTest.java │ └── TestApp.java ├── commons-util/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ ├── main/ │ │ └── java/ │ │ ├── com/ │ │ │ └── terran4j/ │ │ │ └── commons/ │ │ │ └── util/ │ │ │ ├── Arrays.java │ │ │ ├── Beans.java │ │ │ ├── Checker.java │ │ │ ├── Classes.java │ │ │ ├── DateTimes.java │ │ │ ├── Encoding.java │ │ │ ├── Enums.java │ │ │ ├── Expressions.java │ │ │ ├── Files.java │ │ │ ├── IOUtils.java │ │ │ ├── IdWorker.java │ │ │ ├── Jsons.java │ │ │ ├── Maths.java │ │ │ ├── Objects.java │ │ │ ├── Randoms.java │ │ │ ├── Server.java │ │ │ ├── Strings.java │ │ │ ├── config/ │ │ │ │ ├── ConfigElement.java │ │ │ │ ├── JsonConfigElement.java │ │ │ │ └── XmlConfigElement.java │ │ │ ├── error/ │ │ │ │ ├── AuthorizedException.java │ │ │ │ ├── BusinessException.java │ │ │ │ ├── CommonErrorCode.java │ │ │ │ ├── ErrorCode.java │ │ │ │ ├── ErrorCodes.java │ │ │ │ ├── ErrorMessage.java │ │ │ │ ├── ErrorReport.java │ │ │ │ ├── ResourceErrorCode.java │ │ │ │ ├── SimpleErrorCode.java │ │ │ │ └── null.properties │ │ │ ├── reflect/ │ │ │ │ └── InterfaceFilter.java │ │ │ ├── security/ │ │ │ │ ├── AsymmetricKeys.java │ │ │ │ ├── MD5Util.java │ │ │ │ └── Security.java │ │ │ ├── task/ │ │ │ │ └── LoopExecuteTask.java │ │ │ ├── value/ │ │ │ │ ├── JsonValueSource.java │ │ │ │ ├── KeyedList.java │ │ │ │ ├── MapValueSource.java │ │ │ │ ├── ResourceBundlesProperties.java │ │ │ │ ├── RichProperties.java │ │ │ │ ├── ValueSource.java │ │ │ │ ├── ValueSources.java │ │ │ │ └── ValueWrapper.java │ │ │ └── web/ │ │ │ ├── Cookies.java │ │ │ └── IPAddresses.java │ │ └── error.properties │ └── test/ │ └── java/ │ ├── com/ │ │ └── terran4j/ │ │ └── common/ │ │ └── util/ │ │ ├── ClassesTest.java │ │ ├── DateTimesTest.java │ │ ├── EnumsTest.java │ │ ├── ExpressionsTest.java │ │ ├── JsonConfigElementTest.java │ │ ├── JsonConfigElementTest.json │ │ ├── JsonsTest.java │ │ ├── LoopExecuteTaskTest.java │ │ ├── SecurityTest.java │ │ ├── StringsTest.java │ │ ├── ValueTest.java │ │ └── error/ │ │ ├── BusinessExceptionTest.java │ │ ├── MockErrorCode.java │ │ ├── MockException.properties │ │ └── testGetReport.txt │ └── error.properties ├── commons-website/ │ ├── .gitignore │ ├── pom.xml │ └── src/ │ ├── main/ │ │ ├── java/ │ │ │ └── com/ │ │ │ └── terran4j/ │ │ │ └── commons/ │ │ │ └── website/ │ │ │ ├── config/ │ │ │ │ ├── Readme.java │ │ │ │ └── WebsiteConfiguration.java │ │ │ └── controller/ │ │ │ └── WelcomeController.java │ │ └── resources/ │ │ └── static/ │ │ └── website/ │ │ ├── flexible-lite/ │ │ │ └── flexible-lite-1.0.js │ │ ├── less/ │ │ │ └── less-1.7.0.js │ │ └── vue/ │ │ └── vue-2.5.10.js │ └── test/ │ └── java/ │ └── com/ │ └── terran4j/ │ └── test/ │ └── website/ │ ├── HelloController.java │ └── MainApp.java ├── pom.xml └── version.md