mirror of https://github.com/tasks/tasks
Add OCOwnerPrincipal property
parent
af28d42e2e
commit
4e36ddcd74
@ -0,0 +1,19 @@
|
|||||||
|
package org.tasks.caldav.property
|
||||||
|
|
||||||
|
import at.bitfire.dav4jvm.Property
|
||||||
|
import at.bitfire.dav4jvm.PropertyFactory
|
||||||
|
import at.bitfire.dav4jvm.XmlUtils
|
||||||
|
import org.xmlpull.v1.XmlPullParser
|
||||||
|
|
||||||
|
data class OCOwnerPrincipal(val owner: String): Property {
|
||||||
|
companion object {
|
||||||
|
@JvmField
|
||||||
|
val NAME = Property.Name(PropertyUtils.NS_OWNCLOUD, "owner-principal")
|
||||||
|
}
|
||||||
|
|
||||||
|
class Factory: PropertyFactory {
|
||||||
|
override fun getName() = NAME
|
||||||
|
override fun create(parser: XmlPullParser): OCOwnerPrincipal? =
|
||||||
|
XmlUtils.readText(parser)?.let { OCOwnerPrincipal(it) }
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
package org.tasks.caldav.property
|
||||||
|
|
||||||
|
import at.bitfire.dav4jvm.PropertyFactory
|
||||||
|
import at.bitfire.dav4jvm.PropertyRegistry
|
||||||
|
|
||||||
|
object PropertyUtils {
|
||||||
|
const val NS_OWNCLOUD = "http://owncloud.org/ns"
|
||||||
|
|
||||||
|
fun PropertyRegistry.register(vararg factories: PropertyFactory) = register(factories.toList())
|
||||||
|
}
|
||||||
@ -0,0 +1,22 @@
|
|||||||
|
package org.tasks.caldav.property
|
||||||
|
|
||||||
|
import at.bitfire.dav4jvm.PropertyRegistry
|
||||||
|
import org.junit.Assert.assertEquals
|
||||||
|
import org.junit.Before
|
||||||
|
import org.junit.Test
|
||||||
|
import org.tasks.caldav.property.TestPropertyUtils.toProperty
|
||||||
|
|
||||||
|
class OCOwnerPrincipalTest {
|
||||||
|
@Before
|
||||||
|
fun setUp() {
|
||||||
|
PropertyRegistry.register(OCOwnerPrincipal.Factory())
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun ownerPrincipal() {
|
||||||
|
val owner = "<oc:owner-principal>principals/users/test</oc:owner-principal>"
|
||||||
|
.toProperty<OCOwnerPrincipal>("oc='${PropertyUtils.NS_OWNCLOUD}'")
|
||||||
|
|
||||||
|
assertEquals("principals/users/test", owner.owner)
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue