Fix issues from dav4jvm/ical4android upgrade

pull/820/head
Alex Baker 5 years ago
parent aa85d1a3dc
commit fb59324a50

@ -130,7 +130,9 @@ dependencies {
implementation(project(":dav4jvm")) {
exclude group: 'org.ogce', module: 'xpp3'
}
implementation project(":ical4android")
implementation(project(":ical4android")) {
exclude group: 'org.threeten', module: 'threetenbp'
}
annotationProcessor "com.google.dagger:dagger-compiler:${DAGGER_VERSION}"
implementation "com.google.dagger:dagger:${DAGGER_VERSION}"

@ -10,6 +10,7 @@ import at.bitfire.dav4jvm.BasicDigestAuthHandler;
import at.bitfire.dav4jvm.DavResource;
import at.bitfire.dav4jvm.Property.Name;
import at.bitfire.dav4jvm.Response;
import at.bitfire.dav4jvm.Response.HrefRelation;
import at.bitfire.dav4jvm.XmlUtils;
import at.bitfire.dav4jvm.exception.DavException;
import at.bitfire.dav4jvm.exception.HttpException;
@ -156,7 +157,7 @@ public class CaldavClient {
public List<Response> getCalendars() throws IOException, DavException {
DavResource davResource = new DavResource(httpClient, httpUrl);
ResponseList responses = new ResponseList();
ResponseList responses = new ResponseList(HrefRelation.MEMBER);
davResource.propfind(
1,
new Name[] {

@ -13,6 +13,7 @@ import android.content.Context;
import at.bitfire.dav4jvm.DavCalendar;
import at.bitfire.dav4jvm.DavResource;
import at.bitfire.dav4jvm.Response;
import at.bitfire.dav4jvm.Response.HrefRelation;
import at.bitfire.dav4jvm.exception.DavException;
import at.bitfire.dav4jvm.exception.HttpException;
import at.bitfire.dav4jvm.property.CalendarData;
@ -166,7 +167,7 @@ public class CaldavSynchronizer {
DavCalendar davCalendar = new DavCalendar(httpClient, httpUrl);
ResponseList members = new ResponseList();
ResponseList members = new ResponseList(HrefRelation.MEMBER);
davCalendar.calendarQuery("VTODO", null, null, members);
Set<String> remoteObjects = newHashSet(transform(members, Response::hrefName));
@ -199,7 +200,7 @@ public class CaldavSynchronizer {
processVTodo(vCard.hrefName(), caldavCalendar, eTag.getETag(), response.getBody());
} else {
ArrayList<HttpUrl> urls = newArrayList(Iterables.transform(items, Response::getHref));
ResponseList responses = new ResponseList();
ResponseList responses = new ResponseList(HrefRelation.MEMBER);
davCalendar.multiget(urls, responses);
Timber.d("MULTI %s", urls);
@ -333,13 +334,8 @@ public class CaldavSynchronizer {
private void processVTodo(
String fileName, CaldavCalendar caldavCalendar, String eTag, String vtodo) {
List<at.bitfire.ical4android.Task> tasks;
try {
tasks = at.bitfire.ical4android.Task.Companion.fromReader(new StringReader(vtodo));
} catch (Exception e) {
Timber.e(e);
return;
}
List<at.bitfire.ical4android.Task> tasks =
at.bitfire.ical4android.Task.Companion.fromReader(new StringReader(vtodo));
if (tasks.size() == 1) {
at.bitfire.ical4android.Task remote = tasks.get(0);

@ -9,9 +9,21 @@ import kotlin.jvm.functions.Function2;
public class ResponseList extends ArrayList<Response>
implements Function2<Response, HrefRelation, Unit> {
private final HrefRelation filter;
public ResponseList() {
this(null);
}
public ResponseList(HrefRelation filter) {
this.filter = filter;
}
@Override
public Unit invoke(Response response, HrefRelation hrefRelation) {
add(response);
if (filter == null || hrefRelation == filter) {
add(response);
}
return null;
}
}

@ -1 +1 @@
Subproject commit c8d53d6880374b2330d98ef5c43ff662a003abe7
Subproject commit 10b6ba825c96cd1134dce2bc811096dcc0cdd3e0
Loading…
Cancel
Save