package com.alorma.github.sdk.services.issues; import com.alorma.github.sdk.bean.dto.request.EditIssueRequestDTO; import com.alorma.github.sdk.bean.dto.response.Issue; import com.alorma.github.sdk.bean.info.IssueInfo; import com.alorma.github.sdk.services.client.GithubClient; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import retrofit.RestAdapter; import retrofit.converter.Converter; import retrofit.converter.GsonConverter; import rx.Observable; public class EditIssueClient extends GithubClient<Issue> { private IssueInfo info; private EditIssueRequestDTO editIssueRequestDTO; public EditIssueClient(IssueInfo info, EditIssueRequestDTO editIssueRequestDTO) { super(); this.info = info; this.editIssueRequestDTO = editIssueRequestDTO; } @Override protected Observable<Issue> getApiObservable(RestAdapter restAdapter) { return restAdapter.create(IssuesService.class) .editIssue(info.repoInfo.owner, info.repoInfo.name, info.num, editIssueRequestDTO); } @Override protected Converter customConverter() { Gson gson = new GsonBuilder().serializeNulls().create(); return new GsonConverter(gson); } }