Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions AndroidClient/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
<application
android:name=".App"
android:allowBackup="true"
android:icon="@drawable/ic_meeter_lr"
android:icon="@drawable/meeter_new_logo_512x512"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/MyMaterialTheme"
Expand All @@ -57,7 +57,7 @@
android:value=".context.launcher.Launcher" />
</activity>
<activity
android:name=".context.profile.activity.ProfileActivity"
android:name=".context.profile.component.activity.ProfileActivity"
android:label="@string/profile_activity_label"
android:parentActivityName=".context.auth.activity.LoginActivity">
<meta-data
Expand All @@ -74,9 +74,9 @@
</activity>

<activity
android:name=".context.profile.activity.SettingsActivity"
android:name=".context.profile.component.activity.SettingsActivity"
android:label="Settings"
android:parentActivityName=".context.profile.activity.ProfileActivity" />
android:parentActivityName=".context.profile.component.activity.ProfileActivity" />

<activity
android:name=".context.user.activity.UserActivity"
Expand All @@ -91,13 +91,13 @@

<activity android:name=".context.event.activity.EventLocationMapActivity" />
<activity android:name=".context.event.activity.EventOnMapActivity" />
<activity android:name=".context.profile.activity.SubscribersActivity" />
<activity android:name=".context.profile.activity.SubscriptionsActivity" />
<activity android:name=".context.profile.component.activity.SubscribersActivity" />
<activity android:name=".context.profile.component.activity.SubscriptionsActivity" />
<activity android:name=".context.user.activity.UserSubscribersActivity" />
<activity android:name=".context.user.activity.UserSubscriptionsActivity" />
<activity android:name=".context.image.activity.UploadUserImageActivity" />
<activity android:name=".context.image.activity.UploadEventImageActivity" />
<activity android:name=".context.profile.activity.NewEventOnMapActivity" />
<activity android:name=".context.profile.component.activity.NewEventOnMapActivity" />

<meta-data
android:name="com.google.android.gms.version"
Expand Down
3 changes: 3 additions & 0 deletions AndroidClient/src/main/assets/app.properties
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@ server.io_proto=ws
map.events_area=1000
map.track_user=true

#Events
events.visible_statuses=PUBLISHED,SCHEDULED,STARTED,PAUSED,RESUMED,FINISHED

#Location section
#meters
location.distance=10
Expand Down
15 changes: 15 additions & 0 deletions AndroidClient/src/main/java/com/tom/meeter/App.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@
import com.tom.meeter.context.auth.DaggerAuthComponent;
import com.tom.meeter.context.event.DaggerEventComponent;
import com.tom.meeter.context.event.EventComponent;
import com.tom.meeter.context.profile.DaggerProfileComponent;
import com.tom.meeter.context.profile.ProfileComponent;
import com.tom.meeter.context.user.DaggerUserComponent;
import com.tom.meeter.context.user.UserComponent;

