diff --git a/domain/build.gradle b/domain/build.gradle new file mode 100644 index 00000000..cab611de --- /dev/null +++ b/domain/build.gradle @@ -0,0 +1,38 @@ +apply plugin: 'java-library' +apply plugin: 'kotlin' +apply plugin: 'jacoco' +apply from: '../gradle_scripts/code_quality.gradle' + +dependencies { + api other.kotlinStdlib + api other.semver +} + +jacoco { + toolVersion(versions.jacoco) +} + +ext { + jacocoExclude = [] +} + +jacocoTestReport { + reports { + html.enabled true + csv.enabled false + xml.enabled true + } + + afterEvaluate { + classDirectories = files(classDirectories.files.collect { + fileTree(dir: it, excludes: jacocoExclude) + }) + } +} + +test.finalizedBy jacocoTestReport +test { + jacoco { + excludes += jacocoExclude + } +} diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Artist.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Artist.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Artist.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Artist.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Bookmark.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Bookmark.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Bookmark.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Bookmark.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/ChatMessage.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/ChatMessage.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/ChatMessage.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/ChatMessage.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Genre.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Genre.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Genre.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Genre.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Indexes.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Indexes.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Indexes.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Indexes.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/JukeboxStatus.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/JukeboxStatus.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/JukeboxStatus.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/JukeboxStatus.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Lyrics.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Lyrics.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Lyrics.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Lyrics.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/MusicDirectory.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/MusicDirectory.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/MusicDirectory.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/MusicDirectory.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/MusicFolder.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/MusicFolder.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/MusicFolder.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/MusicFolder.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/PlayerState.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/PlayerState.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/PlayerState.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/PlayerState.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Playlist.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Playlist.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Playlist.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Playlist.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/PodcastsChannel.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/PodcastsChannel.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/PodcastsChannel.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/PodcastsChannel.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/RepeatMode.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/RepeatMode.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/RepeatMode.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/RepeatMode.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/SearchCriteria.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/SearchCriteria.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/SearchCriteria.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/SearchCriteria.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/SearchResult.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/SearchResult.kt similarity index 59% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/SearchResult.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/SearchResult.kt index 60f9b1cf..738ccfc6 100644 --- a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/SearchResult.kt +++ b/domain/src/main/kotlin/org/moire/ultrasonic/domain/SearchResult.kt @@ -1,10 +1,12 @@ package org.moire.ultrasonic.domain +import org.moire.ultrasonic.domain.MusicDirectory.Entry + /** * The result of a search. Contains matching artists, albums and songs. */ data class SearchResult( val artists: List, - val albums: List, - val songs: List + val albums: List, + val songs: List ) diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Share.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Share.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Share.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Share.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/UserInfo.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/UserInfo.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/UserInfo.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/UserInfo.kt diff --git a/ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Version.kt b/domain/src/main/kotlin/org/moire/ultrasonic/domain/Version.kt similarity index 100% rename from ultrasonic/src/main/kotlin/org/moire/ultrasonic/domain/Version.kt rename to domain/src/main/kotlin/org/moire/ultrasonic/domain/Version.kt diff --git a/settings.gradle b/settings.gradle index 8fa424c2..256032c5 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,4 +1,7 @@ -include ':library', ':subsonic-api', ':cache' +include ':library' +include ':domain' +include ':subsonic-api' +include ':cache' include ':menudrawer' include ':pulltorefresh' include ':ultrasonic' diff --git a/ultrasonic/build.gradle b/ultrasonic/build.gradle index fbe94eca..1a0b385c 100644 --- a/ultrasonic/build.gradle +++ b/ultrasonic/build.gradle @@ -47,6 +47,7 @@ dependencies { implementation project(':menudrawer') implementation project(':pulltorefresh') implementation project(':library') + implementation project(':domain') implementation project(':subsonic-api') implementation project(':cache') @@ -55,8 +56,6 @@ dependencies { implementation other.kotlinStdlib - implementation other.semver - testImplementation other.kotlinReflect testImplementation testing.junit testImplementation testing.kotlinJunit