Skip to content

Commit

Permalink
- Add request and response model
Browse files Browse the repository at this point in the history
  • Loading branch information
alhazmy13 committed Jan 18, 2017
1 parent 38b2c83 commit 4ef8879
Show file tree
Hide file tree
Showing 10 changed files with 46 additions and 25 deletions.
7 changes: 5 additions & 2 deletions template/ActivityCleanArchitecture/recipe.xml.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,11 @@
</#if>

<#if generateModelLayer>
<instantiate from="root/src/app_package/SimpleModel.java.ftl"
to="${escapeXmlAttribute(srcOut)}/model/model/${modelClass}.java" />
<instantiate from="root/src/app_package/SimpleRequestModel.java.ftl"
to="${escapeXmlAttribute(srcOut)}/model/model/${modelRequestClass}.java" />

<instantiate from="root/src/app_package/SimpleResponseModel.java.ftl"
to="${escapeXmlAttribute(srcOut)}/model/model/${modelResponseClass}.java" />

</#if>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ public class ${mockImplClass} implements ${repositoryInterface} {
}

// @Override
// public Observable<${modelClass}> methodeFromRepo() {
// ${modelClass} model = new ${modelClass}();
// return Observable.create(new Observable.OnSubscribe<${modelClass}>() {
// public Observable<${modelResponseClass}> methodeFromRepo(${modelRequestClass} request) {
// ${modelResponseClass} model = new ${modelResponseClass}();
// return Observable.create(new Observable.OnSubscribe<${modelResponseClass}>() {
// @Override
// public void call(Subscriber<? super ${modelClass}> subscriber) {
// public void call(Subscriber<? super ${modelResponseClass}> subscriber) {
// if (model == null)
// throw new RuntimeException("");
// else
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,17 @@ public class ${realmImplClass} implements ${repositoryInterface} {


// @Override
// public Observable<List<${modelClass}>> methodeFromRepo() {
// return mRealm.where(${modelClass}.class).findAll().asObservable()
// .map(new Func1<RealmResults<${modelClass}>, List<${modelClass}>>() {
// public Observable<List<${modelResponseClass}>> methodeFromRepo(${modelRequestClass} request) {
// return mRealm.where(${modelResponseClass}.class).findAll().asObservable()
// .map(new Func1<RealmResults<${modelResponseClass}>, List<${modelResponseClass}>>() {
// @Override
// public List<${modelClass}> call(RealmResults<${modelClass}> results) {
// public List<${modelResponseClass}> call(RealmResults<${modelResponseClass}> results) {
// return mRealm.copyFromRealm(results);
// }
// });
//
// //OR
// //return mRealm.where(${modelClass}.class).findFirst().asObservable();
// //return mRealm.where(${modelResponseClass}.class).findFirst().asObservable();
//
// }

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@ package ${packageName}.data;
import rx.Observable;

public interface ${repositoryInterface} {
// Observable<${modelClass}> methodeFromRepo();
// Observable<${modelResponseClass}> methodeFromRepo(${modelRequestClass} request);
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
package ${packageName}.model.model;


public class ${modelClass}{
public class ${modelRequestClass}{

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package ${packageName}.model.model;


public class ${modelResponseClass}{

}
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,13 @@ public class ${repositoryImplClass} implements ${repositoryInterface} {


// @Override
//public Observable<${modelClass}> methodeFromRepo() {
//public Observable<${modelResponseClass}> methodeFromRepo(${modelRequestClass} request) {
// return mRetrofitService.methodeFromRetrofit()
// .subscribeOn(Schedulers.io())
// .observeOn(AndroidSchedulers.mainThread())
// .map(new Func1<Response<${modelClass}>, ${modelClass}>() {
// .map(new Func1<Response<${modelResponseClass}>, ${modelResponseClass}>() {
// @Override
// public ${modelClass} call(Response<${modelClass}> response) {
// public ${modelResponseClass} call(Response<${modelResponseClass}> response) {
// if (response.isSuccess()){
// return response.body();
// //OR if you are using a caching tempelte
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,5 @@ import rx.Observable;
public interface ${retrofitService} {

//GET("")
//Observable<Response<${modelClass}>> methodeFromRetrofit();
//Observable<Response<${modelResponseClass}>> methodeFromRetrofit();
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package ${packageName}.data;

import android.content.Context;

public class ${serviceClass} implements ${repositoryInterface}{

Expand All @@ -21,15 +22,15 @@ public class ${serviceClass} implements ${repositoryInterface}{

// TODO:create methode in repo class
//
// public Observable<${modelClass}> methodeName() {
// return mRepo.methodeFromRepo();
// public Observable<${modelResponseClass}> methodeName(${modelRequestClass} request) {
// return mRepo.methodeFromRepo(request);
//
//
// //OR if you are using a chacing templete
// //if (mContext != null && !Utility.isNetworkAvailable(mContext)) {
// // return mOfflineRepo.fetchPosts();
// // return mOfflineRepo.fetchPosts(request);
// //} else {
// // return mRepo.fetchPosts();
// // return mRepo.fetchPosts(request);
// // }
// }
//
Expand Down
19 changes: 15 additions & 4 deletions template/ActivityCleanArchitecture/template.xml
Original file line number Diff line number Diff line change
Expand Up @@ -133,13 +133,24 @@
help="If true, model class will be generated" />

<parameter
id="modelClass"
name="Model name"
id="modelRequestClass"
name="Model Request name"
type="string"
constraints="class|unique|nonempty"
default="MainModel"
suggest="${activityClass}RequestModel"
default="MainRequestModel"
visibility="generateModel"
help="The name of the model class to create" />
help="The name of the request model class to create" />

<parameter
id="modelResponseClass"
name="Model Response name"
type="string"
constraints="class|unique|nonempty"
suggest="${activityClass}RespnseModel"
default="MainRespnseModel"
visibility="generateModel"
help="The name of the response model class to create" />

<parameter
id="generateLayout"
Expand Down

0 comments on commit 4ef8879

Please sign in to comment.