Fix nextcloud news folder creation/deletion

This commit is contained in:
Shinokuni 2019-07-16 13:48:53 +02:00
parent 5970b18203
commit 9512932282
2 changed files with 12 additions and 8 deletions

View File

@ -174,7 +174,7 @@ public class NextNewsRepository extends ARepository {
try {
Credentials credentials = new Credentials(account.getLogin(), account.getPassword(), account.getUrl());
NextNewsFolders folders = api.createFolder(credentials, new NextNewsFolder(folder.getId(), folder.getName()));
NextNewsFolders folders = api.createFolder(credentials, new NextNewsFolder(folder.getRemoteId(), folder.getName()));
if (folders != null)
insertFolders(folders.getFolders(), account);
@ -196,10 +196,11 @@ public class NextNewsRepository extends ARepository {
try {
Credentials credentials = new Credentials(account.getLogin(), account.getPassword(), account.getUrl());
if (api.renameFolder(credentials, new NextNewsFolder(folder.getId(), folder.getName())))
if (api.renameFolder(credentials, new NextNewsFolder(folder.getRemoteId(), folder.getName()))) {
database.folderDao().update(folder);
emitter.onComplete();
else
emitter.onError(new Exception());
} else
emitter.onError(new Exception("Unknown error"));
} catch (Exception e) {
emitter.onError(e);
@ -216,10 +217,12 @@ public class NextNewsRepository extends ARepository {
try {
Credentials credentials = new Credentials(account.getLogin(), account.getPassword(), account.getUrl());
if (api.deleteFolder(credentials, new NextNewsFolder(folder.getId(), folder.getName())))
if (api.deleteFolder(credentials, new NextNewsFolder(folder.getRemoteId(), folder.getName()))) {
database.folderDao().delete(folder);
emitter.onComplete();
else
emitter.onError(new Exception());
} else
emitter.onError(new Exception("Unknown error"));
} catch (Exception e) {
emitter.onError(e);

View File

@ -10,6 +10,7 @@ import com.readrops.readropslibrary.services.nextcloudnews.json.NextNewsUser;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.DELETE;
import retrofit2.http.GET;
import retrofit2.http.POST;
import retrofit2.http.PUT;
@ -44,7 +45,7 @@ public interface NextNewsService {
@POST("folders")
Call<NextNewsFolders> createFolder(@Body NextNewsFolder folder);
@POST("folders/{folderId}")
@DELETE("folders/{folderId}")
Call<ResponseBody> deleteFolder(@Path("folderId") int folderId);
@PUT("folders/{folderId}")