Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit 93dddcdb authored by Ricki Hirner's avatar Ricki Hirner Committed by GitHub
Browse files

Use packages to group properties by namespace (#32)

* Use packages to group properties by namespace

* Adapt copyright
parent 8d22ff22
Loading
Loading
Loading
Loading
+12 −10
Original line number Diff line number Diff line
@@ -9,9 +9,11 @@ package at.bitfire.dav4jvm
import at.bitfire.dav4jvm.XmlUtils.insertTag
import at.bitfire.dav4jvm.exception.DavException
import at.bitfire.dav4jvm.exception.HttpException
import at.bitfire.dav4jvm.property.AddressData
import at.bitfire.dav4jvm.property.GetContentType
import at.bitfire.dav4jvm.property.GetETag
import at.bitfire.dav4jvm.property.carddav.AddressData
import at.bitfire.dav4jvm.property.carddav.NS_CARDDAV
import at.bitfire.dav4jvm.property.webdav.GetContentType
import at.bitfire.dav4jvm.property.webdav.GetETag
import at.bitfire.dav4jvm.property.webdav.NS_WEBDAV
import okhttp3.HttpUrl
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.OkHttpClient
@@ -32,9 +34,9 @@ class DavAddressBook @JvmOverloads constructor(
        val MIME_VCARD3_UTF8 = "text/vcard;charset=utf-8".toMediaType()
        val MIME_VCARD4 = "text/vcard;version=4.0".toMediaType()

        val ADDRESSBOOK_QUERY = Property.Name(XmlUtils.NS_CARDDAV, "addressbook-query")
        val ADDRESSBOOK_MULTIGET = Property.Name(XmlUtils.NS_CARDDAV, "addressbook-multiget")
        val FILTER = Property.Name(XmlUtils.NS_CARDDAV, "filter")
        val ADDRESSBOOK_QUERY = Property.Name(NS_CARDDAV, "addressbook-query")
        val ADDRESSBOOK_MULTIGET = Property.Name(NS_CARDDAV, "addressbook-multiget")
        val FILTER = Property.Name(NS_CARDDAV, "filter")
    }

    /**
@@ -59,8 +61,8 @@ class DavAddressBook @JvmOverloads constructor(
        val writer = StringWriter()
        serializer.setOutput(writer)
        serializer.startDocument("UTF-8", null)
        serializer.setPrefix("", XmlUtils.NS_WEBDAV)
        serializer.setPrefix("CARD", XmlUtils.NS_CARDDAV)
        serializer.setPrefix("", NS_WEBDAV)
        serializer.setPrefix("CARD", NS_CARDDAV)
        serializer.insertTag(ADDRESSBOOK_QUERY) {
            insertTag(PROP) {
                insertTag(GetETag.NAME)
@@ -107,8 +109,8 @@ class DavAddressBook @JvmOverloads constructor(
        val writer = StringWriter()
        serializer.setOutput(writer)
        serializer.startDocument("UTF-8", null)
        serializer.setPrefix("", XmlUtils.NS_WEBDAV)
        serializer.setPrefix("CARD", XmlUtils.NS_CARDDAV)
        serializer.setPrefix("", NS_WEBDAV)
        serializer.setPrefix("CARD", NS_CARDDAV)
        serializer.insertTag(ADDRESSBOOK_MULTIGET) {
            insertTag(PROP) {
                insertTag(GetContentType.NAME)
+15 −13
Original line number Diff line number Diff line
@@ -9,10 +9,12 @@ package at.bitfire.dav4jvm
import at.bitfire.dav4jvm.XmlUtils.insertTag
import at.bitfire.dav4jvm.exception.DavException
import at.bitfire.dav4jvm.exception.HttpException
import at.bitfire.dav4jvm.property.CalendarData
import at.bitfire.dav4jvm.property.GetContentType
import at.bitfire.dav4jvm.property.GetETag
import at.bitfire.dav4jvm.property.ScheduleTag
import at.bitfire.dav4jvm.property.caldav.CalendarData
import at.bitfire.dav4jvm.property.caldav.NS_CALDAV
import at.bitfire.dav4jvm.property.caldav.ScheduleTag
import at.bitfire.dav4jvm.property.webdav.GetContentType
import at.bitfire.dav4jvm.property.webdav.GetETag
import at.bitfire.dav4jvm.property.webdav.NS_WEBDAV
import okhttp3.HttpUrl
import okhttp3.MediaType.Companion.toMediaType
import okhttp3.OkHttpClient
@@ -37,13 +39,13 @@ class DavCalendar @JvmOverloads constructor(
        val MIME_ICALENDAR = "text/calendar".toMediaType()
        val MIME_ICALENDAR_UTF8 = "text/calendar;charset=utf-8".toMediaType()

        val CALENDAR_QUERY = Property.Name(XmlUtils.NS_CALDAV, "calendar-query")
        val CALENDAR_MULTIGET = Property.Name(XmlUtils.NS_CALDAV, "calendar-multiget")
        val CALENDAR_QUERY = Property.Name(NS_CALDAV, "calendar-query")
        val CALENDAR_MULTIGET = Property.Name(NS_CALDAV, "calendar-multiget")

        val FILTER = Property.Name(XmlUtils.NS_CALDAV, "filter")
        val COMP_FILTER = Property.Name(XmlUtils.NS_CALDAV, "comp-filter")
        val FILTER = Property.Name(NS_CALDAV, "filter")
        val COMP_FILTER = Property.Name(NS_CALDAV, "comp-filter")
        const val COMP_FILTER_NAME = "name"
        val TIME_RANGE = Property.Name(XmlUtils.NS_CALDAV, "time-range")
        val TIME_RANGE = Property.Name(NS_CALDAV, "time-range")
        const val TIME_RANGE_START = "start"
        const val TIME_RANGE_END = "end"

@@ -82,8 +84,8 @@ class DavCalendar @JvmOverloads constructor(
        val writer = StringWriter()
        serializer.setOutput(writer)
        serializer.startDocument("UTF-8", null)
        serializer.setPrefix("", XmlUtils.NS_WEBDAV)
        serializer.setPrefix("CAL", XmlUtils.NS_CALDAV)
        serializer.setPrefix("", NS_WEBDAV)
        serializer.setPrefix("CAL", NS_CALDAV)
        serializer.insertTag(CALENDAR_QUERY) {
            insertTag(PROP) {
                insertTag(GetETag.NAME)
@@ -148,8 +150,8 @@ class DavCalendar @JvmOverloads constructor(
        val writer = StringWriter()
        serializer.setOutput(writer)
        serializer.startDocument("UTF-8", null)
        serializer.setPrefix("", XmlUtils.NS_WEBDAV)
        serializer.setPrefix("CAL", XmlUtils.NS_CALDAV)
        serializer.setPrefix("", NS_WEBDAV)
        serializer.setPrefix("CAL", NS_CALDAV)
        serializer.insertTag(CALENDAR_MULTIGET) {
            insertTag(PROP) {
                insertTag(GetContentType.NAME)     // to determine the character set
+7 −6
Original line number Diff line number Diff line
@@ -9,7 +9,8 @@ package at.bitfire.dav4jvm
import at.bitfire.dav4jvm.XmlUtils.insertTag
import at.bitfire.dav4jvm.exception.DavException
import at.bitfire.dav4jvm.exception.HttpException
import at.bitfire.dav4jvm.property.SyncToken
import at.bitfire.dav4jvm.property.webdav.NS_WEBDAV
import at.bitfire.dav4jvm.property.webdav.SyncToken
import okhttp3.HttpUrl
import okhttp3.OkHttpClient
import okhttp3.Request
@@ -29,10 +30,10 @@ open class DavCollection @JvmOverloads constructor(
): DavResource(httpClient, location, log) {

    companion object {
        val SYNC_COLLECTION = Property.Name(XmlUtils.NS_WEBDAV, "sync-collection")
        val SYNC_LEVEL = Property.Name(XmlUtils.NS_WEBDAV, "sync-level")
        val LIMIT = Property.Name(XmlUtils.NS_WEBDAV, "limit")
        val NRESULTS = Property.Name(XmlUtils.NS_WEBDAV, "nresults")
        val SYNC_COLLECTION = Property.Name(NS_WEBDAV, "sync-collection")
        val SYNC_LEVEL = Property.Name(NS_WEBDAV, "sync-level")
        val LIMIT = Property.Name(NS_WEBDAV, "limit")
        val NRESULTS = Property.Name(NS_WEBDAV, "nresults")
    }

    /**
@@ -87,7 +88,7 @@ open class DavCollection @JvmOverloads constructor(
        val writer = StringWriter()
        serializer.setOutput(writer)
        serializer.startDocument("UTF-8", null)
        serializer.setPrefix("", XmlUtils.NS_WEBDAV)
        serializer.setPrefix("", NS_WEBDAV)
        serializer.insertTag(SYNC_COLLECTION) {
            insertTag(SyncToken.NAME) {
                if (syncToken != null)
+14 −11
Original line number Diff line number Diff line
@@ -16,7 +16,10 @@ import at.bitfire.dav4jvm.exception.NotFoundException
import at.bitfire.dav4jvm.exception.PreconditionFailedException
import at.bitfire.dav4jvm.exception.ServiceUnavailableException
import at.bitfire.dav4jvm.exception.UnauthorizedException
import at.bitfire.dav4jvm.property.SyncToken
import at.bitfire.dav4jvm.property.caldav.NS_CALDAV
import at.bitfire.dav4jvm.property.carddav.NS_CARDDAV
import at.bitfire.dav4jvm.property.webdav.NS_WEBDAV
import at.bitfire.dav4jvm.property.webdav.SyncToken
import okhttp3.Headers
import okhttp3.HttpUrl
import okhttp3.MediaType.Companion.toMediaType
@@ -63,12 +66,12 @@ open class DavResource @JvmOverloads constructor(
        const val HTTP_MULTISTATUS = 207
        val MIME_XML = "application/xml; charset=utf-8".toMediaType()

        val PROPFIND = Property.Name(XmlUtils.NS_WEBDAV, "propfind")
        val PROPERTYUPDATE = Property.Name(XmlUtils.NS_WEBDAV, "propertyupdate")
        val SET = Property.Name(XmlUtils.NS_WEBDAV, "set")
        val REMOVE = Property.Name(XmlUtils.NS_WEBDAV, "remove")
        val PROP = Property.Name(XmlUtils.NS_WEBDAV, "prop")
        val HREF = Property.Name(XmlUtils.NS_WEBDAV, "href")
        val PROPFIND = Property.Name(NS_WEBDAV, "propfind")
        val PROPERTYUPDATE = Property.Name(NS_WEBDAV, "propertyupdate")
        val SET = Property.Name(NS_WEBDAV, "set")
        val REMOVE = Property.Name(NS_WEBDAV, "remove")
        val PROP = Property.Name(NS_WEBDAV, "prop")
        val HREF = Property.Name(NS_WEBDAV, "href")

        val XML_SIGNATURE = "<?xml".toByteArray()

@@ -84,7 +87,7 @@ open class DavResource @JvmOverloads constructor(
            val serializer = XmlUtils.newSerializer()
            val writer = StringWriter()
            serializer.setOutput(writer)
            serializer.setPrefix("d", XmlUtils.NS_WEBDAV)
            serializer.setPrefix("d", NS_WEBDAV)
            serializer.startDocument("UTF-8", null)
            serializer.insertTag(PROPERTYUPDATE) {
                // DAV:set
@@ -486,9 +489,9 @@ open class DavResource @JvmOverloads constructor(
        val serializer = XmlUtils.newSerializer()
        val writer = StringWriter()
        serializer.setOutput(writer)
        serializer.setPrefix("", XmlUtils.NS_WEBDAV)
        serializer.setPrefix("CAL", XmlUtils.NS_CALDAV)
        serializer.setPrefix("CARD", XmlUtils.NS_CARDDAV)
        serializer.setPrefix("", NS_WEBDAV)
        serializer.setPrefix("CAL", NS_CALDAV)
        serializer.setPrefix("CARD", NS_CARDDAV)
        serializer.startDocument("UTF-8", null)
        serializer.insertTag(PROPFIND) {
            insertTag(PROP) {
+7 −8
Original line number Diff line number Diff line
/*
 * Copyright © Ricki Hirner (bitfire web engineering).
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the GNU Public License v3.0
 * which accompanies this distribution, and is available at
 * http://www.gnu.org/licenses/gpl.html
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */

package at.bitfire.dav4jvm

import at.bitfire.dav4jvm.property.webdav.NS_WEBDAV
import org.xmlpull.v1.XmlPullParser
import java.io.Serializable

@@ -23,7 +22,7 @@ class Error(

    companion object {

        val NAME = Property.Name(XmlUtils.NS_WEBDAV, "error")
        val NAME = Property.Name(NS_WEBDAV, "error")

        fun parseError(parser: XmlPullParser): List<Error> {
            val names = mutableSetOf<Property.Name>()
@@ -42,8 +41,8 @@ class Error(

        // some pre-defined errors

        val NEED_PRIVILEGES = Error(Property.Name(XmlUtils.NS_WEBDAV, "need-privileges"))
        val VALID_SYNC_TOKEN = Error(Property.Name(XmlUtils.NS_WEBDAV, "valid-sync-token"))
        val NEED_PRIVILEGES = Error(Property.Name(NS_WEBDAV, "need-privileges"))
        val VALID_SYNC_TOKEN = Error(Property.Name(NS_WEBDAV, "valid-sync-token"))

    }

Loading