From 0c955a15abb881b7368fbf2c40220d36229e1f98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?mustafa=20ic=CC=A7men?= Date: Thu, 5 Oct 2017 22:08:24 +0300 Subject: [PATCH] service model architecture changed --- .../android/activity/LoginActivity.java | 14 +++---- .../android/activity/RegisterActivity.java | 22 +++++----- .../android/activity/SplashActivity.java | 12 +++--- .../pizzalink/android/api/ApiInterface.java | 41 +++++++++++++++---- .../pizzalink/android/api/ResponseArray.java | 30 ++++++++++++++ .../pizzalink/android/api/ResponseObject.java | 28 +++++++++++++ .../android/fragment/HistoryFragment.java | 28 ++++++++++++- .../android/fragment/ProfileFragment.java | 14 +++---- .../responseModel/BaseResponseModel.java | 36 ---------------- .../responseModel/CategoryResponseModel.java | 22 ---------- .../LoginCustomerResponseModel.java | 20 --------- .../OrderHistoryResponseModel.java | 22 ---------- 12 files changed, 148 insertions(+), 141 deletions(-) create mode 100644 app/src/main/java/ch/pizzalink/android/api/ResponseArray.java create mode 100644 app/src/main/java/ch/pizzalink/android/api/ResponseObject.java delete mode 100644 app/src/main/java/ch/pizzalink/android/model/responseModel/BaseResponseModel.java delete mode 100644 app/src/main/java/ch/pizzalink/android/model/responseModel/CategoryResponseModel.java delete mode 100644 app/src/main/java/ch/pizzalink/android/model/responseModel/LoginCustomerResponseModel.java delete mode 100644 app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java diff --git a/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java b/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java index e3b3e36..a475330 100644 --- a/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java +++ b/app/src/main/java/ch/pizzalink/android/activity/LoginActivity.java @@ -17,9 +17,10 @@ import butterknife.OnClick; import ch.pizzalink.android.R; import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.api.ResponseObject; import ch.pizzalink.android.helper.DialogHelper; import ch.pizzalink.android.helper.SharedPrefsHelper; -import ch.pizzalink.android.model.responseModel.LoginCustomerResponseModel; +import ch.pizzalink.android.model.UserModel; import ch.pizzalink.android.view.PizzalinkButton; import ch.pizzalink.android.view.PizzalinkEditText; import retrofit2.Call; @@ -88,16 +89,15 @@ public class LoginActivity extends BaseActivity { private void login(){ DialogHelper.showLoadingDialog(); - Call call = ApiService.apiInterface.login( + Call> call = ApiService.apiInterface.login( emailPizzalinkEditText.getText(), passwordPizzalinkEditText.getText()); - call.enqueue(new Callback() { + call.enqueue(new Callback>() { @Override - public void onResponse(Call call, Response response) { + public void onResponse(Call> call, Response> response) { DialogHelper.hideLoadingDialog(); if(response.isSuccessful() && - response.body() != null && + response.body().getData() != null && response.body().isSuccess()){ - response.body().getData().checkNull(); SharedPrefsHelper.saveUser(response.body().getData()); SharedPrefsHelper.saveCustomerToken(response.body().getData().getToken()); SharedPrefsHelper.setCustomerLoggedIn(true); @@ -108,7 +108,7 @@ public class LoginActivity extends BaseActivity { } @Override - public void onFailure(Call call, Throwable t) { + public void onFailure(Call> call, Throwable t) { DialogHelper.hideLoadingDialog(); DialogHelper.showFailedDialog(); } diff --git a/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java b/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java index 68b281e..005e513 100644 --- a/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java +++ b/app/src/main/java/ch/pizzalink/android/activity/RegisterActivity.java @@ -15,10 +15,10 @@ import butterknife.OnClick; import ch.pizzalink.android.R; import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.api.ResponseObject; import ch.pizzalink.android.helper.DialogHelper; import ch.pizzalink.android.helper.SharedPrefsHelper; import ch.pizzalink.android.model.UserModel; -import ch.pizzalink.android.model.responseModel.LoginCustomerResponseModel; import ch.pizzalink.android.view.PizzalinkButton; import ch.pizzalink.android.view.PizzalinkEditText; import ch.pizzalink.android.view.PizzalinkToolbar; @@ -97,17 +97,19 @@ public class RegisterActivity extends BaseActivity { private void registerUser(){ DialogHelper.showLoadingDialog(); - Call call = ApiService.apiInterface.register( - pizzalinkEditTextList.get(0).getText(), pizzalinkEditTextList.get(1).getText(),pizzalinkEditTextList.get(2).getText(), - pizzalinkEditTextList.get(3).getText(),pizzalinkEditTextList.get(4).getText(),pizzalinkEditTextList.get(5).getText(), - pizzalinkEditTextList.get(6).getText(),pizzalinkEditTextList.get(7).getText(),pizzalinkEditTextList.get(8).getText(), - pizzalinkEditTextList.get(9).getText(),pizzalinkEditTextList.get(10).getText(),pizzalinkEditTextList.get(11).getText()); - call.enqueue(new Callback() { + Call> call = ApiService.apiInterface.register( + pizzalinkEditTextList.get(0).getText(), pizzalinkEditTextList.get(1).getText(), + pizzalinkEditTextList.get(2).getText(), pizzalinkEditTextList.get(3).getText(), + pizzalinkEditTextList.get(4).getText(), pizzalinkEditTextList.get(5).getText(), + pizzalinkEditTextList.get(6).getText(), pizzalinkEditTextList.get(7).getText(), + pizzalinkEditTextList.get(8).getText(), pizzalinkEditTextList.get(9).getText(), + pizzalinkEditTextList.get(10).getText(),pizzalinkEditTextList.get(11).getText()); + call.enqueue(new Callback>() { @Override - public void onResponse(Call call, Response response) { + public void onResponse(Call> call, Response> response) { DialogHelper.hideLoadingDialog(); if(response.isSuccessful() && - response.body() != null && + response.body().getData() != null && response.body().isSuccess()){ response.body().getData().checkNull(); SharedPrefsHelper.saveUser(response.body().getData()); @@ -120,7 +122,7 @@ public class RegisterActivity extends BaseActivity { } @Override - public void onFailure(Call call, Throwable t) { + public void onFailure(Call> call, Throwable t) { DialogHelper.hideLoadingDialog(); DialogHelper.showFailedDialog(); } diff --git a/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java b/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java index bc46ac8..7672269 100644 --- a/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java +++ b/app/src/main/java/ch/pizzalink/android/activity/SplashActivity.java @@ -16,13 +16,13 @@ import butterknife.ButterKnife; import ch.pizzalink.android.R; import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.api.ResponseArray; import ch.pizzalink.android.helper.DialogHelper; import ch.pizzalink.android.helper.DisplayHelper; import ch.pizzalink.android.helper.NetworkHelper; import ch.pizzalink.android.helper.SessionHelper; import ch.pizzalink.android.helper.SharedPrefsHelper; import ch.pizzalink.android.model.CategoryModel; -import ch.pizzalink.android.model.responseModel.CategoryResponseModel; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -43,12 +43,12 @@ public class SplashActivity extends BaseActivity { } private void getCategoryList(){ - Call call = ApiService.apiInterface.getAllCategories(); - call.enqueue(new Callback() { + Call> call = ApiService.apiInterface.getAllCategories(); + call.enqueue(new Callback>() { @Override - public void onResponse(Call call, Response response) { + public void onResponse(Call> call, Response> response) { if(response.isSuccessful() && - response.body() != null && + response.body().getData() != null && response.body().isSuccess()){ CategoryModel.checkNull(response.body().getData()); SharedPrefsHelper.saveCategoryList(response.body().getData()); @@ -59,7 +59,7 @@ public class SplashActivity extends BaseActivity { } @Override - public void onFailure(Call call, Throwable t) { + public void onFailure(Call> call, Throwable t) { DialogHelper.showFailedDialog(); } }); diff --git a/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java b/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java index 4efc07f..4a4262d 100644 --- a/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java +++ b/app/src/main/java/ch/pizzalink/android/api/ApiInterface.java @@ -3,11 +3,9 @@ package ch.pizzalink.android.api; import java.util.ArrayList; import java.util.HashMap; +import ch.pizzalink.android.model.CategoryModel; import ch.pizzalink.android.model.OrderModel; -import ch.pizzalink.android.model.responseModel.BaseResponseModel; -import ch.pizzalink.android.model.responseModel.CategoryResponseModel; -import ch.pizzalink.android.model.responseModel.LoginCustomerResponseModel; -import ch.pizzalink.android.model.responseModel.OrderHistoryResponseModel; +import ch.pizzalink.android.model.UserModel; import retrofit2.Call; import retrofit2.http.Body; import retrofit2.http.Field; @@ -23,11 +21,11 @@ import retrofit2.http.Query; public interface ApiInterface { @GET(ApiEndPoints.API_GET_ALL_CATEGORIES) - Call getAllCategories(); + Call> getAllCategories(); @FormUrlEncoded @POST(ApiEndPoints.API_REGISTER) - Call register(@Field("firstname") String firstname, + Call> register(@Field("firstname") String firstname, @Field("lastname") String lastname, @Field("telephone") String telephone, @Field("email") String email, @@ -42,14 +40,39 @@ public interface ApiInterface { @FormUrlEncoded @POST(ApiEndPoints.API_LOGIN) - Call login(@Field("email") String email, @Field("password") String password); + Call> login(@Field("email") String email, @Field("password") String password); @FormUrlEncoded @POST(ApiEndPoints.API_LOGOUT) - Call logout(@Field("token") String customerToken); + Call logout(@Field("token") String customerToken); @GET(ApiEndPoints.API_GET_ORDER_HISTORY) - Call getOrderHistory(@Query("token") String token); + Call> getOrderHistory(@Query("token") String token); + + + + + + + + + + + + + + + + + + + + + + + + + /* diff --git a/app/src/main/java/ch/pizzalink/android/api/ResponseArray.java b/app/src/main/java/ch/pizzalink/android/api/ResponseArray.java new file mode 100644 index 0000000..77454b3 --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/api/ResponseArray.java @@ -0,0 +1,30 @@ +package ch.pizzalink.android.api; + +import com.google.gson.annotations.SerializedName; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * Created by cimenmus on 05/10/2017. + */ + +public class ResponseArray implements Serializable { + + @SerializedName("success") private boolean success; + @SerializedName("message") private String message; + @SerializedName("data") private ArrayList data; + + public boolean isSuccess() { + return success; + } + + public String getMessage() { + return message; + } + + public ArrayList getData() { + return data; + } +} \ No newline at end of file diff --git a/app/src/main/java/ch/pizzalink/android/api/ResponseObject.java b/app/src/main/java/ch/pizzalink/android/api/ResponseObject.java new file mode 100644 index 0000000..0f93a3b --- /dev/null +++ b/app/src/main/java/ch/pizzalink/android/api/ResponseObject.java @@ -0,0 +1,28 @@ +package ch.pizzalink.android.api; + +import com.google.gson.annotations.SerializedName; + +import java.io.Serializable; + +/** + * Created by cimenmus on 05/10/2017. + */ + +public class ResponseObject implements Serializable { + + @SerializedName("success") private boolean success; + @SerializedName("message") private String message; + @SerializedName("data") private T data; + + public boolean isSuccess() { + return success; + } + + public String getMessage() { + return message; + } + + public T getData() { + return data; + } +} diff --git a/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java index 913e504..b6d432d 100644 --- a/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java +++ b/app/src/main/java/ch/pizzalink/android/fragment/HistoryFragment.java @@ -20,11 +20,11 @@ import ch.pizzalink.android.activity.BaseActivity; import ch.pizzalink.android.adapter.recycler.OrderHistoryRecyclerAdapter; import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.api.ResponseArray; import ch.pizzalink.android.helper.DialogHelper; import ch.pizzalink.android.helper.SessionHelper; import ch.pizzalink.android.interfaces.RecyclerItemClickListener; import ch.pizzalink.android.model.OrderModel; -import ch.pizzalink.android.model.responseModel.OrderHistoryResponseModel; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -82,6 +82,7 @@ public class HistoryFragment extends BaseFragment { } // "cP1sbSmwc6GEE7fCy6du7KqRbkR7bY1q" + /* private void getOrderHistory(){ DialogHelper.showLoadingDialog(); HashMap params = new HashMap<>(); @@ -107,6 +108,31 @@ public class HistoryFragment extends BaseFragment { } }); } + */ + + private void getOrderHistory(){ + DialogHelper.showLoadingDialog(); + Call> call = ApiService.apiInterface. + getOrderHistory(SessionHelper.getCustomerToken().getToken()); + call.enqueue(new Callback>() { + @Override + public void onResponse(Call> call, Response> response) { + DialogHelper.hideLoadingDialog(); + if(response.isSuccessful() && + response.body().getData() != null && + response.body().isSuccess()) + fillAndNotifyOrderHistoryList(response.body().getData()); + else + ApiErrorUtils.parseError(response); + } + + @Override + public void onFailure(Call> call, Throwable t) { + DialogHelper.hideLoadingDialog(); + DialogHelper.showFailedDialog(); + } + }); + } private void fillAndNotifyOrderHistoryList(ArrayList orderList){ if(orderList == null) diff --git a/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java b/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java index 2726b9a..4d2a65f 100644 --- a/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java +++ b/app/src/main/java/ch/pizzalink/android/fragment/ProfileFragment.java @@ -16,10 +16,10 @@ import ch.pizzalink.android.activity.BaseActivity; import ch.pizzalink.android.activity.LoginActivity; import ch.pizzalink.android.api.ApiErrorUtils; import ch.pizzalink.android.api.ApiService; +import ch.pizzalink.android.api.ResponseObject; import ch.pizzalink.android.helper.DialogHelper; import ch.pizzalink.android.helper.SessionHelper; import ch.pizzalink.android.helper.SharedPrefsHelper; -import ch.pizzalink.android.model.responseModel.BaseResponseModel; import retrofit2.Call; import retrofit2.Callback; import retrofit2.Response; @@ -67,21 +67,19 @@ public class ProfileFragment extends BaseFragment { private void logOutOnWeb(){ DialogHelper.showLoadingDialog(); - Call call = ApiService.apiInterface.logout(SessionHelper.getCustomerToken().getToken()); - call.enqueue(new Callback() { + Call call = ApiService.apiInterface.logout(SessionHelper.getCustomerToken().getToken()); + call.enqueue(new Callback() { @Override - public void onResponse(Call call, Response response) { + public void onResponse(Call call, Response response) { DialogHelper.hideLoadingDialog(); - if(response.isSuccessful() && - response.body() != null && - response.body().isSuccess()) + if(response.isSuccessful() && response.body().isSuccess()) logoutLocally(); else ApiErrorUtils.parseError(response); } @Override - public void onFailure(Call call, Throwable t) { + public void onFailure(Call call, Throwable t) { DialogHelper.hideLoadingDialog(); DialogHelper.showFailedDialog(); } diff --git a/app/src/main/java/ch/pizzalink/android/model/responseModel/BaseResponseModel.java b/app/src/main/java/ch/pizzalink/android/model/responseModel/BaseResponseModel.java deleted file mode 100644 index 930668c..0000000 --- a/app/src/main/java/ch/pizzalink/android/model/responseModel/BaseResponseModel.java +++ /dev/null @@ -1,36 +0,0 @@ -package ch.pizzalink.android.model.responseModel; - -/** - * Created by cimenmus on 26/09/2017. - */ - -public class BaseResponseModel { - - private boolean success; - private String message; - private int error_code; - - public boolean isSuccess() { - return success; - } - - public void setSuccess(boolean success) { - this.success = success; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public int getError_code() { - return error_code; - } - - public void setError_code(int error_code) { - this.error_code = error_code; - } -} diff --git a/app/src/main/java/ch/pizzalink/android/model/responseModel/CategoryResponseModel.java b/app/src/main/java/ch/pizzalink/android/model/responseModel/CategoryResponseModel.java deleted file mode 100644 index 2daa139..0000000 --- a/app/src/main/java/ch/pizzalink/android/model/responseModel/CategoryResponseModel.java +++ /dev/null @@ -1,22 +0,0 @@ -package ch.pizzalink.android.model.responseModel; - -import java.util.ArrayList; - -import ch.pizzalink.android.model.CategoryModel; - -/** - * Created by cimenmus on 26/09/2017. - */ - -public class CategoryResponseModel extends BaseResponseModel { - - private ArrayList data; - - public ArrayList getData() { - return data; - } - - public void setData(ArrayList data) { - this.data = data; - } -} diff --git a/app/src/main/java/ch/pizzalink/android/model/responseModel/LoginCustomerResponseModel.java b/app/src/main/java/ch/pizzalink/android/model/responseModel/LoginCustomerResponseModel.java deleted file mode 100644 index 54e8ef8..0000000 --- a/app/src/main/java/ch/pizzalink/android/model/responseModel/LoginCustomerResponseModel.java +++ /dev/null @@ -1,20 +0,0 @@ -package ch.pizzalink.android.model.responseModel; - -import ch.pizzalink.android.model.UserModel; - -/** - * Created by cimenmus on 26/09/2017. - */ - -public class LoginCustomerResponseModel extends BaseResponseModel { - - private UserModel data; - - public UserModel getData() { - return data; - } - - public void setData(UserModel data) { - this.data = data; - } -} diff --git a/app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java b/app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java deleted file mode 100644 index 2a78150..0000000 --- a/app/src/main/java/ch/pizzalink/android/model/responseModel/OrderHistoryResponseModel.java +++ /dev/null @@ -1,22 +0,0 @@ -package ch.pizzalink.android.model.responseModel; - -import java.util.ArrayList; - -import ch.pizzalink.android.model.OrderModel; - -/** - * Created by cimenmus on 04/10/2017. - */ - -public class OrderHistoryResponseModel extends BaseResponseModel{ - - private ArrayList data; - - public ArrayList getData() { - return data; - } - - public void setData(ArrayList data) { - this.data = data; - } -}