Skip to content

memoer6/point-manager

Repository files navigation

Point Manager

Draft system to add, update and delete points related to kid activities (transactions). Created for self-learning purpose

PointTracker

Backend service to manage points of users. Based on Spring boot
Controller to process REST API requests from clients
Implements JPA (Java Persistence API)
Embedded hibernate database, storing data in files
Build in docker container
Declare Entity classes for user and transaction

InterestCalc

Service in backend that calculates interest points every month. Based on Spring boot
REST client to PointTracker server that update points. Supports schedule and retry mechanism
Mongo DB to persist own data
AMQP message broker (RabbitMQ) consuming notifications of users deleted in PointTracker DB
Build in docker container

PointManager

Web client implementing REST client via Javascript (Ajax)

PointReader

Android client. There are four different versions:

PointReader1

Use intent service to retrieve data from the server in a background thread
Broadcast receiver to receive data in UI thread from worker thread asynchronously
Use Retrofit 1.9 for REST API in synchronous way
Popup menu to present list of users
RecycleView to show transaction list
saveInstanceState to save Views states in orientation changes
Serializable to transfer ArrayList of Objects between activities and service
Settings persisted with SharedPreferences and managed with a PreferenceFragment
Unit testing with JUnit with mockito

PointReader2

Use Retrofit 2.1 for REST API in asynchronous way.
No intent service and broadcast receiver since Retrofit 2.1 handle Callbacks in UI thread
Parcelable to transfer ArrayList of Objects between activities and service, instead of Serializable
Add mocking to Unit testing

PointReader3

Implements RxJava for ReactiveX programming for REST API callbacks

PointReader4

Implements Dagger2 (Dependency Injection) for Presenter
Cache memory for offline access using custom interceptor in okhttp client

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published