├── .gitignore
├── LICENSE
├── apple-auto-acquisition
├── apple-auto-acquisition-socket
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ ├── assembly
│ │ ├── assembly.xml
│ │ ├── bin
│ │ │ ├── dump.sh
│ │ │ ├── restart.sh
│ │ │ ├── server.sh
│ │ │ ├── start.sh
│ │ │ └── stop.sh
│ │ └── conf
│ │ │ ├── log4j.properties
│ │ │ └── system.properties
│ │ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── acquisition
│ │ │ └── socket
│ │ │ ├── admin
│ │ │ └── action
│ │ │ │ └── SessionAction.java
│ │ │ ├── api
│ │ │ └── action
│ │ │ │ └── MessageAction.java
│ │ │ ├── handler
│ │ │ ├── JourneyHandler.java
│ │ │ └── LocationHandler.java
│ │ │ └── session
│ │ │ ├── ClusterSessionManager.java
│ │ │ └── HazelcastInstanceFactoryBean.java
│ │ ├── resources
│ │ ├── config
│ │ │ ├── spring-cim.xml
│ │ │ └── spring-jms.xml
│ │ ├── log4j.properties
│ │ ├── struts.xml
│ │ └── system.properties
│ │ └── webapp
│ │ ├── META-INF
│ │ └── MANIFEST.MF
│ │ ├── WEB-INF
│ │ └── web.xml
│ │ ├── console
│ │ ├── header.jsp
│ │ ├── index.jsp
│ │ ├── nav.jsp
│ │ └── session
│ │ │ └── manage.jsp
│ │ ├── index.jsp
│ │ └── resource
│ │ ├── bootstrap-3.3.6-dist
│ │ ├── css
│ │ │ └── bootstrap.min.css
│ │ ├── fonts
│ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ ├── glyphicons-halflings-regular.svg
│ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ └── glyphicons-halflings-regular.woff2
│ │ └── js
│ │ │ ├── bootstrap.min.js
│ │ │ └── npm.js
│ │ ├── css
│ │ ├── base-ui.css
│ │ ├── dialog.css
│ │ ├── login.css
│ │ ├── main-layout.css
│ │ ├── table.css
│ │ └── webbase.css
│ │ ├── img
│ │ ├── icon.png
│ │ ├── icon_loading_small.gif
│ │ └── pattern.png
│ │ └── js
│ │ ├── framework.js
│ │ └── jquery-2.2.3.min.js
├── apple-auto-acquisition-vvsmart
│ ├── pom.xml
│ └── src
│ │ ├── main
│ │ ├── assembly
│ │ │ ├── assembly.xml
│ │ │ ├── bin
│ │ │ │ ├── dump.sh
│ │ │ │ ├── restart.sh
│ │ │ │ ├── server.sh
│ │ │ │ ├── start.sh
│ │ │ │ └── stop.sh
│ │ │ └── conf
│ │ │ │ ├── log4j.properties
│ │ │ │ └── system.properties
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── acquisition
│ │ │ │ └── vvsmart
│ │ │ │ ├── consumer
│ │ │ │ └── LocationMessageConsumer.java
│ │ │ │ ├── model
│ │ │ │ ├── JsonResult.java
│ │ │ │ └── JsonTrack.java
│ │ │ │ └── utils
│ │ │ │ ├── DateFormatUtil.java
│ │ │ │ └── LocationConversion.java
│ │ └── resoureces
│ │ │ └── config
│ │ │ ├── spring-context.xml
│ │ │ ├── spring-jms.xml
│ │ │ └── spring-websocket.xml
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── acquisition
│ │ │ └── vvsmart
│ │ │ └── AppTest.java
│ │ └── resources
│ │ ├── log4j.properties
│ │ └── system.properties
└── pom.xml
├── apple-auto-bean
├── apple-auto-bean-core
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── appleframework
│ │ └── auto
│ │ └── bean
│ │ └── core
│ │ └── Protobufable.java
├── apple-auto-bean-fence
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── appleframework
│ │ └── auto
│ │ ├── bean
│ │ └── fence
│ │ │ ├── BaseFence.java
│ │ │ ├── CircleFence.java
│ │ │ ├── Fence.java
│ │ │ ├── FenceResult.java
│ │ │ ├── Point.java
│ │ │ ├── PolygonFence.java
│ │ │ ├── RectangleFence.java
│ │ │ └── SyncOperate.java
│ │ └── entity
│ │ └── fence
│ │ ├── FenceEntity.java
│ │ └── FenceEntityWithBLOBs.java
├── apple-auto-bean-location
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── appleframework
│ │ └── auto
│ │ └── bean
│ │ └── location
│ │ ├── Journey.java
│ │ └── Location.java
└── pom.xml
├── apple-auto-calculate
├── apple-auto-calculate-fence
│ ├── apple-auto-calculate-fence-local
│ │ ├── pom.xml
│ │ └── src
│ │ │ ├── main
│ │ │ ├── assembly
│ │ │ │ ├── assembly.xml
│ │ │ │ ├── bin
│ │ │ │ │ ├── dump.sh
│ │ │ │ │ ├── restart.sh
│ │ │ │ │ ├── server.sh
│ │ │ │ │ ├── start.sh
│ │ │ │ │ └── stop.sh
│ │ │ │ └── conf
│ │ │ │ │ ├── log4j.properties
│ │ │ │ │ └── system.properties
│ │ │ ├── java
│ │ │ │ └── com
│ │ │ │ │ └── appleframework
│ │ │ │ │ └── auto
│ │ │ │ │ └── calculate
│ │ │ │ │ └── fence
│ │ │ │ │ ├── consumer
│ │ │ │ │ ├── FenceConsumer.java
│ │ │ │ │ └── LocationConsumer.java
│ │ │ │ │ ├── model
│ │ │ │ │ ├── FenceEvent.java
│ │ │ │ │ └── FenceLocation.java
│ │ │ │ │ └── service
│ │ │ │ │ ├── FenceInfoService.java
│ │ │ │ │ └── impl
│ │ │ │ │ ├── FenceCacheService.java
│ │ │ │ │ ├── FenceCalculateService.java
│ │ │ │ │ ├── FenceInfoServiceImpl.java
│ │ │ │ │ ├── FenceInoutService.java
│ │ │ │ │ ├── FenceLocationService.java
│ │ │ │ │ └── FenceNotifyService.java
│ │ │ └── resources
│ │ │ │ └── config
│ │ │ │ ├── spring-cache.xml
│ │ │ │ ├── spring-event.xml
│ │ │ │ └── spring-jms.xml
│ │ │ └── test
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── calculate
│ │ │ │ └── fence
│ │ │ │ └── AppTest.java
│ │ │ └── resources
│ │ │ ├── log4j.properties
│ │ │ └── system.properties
│ ├── apple-auto-calculate-fence-storm
│ │ ├── pom.xml
│ │ └── src
│ │ │ └── main
│ │ │ ├── assembly
│ │ │ ├── assembly.xml
│ │ │ ├── bin
│ │ │ │ ├── dump.sh
│ │ │ │ ├── restart.sh
│ │ │ │ ├── server.sh
│ │ │ │ ├── start.sh
│ │ │ │ └── stop.sh
│ │ │ └── conf
│ │ │ │ ├── log4j.properties
│ │ │ │ └── system.properties
│ │ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── fence
│ │ │ │ └── calculate
│ │ │ │ ├── BaseFenceCalculateBolt.java
│ │ │ │ ├── BaseFenceCalculateRTreeBolt.java
│ │ │ │ ├── BaseFenceInoutBolt.java
│ │ │ │ ├── BaseFenceNotifyBolt.java
│ │ │ │ ├── FenceCalculateBolt.java
│ │ │ │ ├── FenceInoutBolt.java
│ │ │ │ ├── FenceNotifyBolt.java
│ │ │ │ ├── KafkaSpout.java
│ │ │ │ ├── KafkaTopology.java
│ │ │ │ ├── config
│ │ │ │ └── StormConfigurer.java
│ │ │ │ ├── factory
│ │ │ │ └── RedisFactory.java
│ │ │ │ ├── model
│ │ │ │ └── FenceLocation.java
│ │ │ │ └── utils
│ │ │ │ ├── ByteUtils.java
│ │ │ │ └── Constants.java
│ │ │ └── resources
│ │ │ ├── log4j.properties
│ │ │ └── system.properties
│ └── pom.xml
├── apple-auto-calculate-notify
│ ├── pom.xml
│ └── src
│ │ ├── main
│ │ ├── assembly
│ │ │ ├── assembly.xml
│ │ │ ├── bin
│ │ │ │ ├── dump.sh
│ │ │ │ ├── restart.sh
│ │ │ │ ├── server.sh
│ │ │ │ ├── start.sh
│ │ │ │ └── stop.sh
│ │ │ └── conf
│ │ │ │ ├── log4j.properties
│ │ │ │ └── system.properties
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── calculate
│ │ │ │ └── notify
│ │ │ │ ├── consumer
│ │ │ │ └── FenceResultConsumer.java
│ │ │ │ └── service
│ │ │ │ └── impl
│ │ │ │ ├── FenceCacheService.java
│ │ │ │ └── NotifyCimService.java
│ │ └── resources
│ │ │ └── config
│ │ │ ├── spring-cache.xml
│ │ │ └── spring-jms.xml
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── calculate
│ │ │ └── notify
│ │ │ └── AppTest.java
│ │ └── resources
│ │ ├── log4j.properties
│ │ └── system.properties
└── pom.xml
├── apple-auto-open-platform
├── pom.xml
└── src
│ ├── main
│ ├── assembly
│ │ ├── assembly.xml
│ │ ├── bin
│ │ │ ├── dump.sh
│ │ │ ├── restart.sh
│ │ │ ├── server.sh
│ │ │ ├── start.sh
│ │ │ └── stop.sh
│ │ ├── conf
│ │ │ ├── log4j.properties
│ │ │ └── system.properties
│ │ └── lib
│ │ │ ├── activation.jar
│ │ │ ├── jaxb-api.jar
│ │ │ ├── jaxb1-impl.jar
│ │ │ └── jsr173_1.0_api.jar
│ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── open
│ │ │ └── platform
│ │ │ ├── controller
│ │ │ ├── FenceInfoController.java
│ │ │ └── LocationController.java
│ │ │ ├── manager
│ │ │ ├── SampleAppSecretManager.java
│ │ │ └── SampleSessionManager.java
│ │ │ ├── request
│ │ │ ├── CircleFenceCreateRequest.java
│ │ │ ├── LocationListRequest.java
│ │ │ └── LocationSearchRequest.java
│ │ │ └── response
│ │ │ ├── AccessTokenResponse.java
│ │ │ ├── ErrorCodeResponse.java
│ │ │ ├── ErrorResponse.java
│ │ │ ├── IsSuccessResponse.java
│ │ │ ├── LocationSearchResponse.java
│ │ │ ├── ServiceExceptionResponse.java
│ │ │ ├── ServiceUnavailableErrorResponse.java
│ │ │ └── TokenErrorResponse.java
│ ├── resources
│ │ ├── config
│ │ │ ├── applicationContext-context.xml
│ │ │ ├── applicationContext-dubbo.xml
│ │ │ └── applicationContext-rop.xml
│ │ ├── i18n
│ │ │ └── rop
│ │ │ │ └── open-platform_zh_CN.properties
│ │ ├── log4j.properties
│ │ └── system.properties
│ └── webapp
│ │ ├── WEB-INF
│ │ └── web.xml
│ │ ├── index.jsp
│ │ └── location_search.jsp
│ └── test
│ └── resources
│ ├── log4j.properties
│ └── system.properties
├── apple-auto-partner-platform
├── pom.xml
└── src
│ ├── main
│ ├── assembly
│ │ ├── assembly.xml
│ │ ├── bin
│ │ │ ├── dump.sh
│ │ │ ├── restart.sh
│ │ │ ├── server.sh
│ │ │ ├── start.sh
│ │ │ └── stop.sh
│ │ └── conf
│ │ │ ├── log4j.properties
│ │ │ └── system.properties
│ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── partner
│ │ │ └── platform
│ │ │ └── web
│ │ │ ├── FenceController.java
│ │ │ ├── JouneryController.java
│ │ │ └── LocationController.java
│ ├── resources
│ │ ├── config
│ │ │ ├── service
│ │ │ │ ├── applicationContext-context.xml
│ │ │ │ ├── applicationContext-dubbo.xml
│ │ │ │ └── applicationContext-mvc.xml
│ │ │ └── web
│ │ │ │ ├── resources.xml
│ │ │ │ └── spring-servlet.xml
│ │ ├── log4j.properties
│ │ └── system.properties
│ └── webapp
│ │ ├── WEB-INF
│ │ ├── content
│ │ │ ├── commons
│ │ │ │ ├── error.ftl
│ │ │ │ ├── error_ajax.ftl
│ │ │ │ ├── page_bottom.ftl
│ │ │ │ ├── page_css.ftl
│ │ │ │ ├── page_header.ftl
│ │ │ │ ├── page_js.ftl
│ │ │ │ ├── page_modal.ftl
│ │ │ │ ├── pager.ftl
│ │ │ │ ├── success.ftl
│ │ │ │ └── success_ajax.ftl
│ │ │ ├── fence
│ │ │ │ ├── add.ftl
│ │ │ │ ├── edit.ftl
│ │ │ │ ├── list.ftl
│ │ │ │ ├── map.ftl
│ │ │ │ └── show.ftl
│ │ │ ├── journey
│ │ │ │ └── list.ftl
│ │ │ └── location
│ │ │ │ └── show.ftl
│ │ └── web.xml
│ │ └── static
│ │ ├── error
│ │ └── 404.html
│ │ ├── flat_ui
│ │ ├── css
│ │ │ ├── flat-ui.css
│ │ │ ├── flat-ui.css.map
│ │ │ ├── flat-ui.min.css
│ │ │ └── vendor
│ │ │ │ └── bootstrap.min.css
│ │ ├── fonts
│ │ │ ├── glyphicons
│ │ │ │ ├── flat-ui-icons-regular.eot
│ │ │ │ ├── flat-ui-icons-regular.svg
│ │ │ │ ├── flat-ui-icons-regular.ttf
│ │ │ │ ├── flat-ui-icons-regular.woff
│ │ │ │ └── selection.json
│ │ │ └── lato
│ │ │ │ ├── lato-black.eot
│ │ │ │ ├── lato-black.svg
│ │ │ │ ├── lato-black.ttf
│ │ │ │ ├── lato-black.woff
│ │ │ │ ├── lato-bold.eot
│ │ │ │ ├── lato-bold.svg
│ │ │ │ ├── lato-bold.ttf
│ │ │ │ ├── lato-bold.woff
│ │ │ │ ├── lato-bolditalic.eot
│ │ │ │ ├── lato-bolditalic.svg
│ │ │ │ ├── lato-bolditalic.ttf
│ │ │ │ ├── lato-bolditalic.woff
│ │ │ │ ├── lato-italic.eot
│ │ │ │ ├── lato-italic.svg
│ │ │ │ ├── lato-italic.ttf
│ │ │ │ ├── lato-italic.woff
│ │ │ │ ├── lato-light.eot
│ │ │ │ ├── lato-light.svg
│ │ │ │ ├── lato-light.ttf
│ │ │ │ ├── lato-light.woff
│ │ │ │ ├── lato-regular.eot
│ │ │ │ ├── lato-regular.svg
│ │ │ │ ├── lato-regular.ttf
│ │ │ │ └── lato-regular.woff
│ │ ├── img
│ │ │ ├── favicon.ico
│ │ │ ├── icons
│ │ │ │ ├── png
│ │ │ │ │ ├── Book.png
│ │ │ │ │ ├── Calendar.png
│ │ │ │ │ ├── Chat.png
│ │ │ │ │ ├── Clipboard.png
│ │ │ │ │ ├── Compas.png
│ │ │ │ │ ├── Gift-Box.png
│ │ │ │ │ ├── Infinity-Loop.png
│ │ │ │ │ ├── Mail.png
│ │ │ │ │ ├── Map.png
│ │ │ │ │ ├── Pensils.png
│ │ │ │ │ ├── Pocket.png
│ │ │ │ │ ├── Retina-Ready.png
│ │ │ │ │ ├── Toilet-Paper.png
│ │ │ │ │ └── Watches.png
│ │ │ │ └── svg
│ │ │ │ │ ├── book.svg
│ │ │ │ │ ├── calendar.svg
│ │ │ │ │ ├── chat.svg
│ │ │ │ │ ├── clipboard.svg
│ │ │ │ │ ├── clocks.svg
│ │ │ │ │ ├── compas.svg
│ │ │ │ │ ├── gift-box.svg
│ │ │ │ │ ├── loop.svg
│ │ │ │ │ ├── mail.svg
│ │ │ │ │ ├── map.svg
│ │ │ │ │ ├── paper-bag.svg
│ │ │ │ │ ├── pencils.svg
│ │ │ │ │ ├── retina.svg
│ │ │ │ │ ├── ribbon.svg
│ │ │ │ │ └── toilet-paper.svg
│ │ │ ├── login
│ │ │ │ ├── icon.png
│ │ │ │ ├── imac-2x.png
│ │ │ │ └── imac.png
│ │ │ └── tile
│ │ │ │ ├── ribbon-2x.png
│ │ │ │ └── ribbon.png
│ │ └── js
│ │ │ ├── flat-ui.js
│ │ │ ├── flat-ui.min.js
│ │ │ └── vendor
│ │ │ ├── html5shiv.js
│ │ │ ├── jquery.min.js
│ │ │ ├── jquery.min.map
│ │ │ ├── respond.min.js
│ │ │ ├── video-js.swf
│ │ │ └── video.js
│ │ ├── flat_ui_icon.html
│ │ ├── images
│ │ ├── loading_64.gif
│ │ ├── qiuchang8_qrcode.jpg
│ │ └── wechat.jpg
│ │ └── js
│ │ ├── echarts
│ │ ├── chart
│ │ │ ├── bar.js
│ │ │ ├── chord.js
│ │ │ ├── eventRiver.js
│ │ │ ├── force.js
│ │ │ ├── funnel.js
│ │ │ ├── gauge.js
│ │ │ ├── k.js
│ │ │ ├── line.js
│ │ │ ├── pie.js
│ │ │ ├── radar.js
│ │ │ └── scatter.js
│ │ ├── echarts.js
│ │ └── version
│ │ └── heart_beat.js
│ └── test
│ └── java
│ └── com
│ └── appleframework
│ └── auto
│ └── partner
│ └── platform
│ └── AppTest.java
├── apple-auto-service
├── apple-auto-service-common
│ ├── pom.xml
│ └── src
│ │ └── main
│ │ └── java
│ │ └── com
│ │ └── appleframework
│ │ └── auto
│ │ ├── model
│ │ └── fence
│ │ │ └── FenceSo.java
│ │ └── service
│ │ ├── fence
│ │ ├── FenceEntityService.java
│ │ └── FenceInfoService.java
│ │ ├── journey
│ │ └── JourneySearchService.java
│ │ └── location
│ │ ├── LocationNewestService.java
│ │ └── LocationSearchService.java
├── apple-auto-service-provider
│ ├── pom.xml
│ └── src
│ │ ├── main
│ │ ├── assembly
│ │ │ ├── assembly.xml
│ │ │ ├── bin
│ │ │ │ ├── dump.sh
│ │ │ │ ├── restart.sh
│ │ │ │ ├── server.sh
│ │ │ │ ├── start.sh
│ │ │ │ └── stop.sh
│ │ │ └── conf
│ │ │ │ ├── log4j.properties
│ │ │ │ └── system.properties
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── service
│ │ │ │ ├── dao
│ │ │ │ └── FenceEntityDao.java
│ │ │ │ ├── fence
│ │ │ │ ├── FenceCacheService.java
│ │ │ │ ├── FenceInfoCacheInitService.java
│ │ │ │ └── impl
│ │ │ │ │ ├── FenceCacheServiceImpl.java
│ │ │ │ │ ├── FenceEntityServiceImpl.java
│ │ │ │ │ └── FenceInfoServiceImpl.java
│ │ │ │ ├── interceptor
│ │ │ │ └── FenceEntityInterceptor.java
│ │ │ │ ├── journey
│ │ │ │ ├── JourneySearchServiceImpl.java
│ │ │ │ └── key
│ │ │ │ │ └── JourneyRowkey.java
│ │ │ │ ├── location
│ │ │ │ ├── LocationNewestServiceImpl.java
│ │ │ │ ├── LocationSearchServiceImpl.java
│ │ │ │ └── key
│ │ │ │ │ └── LocationRowkey.java
│ │ │ │ ├── mapper
│ │ │ │ ├── FenceEntityMapper.java
│ │ │ │ └── FenceExtendMapper.java
│ │ │ │ └── utils
│ │ │ │ ├── Constants.java
│ │ │ │ ├── ListUtil.java
│ │ │ │ ├── PoiUtils.java
│ │ │ │ └── StringUtils.java
│ │ └── resources
│ │ │ ├── config
│ │ │ ├── spring-cache.xml
│ │ │ ├── spring-context.xml
│ │ │ ├── spring-datasource.xml
│ │ │ ├── spring-dubbo.xml
│ │ │ └── spring-hbase.xml
│ │ │ ├── hbase
│ │ │ ├── hbase-journey.xml
│ │ │ └── hbase-location.xml
│ │ │ └── mapper
│ │ │ ├── FenceEntityMapper.xml
│ │ │ └── FenceExtendMapper.xml
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── service
│ │ │ ├── AppTest.java
│ │ │ ├── fence
│ │ │ ├── FenceCalculateServiceTest.java
│ │ │ └── FenceEntityServiceTest.java
│ │ │ ├── journey
│ │ │ └── JourneySearchServiceTest.java
│ │ │ └── location
│ │ │ ├── LocationNewestServiceTest.java
│ │ │ └── LocationSearchServiceTest.java
│ │ └── resources
│ │ ├── log4j.properties
│ │ └── system.properties
└── pom.xml
├── apple-auto-storager
├── apple-auto-storager-journey
│ ├── pom.xml
│ └── src
│ │ ├── main
│ │ ├── assembly
│ │ │ ├── assembly.xml
│ │ │ ├── bin
│ │ │ │ ├── dump.sh
│ │ │ │ ├── restart.sh
│ │ │ │ ├── server.sh
│ │ │ │ ├── start.sh
│ │ │ │ └── stop.sh
│ │ │ └── conf
│ │ │ │ ├── log4j.properties
│ │ │ │ └── system.properties
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── storager
│ │ │ │ └── journey
│ │ │ │ ├── consumer
│ │ │ │ └── JourneyConsumer.java
│ │ │ │ ├── key
│ │ │ │ └── JourneyRowkey.java
│ │ │ │ ├── service
│ │ │ │ ├── HbaseJourneyService.java
│ │ │ │ └── impl
│ │ │ │ │ └── HbaseJourneyServiceImpl.java
│ │ │ │ └── utils
│ │ │ │ └── StringUtils.java
│ │ └── resources
│ │ │ ├── config
│ │ │ ├── spring-hbase.xml
│ │ │ └── spring-jms.xml
│ │ │ └── hbase
│ │ │ └── hbase-journey.xml
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── storager
│ │ │ └── Journey
│ │ │ ├── AppTest.java
│ │ │ └── HbaseJourneyServiceTest.java
│ │ └── resources
│ │ ├── config
│ │ └── spring-producer.xml
│ │ ├── log4j.properties
│ │ └── system.properties
├── apple-auto-storager-location
│ ├── pom.xml
│ └── src
│ │ ├── main
│ │ ├── assembly
│ │ │ ├── assembly.xml
│ │ │ ├── bin
│ │ │ │ ├── dump.sh
│ │ │ │ ├── restart.sh
│ │ │ │ ├── server.sh
│ │ │ │ ├── start.sh
│ │ │ │ └── stop.sh
│ │ │ └── conf
│ │ │ │ ├── log4j.properties
│ │ │ │ └── system.properties
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── appleframework
│ │ │ │ └── auto
│ │ │ │ └── storager
│ │ │ │ └── location
│ │ │ │ ├── consumer
│ │ │ │ └── LocationConsumer.java
│ │ │ │ ├── key
│ │ │ │ └── LocationRowkey.java
│ │ │ │ ├── service
│ │ │ │ ├── HbaseLocationService.java
│ │ │ │ ├── NewestLocationService.java
│ │ │ │ └── impl
│ │ │ │ │ ├── HbaseLocationServiceImpl.java
│ │ │ │ │ └── NewestLocationServiceImpl.java
│ │ │ │ └── utils
│ │ │ │ └── StringUtils.java
│ │ └── resources
│ │ │ ├── config
│ │ │ ├── spring-cache.xml
│ │ │ ├── spring-hbase.xml
│ │ │ └── spring-jms.xml
│ │ │ └── hbase
│ │ │ └── hbase-location.xml
│ │ └── test
│ │ ├── java
│ │ └── com
│ │ │ └── appleframework
│ │ │ └── auto
│ │ │ └── storager
│ │ │ └── location
│ │ │ ├── AppTest.java
│ │ │ ├── HbaseLocationServiceTest.java
│ │ │ └── PlaybackLocationServiceTest.java
│ │ └── resources
│ │ ├── config
│ │ └── spring-producer.xml
│ │ ├── log4j.properties
│ │ └── system.properties
└── pom.xml
└── pom.xml
/.gitignore:
--------------------------------------------------------------------------------
1 | *.class
2 | *.classpath
3 | *.project
4 | target
5 | /target
6 | /target/
7 | .settings
8 | /.settings
9 | /.settings/
10 | */logs/*
11 | *.log
12 | */*/*/logs
13 | */*/*/dependency-reduced-pom.xml
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/assembly/assembly.xml:
--------------------------------------------------------------------------------
1 |
2 | assembly
3 |
4 | tar.gz
5 |
6 | true
7 |
8 |
9 |
10 | src/main/assembly/bin/
11 | bin
12 | 0755
13 |
14 |
15 | src/main/assembly/conf/
16 | conf
17 |
18 |
19 | src/main/webapp
20 | webapp
21 | 0644
22 |
23 |
24 |
25 |
26 | lib
27 |
28 |
29 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/assembly/bin/restart.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | ENV=$1
3 | if [ -z "$ENV" ]; then
4 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
5 | echo "app exit"
6 | exit 1
7 | fi
8 | cd `dirname $0`
9 | ./stop.sh
10 | ./start.sh $ENV $2
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/assembly/bin/server.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd `dirname $0`
3 | if [ "$1" = "start" ]; then
4 | ENV=$2
5 | if [ -z "$ENV" ]; then
6 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
7 | echo "app exit"
8 | exit 1
9 | fi
10 | ./start.sh $ENV
11 | else
12 | if [ "$1" = "stop" ]; then
13 | ./stop.sh
14 | else
15 | if [ "$1" = "debug" ]; then
16 | ENV=$2
17 | if [ -z "$ENV" ]; then
18 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
19 | echo "app exit"
20 | exit 1
21 | fi
22 | ./start.sh $ENV debug
23 | else
24 | if [ "$1" = "restart" ]; then
25 | ENV=$2
26 | if [ -z "$ENV" ]; then
27 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
28 | echo "app exit"
29 | exit 1
30 | fi
31 | ./restart.sh $ENV
32 | else
33 | if [ "$1" = "dump" ]; then
34 | ./dump.sh
35 | else
36 | echo "ERROR: Please input argument: start or stop or debug or restart or dump"
37 | exit 1
38 | fi
39 | fi
40 | fi
41 | fi
42 | fi
43 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/assembly/bin/stop.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd `dirname $0`
3 | BIN_DIR=`pwd`
4 | cd ..
5 | DEPLOY_DIR=`pwd`
6 | CONF_DIR=$DEPLOY_DIR/conf
7 |
8 | SERVER_NAME=`sed '/application.name/!d;s/.*=//' conf/system.properties | tr -d '\r'`
9 |
10 | if [ -z "$SERVER_NAME" ]; then
11 | SERVER_NAME=`hostname`
12 | fi
13 |
14 | PIDS=`ps -ef | grep java | grep "$CONF_DIR" |awk '{print $2}'`
15 | if [ -z "$PIDS" ]; then
16 | echo "ERROR: The $SERVER_NAME does not started!"
17 | exit 1
18 | fi
19 |
20 | if [ "$1" != "skip" ]; then
21 | $BIN_DIR/dump.sh
22 | fi
23 |
24 | echo -e "Stopping the $SERVER_NAME ...\c"
25 | for PID in $PIDS ; do
26 | kill $PID > /dev/null 2>&1
27 | done
28 |
29 | COUNT=0
30 | while [ $COUNT -lt 1 ]; do
31 | echo -e ".\c"
32 | sleep 1
33 | COUNT=1
34 | for PID in $PIDS ; do
35 | PID_EXIST=`ps -f -p $PID | grep java`
36 | if [ -n "$PID_EXIST" ]; then
37 | COUNT=0
38 | break
39 | fi
40 | done
41 | done
42 |
43 | echo "OK!"
44 | echo "PID: $PIDS"
45 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/assembly/conf/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=info,out,logToFile
2 |
3 | #appender
4 | log4j.appender.out=org.apache.log4j.ConsoleAppender
5 | log4j.appender.out.layout=org.apache.log4j.PatternLayout
6 | log4j.appender.out.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-socket] [%C->%M(%L)] %m%n
7 |
8 | log4j.appender.logToFile=org.apache.log4j.DailyRollingFileAppender
9 | log4j.appender.logToFile.File=/work/logs/apple-auto/acquisition-socket/localhost.log
10 | log4j.appender.logToFile.DatePattern='.'yyyy-MM-dd
11 | log4j.appender.logToFile.layout=org.apache.log4j.PatternLayout
12 | log4j.appender.logToFile.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-socket] [%C->%M(%L)] %m%n
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/assembly/conf/system.properties:
--------------------------------------------------------------------------------
1 | application.name=apple-auto-acquisition-socket
2 | application.version=2.0.0
3 |
4 | jmx.port=2001
5 | web.port=8001
6 | web.context=/
7 |
8 | service.port=9001
9 |
10 | #test dev beta realse
11 | deploy.dataId=acquisition-socket
12 | deploy.group=apple-auto
13 | deploy.env=dev
14 |
15 | hazelcast.members=127.0.0.1
16 |
17 | metadata.broker.list=118.178.252.65:9092
18 | producer.topic.location=location_v1
19 | producer.topic.journey=journey_v1
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/resources/config/spring-jms.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 | kafka.serializer.DefaultEncoder
12 | ${metadata.broker.list}
13 | async
14 | 1
15 | com.appleframework.jms.kafka.partitions.SimplePartitioner
16 | kafka.serializer.StringEncoder
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=info,out,logToFile
2 |
3 | #appender
4 | log4j.appender.out=org.apache.log4j.ConsoleAppender
5 | log4j.appender.out.layout=org.apache.log4j.PatternLayout
6 | log4j.appender.out.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-socket] [%C->%M(%L)] %m%n
7 |
8 | log4j.appender.logToFile=org.apache.log4j.DailyRollingFileAppender
9 | log4j.appender.logToFile.File=/work/logs/apple-auto/acquisition-socket/localhost.log
10 | log4j.appender.logToFile.DatePattern='.'yyyy-MM-dd
11 | log4j.appender.logToFile.layout=org.apache.log4j.PatternLayout
12 | log4j.appender.logToFile.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-socket] [%C->%M(%L)] %m%n
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/resources/struts.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | /console/session/manage.jsp
15 |
16 |
17 |
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/resources/system.properties:
--------------------------------------------------------------------------------
1 | application.name=apple-auto-acquisition-socket
2 | application.version=2.0.0
3 |
4 | jmx.port=2001
5 | web.port=8001
6 | web.context=/
7 |
8 | service.port=9001
9 |
10 | #test dev beta realse
11 | deploy.dataId=acquisition-socket
12 | deploy.group=apple-auto
13 | deploy.env=dev
14 |
15 | hazelcast.members=127.0.0.1
16 |
17 | metadata.broker.list=118.178.252.65:9092
18 | producer.topic.location=location_v1
19 | producer.topic.journey=journey_v1
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/META-INF/MANIFEST.MF:
--------------------------------------------------------------------------------
1 | Manifest-Version: 1.0
2 | Class-Path:
3 |
4 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/WEB-INF/web.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | cim-server
6 |
7 |
8 |
9 | contextConfigLocation
10 | classpath*:config/spring-*.xml
11 |
12 |
13 |
14 | org.springframework.web.context.ContextLoaderListener
15 |
16 |
17 |
18 | struts2
19 | org.apache.struts2.dispatcher.FilterDispatcher
20 |
21 |
22 | struts2
23 | *.action
24 |
25 |
26 | struts2
27 | *.do
28 |
29 |
30 | struts2
31 | *.api
32 |
33 |
34 | -1
35 |
36 |
37 |
38 |
39 | /console/index.jsp
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/console/index.jsp:
--------------------------------------------------------------------------------
1 | <%@ page language="java" pageEncoding="utf-8"%>
2 | <%
3 | response.sendRedirect("/admin/session_list.action");
4 | %>
5 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/console/nav.jsp:
--------------------------------------------------------------------------------
1 |
2 | <%
3 | String navBasePath = request.getScheme() + "://"
4 | + request.getServerName() + ":" + request.getServerPort()
5 | + request.getContextPath();
6 | %>
7 | <%@ page language="java" pageEncoding="UTF-8"%>
8 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/index.jsp:
--------------------------------------------------------------------------------
1 | <%@ page language="java" pageEncoding="utf-8"%>
2 | Hellow CIM!
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/bootstrap-3.3.6-dist/js/npm.js:
--------------------------------------------------------------------------------
1 | // This file is autogenerated via the `commonjs` Grunt task. You can require() this file in a CommonJS environment.
2 | require('../../js/transition.js')
3 | require('../../js/alert.js')
4 | require('../../js/button.js')
5 | require('../../js/carousel.js')
6 | require('../../js/collapse.js')
7 | require('../../js/dropdown.js')
8 | require('../../js/modal.js')
9 | require('../../js/tooltip.js')
10 | require('../../js/popover.js')
11 | require('../../js/scrollspy.js')
12 | require('../../js/tab.js')
13 | require('../../js/affix.js')
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/css/table.css:
--------------------------------------------------------------------------------
1 | @CHARSET "UTF-8";
2 | /*---------------------------------toppage------------------------------*/
3 |
4 |
5 | /*---------------------------------table------------------------------*/
6 | .utable {
7 | border-collapse: collapse;
8 | border-spacing: 0;
9 | text-align: center;
10 | font-size: 12px;
11 | background: #ffffff;
12 | word-break:break-all;
13 | margin-right: 10px;
14 | }
15 | .utable tr th {
16 | background-color: #F3F3F3;
17 | border-right: solid 1px #D4D4D4;
18 | border-left: solid 1px #D4D4D4;
19 | border-bottom: solid 1px #D4D4D4;
20 | color: #463E5E;
21 | line-height: 40px;
22 | font-size: 14px;
23 | text-align: center;
24 | }
25 |
26 |
27 |
28 | .utable tr:hover {
29 | background-color: #f5f6f9;
30 | }
31 |
32 |
33 | .utable tr td {
34 | border-right: solid 1px #D4D4D4;
35 | border-bottom: solid 1px #D4D4D4;
36 | color: #666;
37 | max-height: 80px;
38 | line-height: 35px;
39 | height:35px;
40 | padding-left: 5px;
41 | padding-right: 5px;
42 | overflow: hidden;
43 | }
44 |
45 |
46 | .datarecord {
47 | text-align:center;
48 | line-height: 30px;
49 | background-color: #14A7D5;
50 | margin-right:10px;
51 | }
52 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/img/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/img/icon.png
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/img/icon_loading_small.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/img/icon_loading_small.gif
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/img/pattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xushaomin/apple-auto/8e875d5f13943d994e11e0160960033d1e335b5f/apple-auto-acquisition/apple-auto-acquisition-socket/src/main/webapp/resource/img/pattern.png
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/assembly/assembly.xml:
--------------------------------------------------------------------------------
1 |
2 | assembly
3 |
4 | tar.gz
5 |
6 | true
7 |
8 |
9 |
10 | src/main/assembly/bin/
11 | bin
12 | 0755
13 |
14 |
15 | src/main/assembly/conf/
16 | conf
17 |
18 |
19 | src/main/webapp
20 | webapp
21 | 0644
22 |
23 |
24 |
25 |
26 | lib
27 |
28 |
29 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/assembly/bin/restart.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | ENV=$1
3 | if [ -z "$ENV" ]; then
4 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
5 | echo "app exit"
6 | exit 1
7 | fi
8 | cd `dirname $0`
9 | ./stop.sh
10 | ./start.sh $ENV $2
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/assembly/bin/server.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd `dirname $0`
3 | if [ "$1" = "start" ]; then
4 | ENV=$2
5 | if [ -z "$ENV" ]; then
6 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
7 | echo "app exit"
8 | exit 1
9 | fi
10 | ./start.sh $ENV
11 | else
12 | if [ "$1" = "stop" ]; then
13 | ./stop.sh
14 | else
15 | if [ "$1" = "debug" ]; then
16 | ENV=$2
17 | if [ -z "$ENV" ]; then
18 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
19 | echo "app exit"
20 | exit 1
21 | fi
22 | ./start.sh $ENV debug
23 | else
24 | if [ "$1" = "restart" ]; then
25 | ENV=$2
26 | if [ -z "$ENV" ]; then
27 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
28 | echo "app exit"
29 | exit 1
30 | fi
31 | ./restart.sh $ENV
32 | else
33 | if [ "$1" = "dump" ]; then
34 | ./dump.sh
35 | else
36 | echo "ERROR: Please input argument: start or stop or debug or restart or dump"
37 | exit 1
38 | fi
39 | fi
40 | fi
41 | fi
42 | fi
43 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/assembly/bin/stop.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd `dirname $0`
3 | BIN_DIR=`pwd`
4 | cd ..
5 | DEPLOY_DIR=`pwd`
6 | CONF_DIR=$DEPLOY_DIR/conf
7 |
8 | SERVER_NAME=`sed '/application.name/!d;s/.*=//' conf/system.properties | tr -d '\r'`
9 |
10 | if [ -z "$SERVER_NAME" ]; then
11 | SERVER_NAME=`hostname`
12 | fi
13 |
14 | PIDS=`ps -ef | grep java | grep "$CONF_DIR" |awk '{print $2}'`
15 | if [ -z "$PIDS" ]; then
16 | echo "ERROR: The $SERVER_NAME does not started!"
17 | exit 1
18 | fi
19 |
20 | if [ "$1" != "skip" ]; then
21 | $BIN_DIR/dump.sh
22 | fi
23 |
24 | echo -e "Stopping the $SERVER_NAME ...\c"
25 | for PID in $PIDS ; do
26 | kill $PID > /dev/null 2>&1
27 | done
28 |
29 | COUNT=0
30 | while [ $COUNT -lt 1 ]; do
31 | echo -e ".\c"
32 | sleep 1
33 | COUNT=1
34 | for PID in $PIDS ; do
35 | PID_EXIST=`ps -f -p $PID | grep java`
36 | if [ -n "$PID_EXIST" ]; then
37 | COUNT=0
38 | break
39 | fi
40 | done
41 | done
42 |
43 | echo "OK!"
44 | echo "PID: $PIDS"
45 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/assembly/conf/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=info,out,logToFile
2 |
3 | #appender
4 | log4j.appender.out=org.apache.log4j.ConsoleAppender
5 | log4j.appender.out.layout=org.apache.log4j.PatternLayout
6 | log4j.appender.out.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-vvsmart] [%C->%M(%L)] %m%n
7 |
8 | log4j.appender.logToFile=org.apache.log4j.DailyRollingFileAppender
9 | log4j.appender.logToFile.File=/work/logs/apple-auto/acquisition-vvsmart/localhost.log
10 | log4j.appender.logToFile.DatePattern='.'yyyy-MM-dd
11 | log4j.appender.logToFile.layout=org.apache.log4j.PatternLayout
12 | log4j.appender.logToFile.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-vvsmart] [%C->%M(%L)] %m%n
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/assembly/conf/system.properties:
--------------------------------------------------------------------------------
1 | application.name=apple-auto-acquisition-vvsmart
2 | application.version=2.0.0
3 |
4 | jmx.port=2001
5 |
6 | #test dev beta realse
7 | deploy.dataId=acquisition-vvsmart
8 | deploy.group=apple-auto
9 | deploy.env=dev
10 |
11 | metadata.broker.list=118.178.252.65:9092
12 | producer.topic.location=location_v1
13 | producer.topic.journey=journey_v1
14 |
15 | #websocket
16 | webstocket.url=ws://####
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/java/com/appleframework/auto/acquisition/vvsmart/model/JsonResult.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.acquisition.vvsmart.model;
2 |
3 | import java.io.Serializable;
4 | import java.util.List;
5 |
6 | public class JsonResult implements Serializable {
7 |
8 | private static final long serialVersionUID = 1411801420539585196L;
9 |
10 | private Integer Result;
11 | private String Time;
12 |
13 | private List List;
14 |
15 | public Integer getResult() {
16 | return Result;
17 | }
18 |
19 | public void setResult(Integer result) {
20 | Result = result;
21 | }
22 |
23 | public String getTime() {
24 | return Time;
25 | }
26 |
27 | public void setTime(String time) {
28 | Time = time;
29 | }
30 |
31 | public List getList() {
32 | return List;
33 | }
34 |
35 | public void setList(List list) {
36 | List = list;
37 | }
38 |
39 | }
40 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/java/com/appleframework/auto/acquisition/vvsmart/utils/LocationConversion.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.acquisition.vvsmart.utils;
2 |
3 | import com.appleframework.auto.acquisition.vvsmart.model.JsonTrack;
4 | import com.appleframework.auto.bean.location.Location;
5 |
6 | public class LocationConversion {
7 |
8 | public static Location conversion(JsonTrack jtrack) {
9 | if (null == jtrack.getLat() || null == jtrack.getLng()) {
10 | return null;
11 | }
12 | Location location = new Location();
13 | location.setAccount(jtrack.getDeviceId().toString());
14 | location.setDirection((double) jtrack.getDirection());
15 | location.setLatitude(jtrack.getLat());
16 | location.setLongitude(jtrack.getLng());
17 | location.setAltitude(0d);
18 | if(null == jtrack.getSpeed()) {
19 | location.setSpeed(0D);
20 | }
21 | else {
22 | location.setSpeed((double) jtrack.getSpeed());
23 | }
24 | String time = jtrack.getTime().substring(6, 19);
25 | location.setTime(Long.parseLong(time));
26 | return location;
27 | }
28 |
29 | }
30 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/main/resoureces/config/spring-websocket.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/test/java/com/appleframework/auto/acquisition/vvsmart/AppTest.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.acquisition.vvsmart;
2 |
3 | import org.junit.Test;
4 | import org.junit.runner.RunWith;
5 | import org.springframework.test.context.ContextConfiguration;
6 | import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
7 |
8 | @RunWith(SpringJUnit4ClassRunner.class)
9 | @ContextConfiguration(locations = { "classpath*:config/spring-*.xml" })
10 | public class AppTest {
11 |
12 | @Test
13 | public void testAddOpinion1() {
14 | try {
15 | System.in.read();
16 | } catch (Exception e) {
17 | e.printStackTrace();
18 | }
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/test/resources/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=info,out,logToFile
2 |
3 | #appender
4 | log4j.appender.out=org.apache.log4j.ConsoleAppender
5 | log4j.appender.out.layout=org.apache.log4j.PatternLayout
6 | log4j.appender.out.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-vvsmart] [%C->%M(%L)] %m%n
7 |
8 | log4j.appender.logToFile=org.apache.log4j.DailyRollingFileAppender
9 | log4j.appender.logToFile.File=/work/logs/apple-auto/acquisition-vvsmart/localhost.log
10 | log4j.appender.logToFile.DatePattern='.'yyyy-MM-dd
11 | log4j.appender.logToFile.layout=org.apache.log4j.PatternLayout
12 | log4j.appender.logToFile.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][acquisition-vvsmart] [%C->%M(%L)] %m%n
--------------------------------------------------------------------------------
/apple-auto-acquisition/apple-auto-acquisition-vvsmart/src/test/resources/system.properties:
--------------------------------------------------------------------------------
1 | application.name=apple-auto-acquisition-vvsmart
2 | application.version=2.0.0
3 |
4 | jmx.port=2001
5 | web.port=8001
6 | web.context=/
7 |
8 | service.port=9001
9 |
10 | #test dev beta realse
11 | deploy.dataId=acquisition-vvsmart
12 | deploy.group=apple-auto
13 | deploy.env=dev
14 |
15 | metadata.broker.list=118.178.252.65:9092
16 | producer.topic.location=location_v1
17 | producer.topic.journey=journey_v1
18 |
19 | #websocket
20 | webstocket.url=ws://###:2012
--------------------------------------------------------------------------------
/apple-auto-acquisition/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 |
5 | com.appleframework.auto
6 | apple-auto
7 | 0.0.2.RELEASE
8 |
9 | apple-auto-acquisition
10 | apple-auto-acquisition
11 | http://maven.apache.org
12 | pom
13 |
14 | apple-auto-acquisition-socket
15 | apple-auto-acquisition-vvsmart
16 |
17 |
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-core/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | com.appleframework.auto
8 | apple-auto-bean
9 | 0.0.2.RELEASE
10 |
11 | apple-auto-bean-core
12 | apple-auto-bean-core
13 | http://maven.apache.org
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-core/src/main/java/com/appleframework/auto/bean/core/Protobufable.java:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | ***************************************************************************************
17 | * *
18 | * Website : http://www.appleframework.com *
19 | * *
20 | ***************************************************************************************
21 | */
22 | package com.appleframework.auto.bean.core;
23 |
24 | /**
25 | * 需要向另一端发送的结构体
26 | */
27 | public interface Protobufable {
28 |
29 | byte[] getByteArray();
30 | }
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-fence/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | com.appleframework.auto
8 | apple-auto-bean
9 | 0.0.2.RELEASE
10 |
11 | apple-auto-bean-fence
12 | apple-auto-bean-fence
13 | http://maven.apache.org
14 |
15 |
16 | ${project.groupId}
17 | apple-auto-bean-core
18 | ${project.version}
19 |
20 |
21 | ${project.groupId}
22 | apple-auto-bean-location
23 | ${project.version}
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-fence/src/main/java/com/appleframework/auto/bean/fence/Fence.java:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | *
4 | * Licensed under the Apache License, Version 2.0 (the "License");
5 | * you may not use this file except in compliance with the License.
6 | * You may obtain a copy of the License at
7 | *
8 | * http://www.apache.org/licenses/LICENSE-2.0
9 | *
10 | * Unless required by applicable law or agreed to in writing, software
11 | * distributed under the License is distributed on an "AS IS" BASIS,
12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 | * See the License for the specific language governing permissions and
14 | * limitations under the License.
15 | *
16 | ***************************************************************************************
17 | * *
18 | * Website : http://www.appleframework.com *
19 | * *
20 | ***************************************************************************************
21 | */
22 | package com.appleframework.auto.bean.fence;
23 |
24 | /**
25 | * 围栏接口
26 | */
27 | public interface Fence {
28 |
29 | public String getId();
30 |
31 | public String getName();
32 |
33 | public Integer getType();
34 | }
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-fence/src/main/java/com/appleframework/auto/bean/fence/PolygonFence.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.bean.fence;
2 |
3 | import java.io.Serializable;
4 | import java.util.List;
5 |
6 | public class PolygonFence extends BaseFence implements Fence, Serializable {
7 |
8 | private static final long serialVersionUID = 1L;
9 |
10 | private List polygonXA;
11 | private List polygonYA;
12 |
13 | @Override
14 | public Integer getType() {
15 | return 3;
16 | }
17 |
18 | public List getPolygonXA() {
19 | return polygonXA;
20 | }
21 |
22 | public void setPolygonXA(List polygonXA) {
23 | this.polygonXA = polygonXA;
24 | }
25 |
26 | public List getPolygonYA() {
27 | return polygonYA;
28 | }
29 |
30 | public void setPolygonYA(List polygonYA) {
31 | this.polygonYA = polygonYA;
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-fence/src/main/java/com/appleframework/auto/bean/fence/SyncOperate.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.bean.fence;
2 |
3 | import java.io.Serializable;
4 |
5 | public class SyncOperate implements Serializable {
6 |
7 | private static final long serialVersionUID = -331105663663246055L;
8 |
9 | public static int CREATE = 1;
10 | public static int UPDATE = 2;
11 | public static int DELETE = 3;
12 |
13 | private Integer operateType;
14 | private Integer fenceType;
15 | private Fence oldFence;
16 | private Fence newFence;
17 |
18 | public Fence getOldFence() {
19 | return oldFence;
20 | }
21 |
22 | public void setOldFence(Fence oldFence) {
23 | this.oldFence = oldFence;
24 | }
25 |
26 | public Fence getNewFence() {
27 | return newFence;
28 | }
29 |
30 | public void setNewFence(Fence newFence) {
31 | this.newFence = newFence;
32 | }
33 |
34 | public Integer getOperateType() {
35 | return operateType;
36 | }
37 |
38 | public void setOperateType(Integer operateType) {
39 | this.operateType = operateType;
40 | }
41 |
42 | public Integer getFenceType() {
43 | return fenceType;
44 | }
45 |
46 | public void setFenceType(Integer fenceType) {
47 | this.fenceType = fenceType;
48 | }
49 |
50 | @Override
51 | public String toString() {
52 | return "SyncOperate [operateType=" + operateType + ", fenceType=" + fenceType + ", oldFence=" + oldFence
53 | + ", newFence=" + newFence + "]";
54 | }
55 |
56 | }
57 |
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-fence/src/main/java/com/appleframework/auto/entity/fence/FenceEntityWithBLOBs.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.entity.fence;
2 |
3 | import java.io.Serializable;
4 |
5 | public class FenceEntityWithBLOBs extends FenceEntity implements Serializable {
6 |
7 | private static final long serialVersionUID = 1L;
8 |
9 | private String parameter;
10 |
11 | private String latitudes;
12 |
13 | private String longitudes;
14 |
15 | public String getParameter() {
16 | return parameter;
17 | }
18 |
19 | public void setParameter(String parameter) {
20 | this.parameter = parameter == null ? null : parameter.trim();
21 | }
22 |
23 | public String getLatitudes() {
24 | return latitudes;
25 | }
26 |
27 | public void setLatitudes(String latitudes) {
28 | this.latitudes = latitudes == null ? null : latitudes.trim();
29 | }
30 |
31 | public String getLongitudes() {
32 | return longitudes;
33 | }
34 |
35 | public void setLongitudes(String longitudes) {
36 | this.longitudes = longitudes == null ? null : longitudes.trim();
37 | }
38 | }
--------------------------------------------------------------------------------
/apple-auto-bean/apple-auto-bean-location/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | com.appleframework.auto
8 | apple-auto-bean
9 | 0.0.2.RELEASE
10 |
11 | apple-auto-bean-location
12 | apple-auto-bean-location
13 | http://maven.apache.org
14 |
15 |
16 |
17 | ${project.groupId}
18 | apple-auto-bean-core
19 | ${project.version}
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/apple-auto-bean/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | com.appleframework.auto
8 | apple-auto
9 | 0.0.2.RELEASE
10 |
11 | apple-auto-bean
12 | apple-auto-bean
13 | http://maven.apache.org
14 | pom
15 |
16 | apple-auto-bean-location
17 | apple-auto-bean-fence
18 | apple-auto-bean-core
19 |
20 |
21 |
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/assembly/assembly.xml:
--------------------------------------------------------------------------------
1 |
2 | assembly
3 |
4 | tar.gz
5 |
6 | true
7 |
8 |
9 | src/main/assembly/bin
10 | bin
11 | 0755
12 |
13 |
14 | src/main/assembly/conf
15 | conf
16 | 0644
17 |
18 |
19 |
20 |
21 | lib
22 |
23 |
24 |
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/assembly/bin/restart.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | ENV=$1
3 | if [ -z "$ENV" ]; then
4 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
5 | echo "app exit"
6 | exit 1
7 | fi
8 | cd `dirname $0`
9 | ./stop.sh
10 | ./start.sh $ENV $2
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/assembly/bin/server.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd `dirname $0`
3 | if [ "$1" = "start" ]; then
4 | ENV=$2
5 | if [ -z "$ENV" ]; then
6 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
7 | echo "app exit"
8 | exit 1
9 | fi
10 | ./start.sh $ENV
11 | else
12 | if [ "$1" = "stop" ]; then
13 | ./stop.sh
14 | else
15 | if [ "$1" = "debug" ]; then
16 | ENV=$2
17 | if [ -z "$ENV" ]; then
18 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
19 | echo "app exit"
20 | exit 1
21 | fi
22 | ./start.sh $ENV debug
23 | else
24 | if [ "$1" = "restart" ]; then
25 | ENV=$2
26 | if [ -z "$ENV" ]; then
27 | echo "ERROR:PLEASE SPEC ENV ARGS,SUCH AS dev,test,beta,release.. "
28 | echo "app exit"
29 | exit 1
30 | fi
31 | ./restart.sh $ENV
32 | else
33 | if [ "$1" = "dump" ]; then
34 | ./dump.sh
35 | else
36 | echo "ERROR: Please input argument: start or stop or debug or restart or dump"
37 | exit 1
38 | fi
39 | fi
40 | fi
41 | fi
42 | fi
43 |
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/assembly/bin/stop.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd `dirname $0`
3 | BIN_DIR=`pwd`
4 | cd ..
5 | DEPLOY_DIR=`pwd`
6 | CONF_DIR=$DEPLOY_DIR/conf
7 |
8 | SERVER_NAME=`sed '/application.name/!d;s/.*=//' conf/system.properties | tr -d '\r'`
9 |
10 | if [ -z "$SERVER_NAME" ]; then
11 | SERVER_NAME=`hostname`
12 | fi
13 |
14 | PIDS=`ps -ef | grep java | grep "$CONF_DIR" |awk '{print $2}'`
15 | if [ -z "$PIDS" ]; then
16 | echo "ERROR: The $SERVER_NAME does not started!"
17 | exit 1
18 | fi
19 |
20 | if [ "$1" != "skip" ]; then
21 | $BIN_DIR/dump.sh
22 | fi
23 |
24 | echo -e "Stopping the $SERVER_NAME ...\c"
25 | for PID in $PIDS ; do
26 | kill $PID > /dev/null 2>&1
27 | done
28 |
29 | COUNT=0
30 | while [ $COUNT -lt 1 ]; do
31 | echo -e ".\c"
32 | sleep 1
33 | COUNT=1
34 | for PID in $PIDS ; do
35 | PID_EXIST=`ps -f -p $PID | grep java`
36 | if [ -n "$PID_EXIST" ]; then
37 | COUNT=0
38 | break
39 | fi
40 | done
41 | done
42 |
43 | echo "OK!"
44 | echo "PID: $PIDS"
45 |
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/assembly/conf/log4j.properties:
--------------------------------------------------------------------------------
1 | log4j.rootLogger=info,out,logToFile
2 |
3 | #appender
4 | log4j.appender.out=org.apache.log4j.ConsoleAppender
5 | log4j.appender.out.layout=org.apache.log4j.PatternLayout
6 | log4j.appender.out.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][calculate-fence] [%C->%M(%L)] %m%n
7 |
8 | log4j.appender.logToFile=org.apache.log4j.DailyRollingFileAppender
9 | log4j.appender.logToFile.File=/work/logs/apple-auto/calculate-fence/localhost.log
10 | log4j.appender.logToFile.DatePattern='.'yyyy-MM-dd
11 | log4j.appender.logToFile.layout=org.apache.log4j.PatternLayout
12 | log4j.appender.logToFile.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}][calculate-fence] [%C->%M(%L)] %m%n
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/assembly/conf/system.properties:
--------------------------------------------------------------------------------
1 | application.name=apple-auto-calculate-fence
2 | application.version=2.0.0
3 |
4 | jmx.port=2002
5 |
6 | #test dev beta realse
7 | deploy.dataId=calculate-fence
8 | deploy.group=apple-auto
9 | deploy.env=dev
10 |
11 | zookeeper.connect=118.178.252.65:2182
12 | group.id=fence_calculate_67
13 | consumer.topic=location_v1
14 | consumer.partitionsNum=16
15 |
16 | metadata.broker.list=118.178.252.65:9092
17 | producer.topic=notify_v1
18 |
19 | #cache
20 | redis.masterAddressUri=192.168.1.177:6379
21 | redis.slaveAddressUris=192.168.1.177:6379
22 | redis.database=12
23 | redis.fence.topic=KEY_FENCE_TOPIC
24 | redis.fence.map=KEY_FENCE_MAP
25 |
26 | #map
27 | fence.location.map.path=/work/data/fence/location/map.db
--------------------------------------------------------------------------------
/apple-auto-calculate/apple-auto-calculate-fence/apple-auto-calculate-fence-local/src/main/java/com/appleframework/auto/calculate/fence/consumer/FenceConsumer.java:
--------------------------------------------------------------------------------
1 | package com.appleframework.auto.calculate.fence.consumer;
2 |
3 | import javax.annotation.Resource;
4 |
5 | import com.appleframework.auto.bean.fence.SyncOperate;
6 | import com.appleframework.auto.calculate.fence.service.FenceInfoService;
7 | import com.appleframework.jms.jedis.consumer.TopicObjectMessageConsumer;
8 |
9 | public class FenceConsumer extends TopicObjectMessageConsumer