Expand All @@ -19,6 +21,7 @@ public class App extends Application {
private AuthComponent authComponent;
private EventComponent eventComponent;
private UserComponent userComponent;
private ProfileComponent profileComponent;

@Override
public void onCreate() {
Expand All @@ -32,6 +35,7 @@ public void onCreate() {

/* Dependent */
eventComponent = buildEventComponent();
profileComponent = buildProfileComponent();
userComponent = buildUserComponent();


Expand Down Expand Up @@ -71,6 +75,13 @@ protected UserComponent buildUserComponent() {
.build();
}

protected ProfileComponent buildProfileComponent() {
return DaggerProfileComponent.builder()
.application(this)
.appComponent(component)
.build();
}

public AppComponent getComponent() {
return component;
}
Expand All @@ -86,4 +97,8 @@ public EventComponent getEventComponent() {
public UserComponent getUserComponent() {
return userComponent;
}

public ProfileComponent getProfileComponent() {
return profileComponent;
}
}
39 changes: 3 additions & 36 deletions AndroidClient/src/main/java/com/tom/meeter/AppComponent.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,11 @@

import android.app.Application;

import com.tom.meeter.context.event.service.EventService;
import com.tom.meeter.context.image.ImageDownloader;
import com.tom.meeter.context.image.activity.BaseUploadActivity;
import com.tom.meeter.context.launcher.Launcher;
import com.tom.meeter.context.profile.activity.ProfileActivity;
import com.tom.meeter.context.profile.activity.SettingsActivity;
import com.tom.meeter.context.profile.activity.SubscribersActivity;
import com.tom.meeter.context.profile.activity.SubscriptionsActivity;
import com.tom.meeter.context.profile.fragment.ActiveEventsFragment;
import com.tom.meeter.context.profile.fragment.CreateEventFragment;
import com.tom.meeter.context.profile.fragment.GoogleMapsFragment;
import com.tom.meeter.context.profile.fragment.ProfileEventsFragment;
import com.tom.meeter.context.profile.fragment.ProfileFragment;
import com.tom.meeter.context.token.service.TokenService;
import com.tom.meeter.context.user.service.UserService;
import com.tom.meeter.infrastructure.components.UserLoader;

import javax.inject.Singleton;

Expand All @@ -27,9 +17,7 @@
modules = {
AppModule.class,
TokenModule.class,
ImageModule.class,
UserModule.class,
EventModule.class
ImageModule.class
})
@Singleton
public interface AppComponent {
Expand All @@ -38,10 +26,7 @@ public interface AppComponent {

ImageDownloader provideImageDownloader();

UserService provideUserService();

EventService provideEventService();

UserLoader provideUserLoader();

@Component.Builder
interface Builder {
Expand All @@ -54,24 +39,6 @@ interface Builder {

void inject(Launcher launcher);

void inject(ProfileActivity profileActivity);

void inject(SettingsActivity settingsActivity);

void inject(ProfileFragment profileFragment);

void inject(GoogleMapsFragment googleMapsFragment);

void inject(ActiveEventsFragment activeEventsFragment);

void inject(ProfileEventsFragment profileEventsFragment);

void inject(SubscribersActivity subscribersActivity);

void inject(SubscriptionsActivity subscriptionsActivity);

void inject(BaseUploadActivity baseUploadActivity);

void inject(CreateEventFragment createEventFragment);

}
98 changes: 9 additions & 89 deletions AndroidClient/src/main/java/com/tom/meeter/AppModule.java
Original file line number Diff line number Diff line change
@@ -1,122 +1,42 @@
package com.tom.meeter;

import static com.tom.meeter.infrastructure.common.Globals.getServerPath;
import static com.tom.meeter.infrastructure.common.InfrastructureHelper.logMethod;
import static com.tom.meeter.infrastructure.common.RetrofitBuilder.createBuilder;

import android.app.Application;
import android.util.Log;

import androidx.annotation.NonNull;
import androidx.room.Room;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.databind.json.JsonMapper;
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import com.tom.meeter.context.profile.repository.event.database.EventDao;
import com.tom.meeter.context.profile.repository.event.database.EventDatabase;
import com.tom.meeter.context.profile.repository.user.database.UserDao;
import com.tom.meeter.context.profile.repository.user.database.UserDatabase;
import com.tom.meeter.context.profile.service.ProfileService;
import com.tom.meeter.context.profile.settings.service.SettingsService;
import com.tom.meeter.infrastructure.common.RetrofitBuilder;
import com.tom.meeter.infrastructure.components.UserLoader;
import com.tom.meeter.infrastructure.http.HttpClient;

import java.util.TimeZone;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.Executor;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

import javax.inject.Singleton;

import dagger.Module;
import dagger.Provides;
import retrofit2.Retrofit;
import retrofit2.converter.jackson.JacksonConverterFactory;

@Module
public class AppModule {

private static final String TAG = AppModule.class.getCanonicalName();

public AppModule() {
Log.d(TAG, "Configuring AppModule...");
}

@Singleton
@NonNull
@Provides
public ProfileService provideProfileService(Application app) {
return new Retrofit.Builder()
.baseUrl(getServerPath(app))
.addConverterFactory(JacksonConverterFactory.create(
JsonMapper.builder()
.addModule(new JavaTimeModule())
.addModule(new Jdk8Module())
.serializationInclusion(JsonInclude.Include.NON_NULL)
.build()
.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS)
.setTimeZone(TimeZone.getDefault())))
.build()
.create(ProfileService.class);
}

@Singleton
@NonNull
@Provides
public UserDatabase provideUserDb(Application app) {
return Room.databaseBuilder(app, UserDatabase.class, "user.db")
.fallbackToDestructiveMigration()
.build();
logMethod(TAG, this);
}

@Singleton
@NonNull
@Provides
public UserDao provideUserDao(UserDatabase userDatabase) {
return userDatabase.userDao();
}

@Singleton
@NonNull
@Provides
public Executor provideExecutor() {
return new ThreadPoolExecutor(4, 8, 1000, TimeUnit.SECONDS,
new ArrayBlockingQueue<>(15, false));
}

@Singleton
@NonNull
@Provides
public EventDatabase provideEventDb(Application app) {
return Room.databaseBuilder(app, EventDatabase.class, "event.db")
.fallbackToDestructiveMigration()
.build();
}

@Singleton
@NonNull
@Provides
public EventDao provideEventDao(EventDatabase eventDatabase) {
return eventDatabase.eventDao();
}

@Singleton
@NonNull
@Provides
public SettingsService provideSettingsService(Application app) {
return new Retrofit.Builder()
.baseUrl(getServerPath(app))
.addConverterFactory(JacksonConverterFactory.create())
//.addConverterFactory(GsonConverterFactory.create())
.build()
.create(SettingsService.class);
public HttpClient provideHttpClient(Application app) {
return new HttpClient(getServerPath(app));
}

@Singleton
@NonNull
@Provides
public HttpClient provideHttpClient(Application app) {
return new HttpClient(getServerPath(app));
public UserLoader provideUserLoader(Application app) {
return createBuilder(app, RetrofitBuilder.jtm).create(UserLoader.class);
}
}
53 changes: 0 additions & 53 deletions AndroidClient/src/main/java/com/tom/meeter/EventModule.java

This file was deleted.

2 changes: 0 additions & 2 deletions AndroidClient/src/main/java/com/tom/meeter/TokenModule.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
import dagger.Provides;
import retrofit2.Retrofit;
import retrofit2.converter.jackson.JacksonConverterFactory;
//import retrofit2.converter.gson.GsonConverterFactory;

@Module
public class TokenModule {
Expand All @@ -33,7 +32,6 @@ public TokenService providesTokenService(Application app) {
return new Retrofit.Builder()
.baseUrl(getServerPath(app))
.addConverterFactory(JacksonConverterFactory.create())
//.addConverterFactory(GsonConverterFactory.create())
.build()
.create(TokenService.class);
}
Expand Down
Loading