- Removed middle layer of abstraction for subsonic classes

- Used kotlin for classes
This commit is contained in:
antonio 2023-03-06 21:59:10 +01:00
parent 917c0839de
commit ca15f51c85
168 changed files with 2026 additions and 6588 deletions

View file

@ -115,13 +115,16 @@ public class Subsonic {
Map<String, String> params = new HashMap<>();
params.put("u", preferences.getUsername());
if (preferences.getAuthentication().getPassword() != null) params.put("p", preferences.getAuthentication().getPassword());
if (preferences.getAuthentication().getSalt() != null) params.put("s", preferences.getAuthentication().getSalt());
if (preferences.getAuthentication().getToken() != null) params.put("t", preferences.getAuthentication().getToken());
if (preferences.getAuthentication().getPassword() != null)
params.put("p", preferences.getAuthentication().getPassword());
if (preferences.getAuthentication().getSalt() != null)
params.put("s", preferences.getAuthentication().getSalt());
if (preferences.getAuthentication().getToken() != null)
params.put("t", preferences.getAuthentication().getToken());
params.put("v", getApiVersion().getVersionString());
params.put("c", preferences.getClientName());
params.put("f", "xml");
params.put("f", "json");
return params;
}

View file

@ -1,131 +1,48 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter;
import java.util.Date;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter
import kotlinx.android.parcel.Parcelize
import java.util.*
@Parcelize
@Xml(name = "album")
public class AlbumID3 {
open class AlbumID3 : Parcelable {
@Attribute
protected String id;
var id: String? = null
@Attribute
protected String name;
var name: String? = null
@Attribute
protected String artist;
var artist: String? = null
@Attribute
protected String artistId;
var artistId: String? = null
@Attribute(name = "coverArt")
protected String coverArtId;
var coverArtId: String? = null
@Attribute
protected int songCount;
var songCount = 0
@Attribute
protected int duration;
var duration = 0
@Attribute
protected Long playCount;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date created;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date starred;
var playCount: Long? = null
@Attribute(converter = DateRfc3339TypeConverter::class)
var created: Date? = null
@Attribute(converter = DateRfc3339TypeConverter::class)
var starred: Date? = null
@Attribute
protected Integer year;
var year: Int? = null
@Attribute
protected String genre;
public String getId() {
return id;
}
public void setId(String value) {
this.id = value;
}
public String getName() {
return name;
}
public void setName(String value) {
this.name = value;
}
public String getArtist() {
return artist;
}
public void setArtist(String value) {
this.artist = value;
}
public String getArtistId() {
return artistId;
}
public void setArtistId(String value) {
this.artistId = value;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String value) {
this.coverArtId = value;
}
public int getSongCount() {
return songCount;
}
public void setSongCount(int value) {
this.songCount = value;
}
public int getDuration() {
return duration;
}
public void setDuration(int value) {
this.duration = value;
}
public Long getPlayCount() {
return playCount;
}
public void setPlayCount(Long value) {
this.playCount = value;
}
public Date getCreated() {
return created;
}
public void setCreated(Date value) {
this.created = value;
}
public Date getStarred() {
return starred;
}
public void setStarred(Date value) {
this.starred = value;
}
public Integer getYear() {
return year;
}
public void setYear(Integer value) {
this.year = value;
}
public String getGenre() {
return genre;
}
public void setGenre(String value) {
this.genre = value;
}
}
var genre: String? = null
}

View file

@ -1,68 +1,25 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class AlbumInfo {
class AlbumInfo {
@Attribute
protected String notes;
@Attribute
protected String musicBrainzId;
@Attribute
protected String lastFmUrl;
@Attribute
protected String smallImageUrl;
@Attribute
protected String mediumImageUrl;
@Attribute
protected String largeImageUrl;
public String getNotes() {
return notes;
}
public void setNotes(String value) {
this.notes = value;
}
public String getMusicBrainzId() {
return musicBrainzId;
}
var notes: String? = null
public void setMusicBrainzId(String value) {
this.musicBrainzId = value;
}
public String getLastFmUrl() {
return lastFmUrl;
}
public void setLastFmUrl(String value) {
this.lastFmUrl = value;
}
@Attribute
var musicBrainzId: String? = null
public String getSmallImageUrl() {
return smallImageUrl;
}
public void setSmallImageUrl(String value) {
this.smallImageUrl = value;
}
public String getMediumImageUrl() {
return mediumImageUrl;
}
public void setMediumImageUrl(String value) {
this.mediumImageUrl = value;
}
public String getLargeImageUrl() {
return largeImageUrl;
}
public void setLargeImageUrl(String value) {
this.largeImageUrl = value;
}
}
@Attribute
var lastFmUrl: String? = null
@Attribute
var smallImageUrl: String? = null
@Attribute
var mediumImageUrl: String? = null
@Attribute
var largeImageUrl: String? = null
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class AlbumList {
protected List<Child> albums;
/**
* Gets the value of the albums property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the albums property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getAlbums().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
}
class AlbumList {
var albums: List<Child>? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class AlbumList2 {
class AlbumList2 {
@Element
protected List<AlbumID3> albums;
public List<AlbumID3> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
public void setAlbums(List<AlbumID3> albums) {
this.albums = albums;
}
}
var albums: List<AlbumID3>? = null
}

View file

@ -1,24 +1,13 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
import kotlinx.android.parcel.Parcelize
@Parcelize
@Xml
public class AlbumWithSongsID3 extends AlbumID3 {
class AlbumWithSongsID3 : AlbumID3(), Parcelable {
@Element(name = "song")
protected List<Child> songs;
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,112 +1,71 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
public class Artist {
protected String id;
protected String name;
protected LocalDateTime starred;
protected Integer userRating;
protected Double averageRating;
import java.time.LocalDateTime
class Artist {
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setId(String value) {
this.id = value;
}
var id: String? = null
/**
* Gets the value of the name property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setName(String value) {
this.name = value;
}
var name: String? = null
/**
* Gets the value of the starred property.
*
* @return possible object is
* {@link String }
* [String]
*/
public LocalDateTime getStarred() {
return starred;
}
/**
* Sets the value of the starred property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setStarred(LocalDateTime value) {
this.starred = value;
}
var starred: LocalDateTime? = null
/**
* Gets the value of the userRating property.
*
* @return possible object is
* {@link Integer }
* [Integer]
*/
public Integer getUserRating() {
return userRating;
}
/**
* Sets the value of the userRating property.
*
* @param value allowed object is
* {@link Integer }
* [Integer]
*/
public void setUserRating(Integer value) {
this.userRating = value;
}
var userRating: Int? = null
/**
* Gets the value of the averageRating property.
*
* @return possible object is
* {@link Double }
* [Double]
*/
public Double getAverageRating() {
return averageRating;
}
/**
* Sets the value of the averageRating property.
*
* @param value allowed object is
* {@link Double }
* [Double]
*/
public void setAverageRating(Double value) {
this.averageRating = value;
}
}
var averageRating: Double? = null
}

View file

@ -1,62 +1,27 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter;
import java.util.Date;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter
import kotlinx.android.parcel.Parcelize
import java.util.*
@Parcelize
@Xml(name = "artist")
public class ArtistID3 {
open class ArtistID3 : Parcelable {
@Attribute
protected String id;
var id: String? = null
@Attribute
protected String name;
var name: String? = null
@Attribute(name = "coverArt")
protected String coverArtId;
var coverArtId: String? = null
@Attribute
protected int albumCount;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date starred;
var albumCount = 0
public String getId() {
return id;
}
public void setId(String value) {
this.id = value;
}
public String getName() {
return name;
}
public void setName(String value) {
this.name = value;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String value) {
this.coverArtId = value;
}
public int getAlbumCount() {
return albumCount;
}
public void setAlbumCount(int value) {
this.albumCount = value;
}
public Date getStarred() {
return starred;
}
public void setStarred(Date value) {
this.starred = value;
}
}
@Attribute(converter = DateRfc3339TypeConverter::class)
var starred: Date? = null
}

View file

@ -1,36 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class ArtistInfo extends ArtistInfoBase {
protected List<Artist> similarArtists;
/**
* Gets the value of the similarArtists property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the similarArtists property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getSimilarArtists().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Artist }
*/
public List<Artist> getSimilarArtists() {
if (similarArtists == null) {
similarArtists = new ArrayList<>();
}
return this.similarArtists;
}
}
class ArtistInfo : ArtistInfoBase() {
var similarArtists: List<Artist>? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class ArtistInfo2 extends ArtistInfoBase {
class ArtistInfo2 : ArtistInfoBase() {
@Element(name = "similarArtist")
protected List<SimilarArtistID3> similarArtists;
public List<SimilarArtistID3> getSimilarArtists() {
if (similarArtists == null) {
similarArtists = new ArrayList<>();
}
return this.similarArtists;
}
public void setSimilarArtists(List<SimilarArtistID3> similarArtists) {
this.similarArtists = similarArtists;
}
}
var similarArtists: List<SimilarArtistID3>? = null
}

View file

@ -1,68 +1,25 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.PropertyElement;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.PropertyElement
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class ArtistInfoBase {
open class ArtistInfoBase {
@PropertyElement
protected String biography;
var biography: String? = null
@PropertyElement
protected String musicBrainzId;
var musicBrainzId: String? = null
@PropertyElement
protected String lastFmUrl;
var lastFmUrl: String? = null
@PropertyElement
protected String smallImageUrl;
var smallImageUrl: String? = null
@PropertyElement
protected String mediumImageUrl;
var mediumImageUrl: String? = null
@PropertyElement
protected String largeImageUrl;
public String getBiography() {
return biography;
}
public void setBiography(String value) {
this.biography = value;
}
public String getMusicBrainzId() {
return musicBrainzId;
}
public void setMusicBrainzId(String value) {
this.musicBrainzId = value;
}
public String getLastFmUrl() {
return lastFmUrl;
}
public void setLastFmUrl(String value) {
this.lastFmUrl = value;
}
public String getSmallImageUrl() {
return smallImageUrl;
}
public void setSmallImageUrl(String value) {
this.smallImageUrl = value;
}
public String getMediumImageUrl() {
return mediumImageUrl;
}
public void setMediumImageUrl(String value) {
this.mediumImageUrl = value;
}
public String getLargeImageUrl() {
return largeImageUrl;
}
public void setLargeImageUrl(String value) {
this.largeImageUrl = value;
}
}
var largeImageUrl: String? = null
}

View file

@ -1,24 +1,13 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
import kotlinx.android.parcel.Parcelize
@Parcelize
@Xml
public class ArtistWithAlbumsID3 extends ArtistID3 {
class ArtistWithAlbumsID3 : ArtistID3(), Parcelable {
@Element(name = "album")
protected List<AlbumID3> albums;
public List<AlbumID3> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
public void setAlbums(List<AlbumID3> albums) {
this.albums = albums;
}
}
var albums: List<AlbumID3>? = null
}

View file

@ -1,33 +1,11 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class ArtistsID3 {
class ArtistsID3 {
@Element(name = "index")
protected List<IndexID3> indices;
protected String ignoredArticles;
public List<IndexID3> getIndices() {
if (indices == null) {
indices = new ArrayList<>();
}
return this.indices;
}
public void setIndices(List<IndexID3> indices) {
this.indices = indices;
}
public String getIgnoredArticles() {
return ignoredArticles;
}
public void setIgnoredArticles(String value) {
this.ignoredArticles = value;
}
}
var indices: List<IndexID3>? = null
var ignoredArticles: String? = null
}

View file

@ -1,67 +1,43 @@
package com.cappielloantonio.play.subsonic.models;
public class AudioTrack {
protected String id;
protected String name;
protected String languageCode;
package com.cappielloantonio.play.subsonic.models
class AudioTrack {
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setId(String value) {
this.id = value;
}
var id: String? = null
/**
* Gets the value of the name property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setName(String value) {
this.name = value;
}
var name: String? = null
/**
* Gets the value of the languageCode property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getLanguageCode() {
return languageCode;
}
/**
* Sets the value of the languageCode property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setLanguageCode(String value) {
this.languageCode = value;
}
}
var languageCode: String? = null
}

View file

@ -1,126 +1,78 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
public class Bookmark {
protected Child entry;
protected long position;
protected String username;
protected String comment;
protected LocalDateTime created;
protected LocalDateTime changed;
import java.time.LocalDateTime
class Bookmark {
/**
* Gets the value of the entry property.
*
* @return possible object is
* {@link Child }
* [Child]
*/
public Child getEntry() {
return entry;
}
/**
* Sets the value of the entry property.
*
* @param value allowed object is
* {@link Child }
* [Child]
*/
public void setEntry(Child value) {
this.entry = value;
}
var entry: Child? = null
/**
* Gets the value of the position property.
*/
public long getPosition() {
return position;
}
/**
* Sets the value of the position property.
*/
public void setPosition(long value) {
this.position = value;
}
var position: Long = 0
/**
* Gets the value of the username property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getUsername() {
return username;
}
/**
* Sets the value of the username property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setUsername(String value) {
this.username = value;
}
var username: String? = null
/**
* Gets the value of the comment property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getComment() {
return comment;
}
/**
* Sets the value of the comment property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setComment(String value) {
this.comment = value;
}
var comment: String? = null
/**
* Gets the value of the created property.
*
* @return possible object is
* {@link String }
* [String]
*/
public LocalDateTime getCreated() {
return created;
}
/**
* Sets the value of the created property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setCreated(LocalDateTime value) {
this.created = value;
}
var created: LocalDateTime? = null
/**
* Gets the value of the changed property.
*
* @return possible object is
* {@link String }
* [String]
*/
public LocalDateTime getChanged() {
return changed;
}
/**
* Sets the value of the changed property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setChanged(LocalDateTime value) {
this.changed = value;
}
}
var changed: LocalDateTime? = null
}

View file

@ -1,36 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Bookmarks {
protected List<Bookmark> bookmarks;
/**
* Gets the value of the bookmarks property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the bookmarks property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getBookmarks().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Bookmark }
*/
public List<Bookmark> getBookmarks() {
if (bookmarks == null) {
bookmarks = new ArrayList<>();
}
return this.bookmarks;
}
}
class Bookmarks {
var bookmarks: List<Bookmark>? = null
}

View file

@ -1,46 +1,30 @@
package com.cappielloantonio.play.subsonic.models;
public class Captions {
protected String id;
protected String name;
package com.cappielloantonio.play.subsonic.models
class Captions {
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setId(String value) {
this.id = value;
}
var id: String? = null
/**
* Gets the value of the name property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setName(String value) {
this.name = value;
}
}
var name: String? = null
}

View file

@ -1,61 +1,37 @@
package com.cappielloantonio.play.subsonic.models;
public class ChatMessage {
protected String username;
protected long time;
protected String message;
package com.cappielloantonio.play.subsonic.models
class ChatMessage {
/**
* Gets the value of the username property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getUsername() {
return username;
}
/**
* Sets the value of the username property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setUsername(String value) {
this.username = value;
}
var username: String? = null
/**
* Gets the value of the time property.
*/
public long getTime() {
return time;
}
/**
* Sets the value of the time property.
*/
public void setTime(long value) {
this.time = value;
}
var time: Long = 0
/**
* Gets the value of the message property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getMessage() {
return message;
}
/**
* Sets the value of the message property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setMessage(String value) {
this.message = value;
}
}
var message: String? = null
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class ChatMessages {
protected List<ChatMessage> chatMessages;
/**
* Gets the value of the chatMessages property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the chatMessages property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getChatMessages().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link ChatMessage }
*/
public List<ChatMessage> getChatMessages() {
if (chatMessages == null) {
chatMessages = new ArrayList<>();
}
return this.chatMessages;
}
}
class ChatMessages {
var chatMessages: List<ChatMessage>? = null
}

View file

@ -1,322 +1,139 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter;
import java.util.Date;
import android.os.Parcelable
import androidx.room.ColumnInfo
import androidx.room.PrimaryKey
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter
import kotlinx.android.parcel.Parcelize
import java.util.*
@Parcelize
@Xml
public class Child {
open class Child(
@PrimaryKey
@ColumnInfo(name = "id")
@Attribute
protected String id;
open val id: String,
@ColumnInfo(name = "parent_id")
@Attribute(name = "parent")
protected String parentId;
@Attribute(name = "isDir")
protected boolean dir;
var parentId: String? = null,
@ColumnInfo(name = "is_dir")
@Attribute
protected String title;
var isDir: Boolean = false,
@ColumnInfo
@Attribute
protected String album;
var title: String? = null,
@ColumnInfo
@Attribute
protected String artist;
var album: String? = null,
@ColumnInfo
@Attribute
protected Integer track;
var artist: String? = null,
@ColumnInfo
@Attribute
protected Integer year;
var track: Int? = null,
@ColumnInfo
@Attribute
var year: Int? = null,
@ColumnInfo
@Attribute(name = "genre")
protected String genre;
var genre: String? = null,
@ColumnInfo(name = "cover_art_id")
@Attribute(name = "coverArt")
protected String coverArtId;
var coverArtId: String? = null,
@ColumnInfo
@Attribute
protected Long size;
var size: Long? = null,
@ColumnInfo(name = "content_type")
@Attribute
protected String contentType;
var contentType: String? = null,
@ColumnInfo
@Attribute
protected String suffix;
var suffix: String? = null,
@ColumnInfo("transcoding_content_type")
@Attribute
protected String transcodedContentType;
var transcodedContentType: String? = null,
@ColumnInfo(name = "transcoded_suffix")
@Attribute
protected String transcodedSuffix;
var transcodedSuffix: String? = null,
@ColumnInfo
@Attribute
protected Integer duration;
var duration: Int? = null,
@ColumnInfo("bitrate")
@Attribute(name = "bitRate")
var bitrate: Int? = null,
@ColumnInfo
@Attribute
protected Integer bitRate;
@Attribute
protected String path;
var path: String? = null,
@ColumnInfo(name = "is_video")
@Attribute(name = "isVideo")
protected Boolean video;
var isVideo: Boolean = false,
@ColumnInfo(name = "user_rating")
@Attribute
protected Integer userRating;
var userRating: Int? = null,
@ColumnInfo(name = "average_rating")
@Attribute
protected Double averageRating;
var averageRating: Double? = null,
@ColumnInfo(name = "play_count")
@Attribute
protected Long playCount;
var playCount: Long? = null,
@ColumnInfo(name = "disc_number")
@Attribute
protected Integer discNumber;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date created;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date starred;
var discNumber: Int? = null,
@ColumnInfo
@Attribute(converter = DateRfc3339TypeConverter::class)
var created: Date? = null,
@ColumnInfo
@Attribute(converter = DateRfc3339TypeConverter::class)
var starred: Date? = null,
@ColumnInfo(name = "album_id")
@Attribute
protected String albumId;
var albumId: String? = null,
@ColumnInfo(name = "artist_id")
@Attribute
protected String artistId;
var artistId: String? = null,
@ColumnInfo
@Attribute
protected String type;
var type: String? = null,
@ColumnInfo(name = "bookmark_position")
@Attribute
protected Long bookmarkPosition;
var bookmarkPosition: Long? = null,
@ColumnInfo(name = "original_width")
@Attribute
protected Integer originalWidth;
var originalWidth: Int? = null,
@ColumnInfo(name = "original_height")
@Attribute
protected Integer originalHeight;
public String getId() {
return id;
}
public void setId(String value) {
this.id = value;
}
public String getParentId() {
return parentId;
}
public void setParentId(String value) {
this.parentId = value;
}
public boolean isDir() {
return dir;
}
public void setDir(boolean value) {
this.dir = value;
}
public String getTitle() {
return title;
}
public void setTitle(String value) {
this.title = value;
}
public String getAlbum() {
return album;
}
public void setAlbum(String value) {
this.album = value;
}
public String getArtist() {
return artist;
}
public void setArtist(String value) {
this.artist = value;
}
public Integer getTrack() {
return track;
}
public void setTrack(Integer value) {
this.track = value;
}
public Integer getYear() {
return year;
}
public void setYear(Integer value) {
this.year = value;
}
public String getGenre() {
return genre;
}
public void setGenre(String value) {
this.genre = value;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String value) {
this.coverArtId = value;
}
public Long getSize() {
return size;
}
public void setSize(Long value) {
this.size = value;
}
public String getContentType() {
return contentType;
}
public void setContentType(String value) {
this.contentType = value;
}
public String getSuffix() {
return suffix;
}
public void setSuffix(String value) {
this.suffix = value;
}
public String getTranscodedContentType() {
return transcodedContentType;
}
public void setTranscodedContentType(String value) {
this.transcodedContentType = value;
}
public String getTranscodedSuffix() {
return transcodedSuffix;
}
public void setTranscodedSuffix(String value) {
this.transcodedSuffix = value;
}
public Integer getDuration() {
return duration;
}
public void setDuration(Integer value) {
this.duration = value;
}
public Integer getBitRate() {
return bitRate;
}
public void setBitRate(Integer value) {
this.bitRate = value;
}
public String getPath() {
return path;
}
public void setPath(String value) {
this.path = value;
}
public Boolean isVideo() {
return video;
}
public void setVideo(Boolean value) {
this.video = value;
}
public Integer getUserRating() {
return userRating;
}
public void setUserRating(Integer value) {
this.userRating = value;
}
public Double getAverageRating() {
return averageRating;
}
public void setAverageRating(Double value) {
this.averageRating = value;
}
public Long getPlayCount() {
return playCount;
}
public void setPlayCount(Long value) {
this.playCount = value;
}
public Integer getDiscNumber() {
return discNumber;
}
public void setDiscNumber(Integer value) {
this.discNumber = value;
}
public Date getCreated() {
return created;
}
public void setCreated(Date value) {
this.created = value;
}
public Date getStarred() {
return starred;
}
public void setStarred(Date value) {
this.starred = value;
}
public String getAlbumId() {
return albumId;
}
public void setAlbumId(String value) {
this.albumId = value;
}
public String getArtistId() {
return artistId;
}
public void setArtistId(String value) {
this.artistId = value;
}
public String getType() {
return type;
}
public void setType(String value) {
this.type = value;
}
public Long getBookmarkPosition() {
return bookmarkPosition;
}
public void setBookmarkPosition(Long value) {
this.bookmarkPosition = value;
}
public Integer getOriginalWidth() {
return originalWidth;
}
public void setOriginalWidth(Integer value) {
this.originalWidth = value;
}
public Integer getOriginalHeight() {
return originalHeight;
}
public void setOriginalHeight(Integer value) {
this.originalHeight = value;
}
}
var originalHeight: Int? = null
) : Parcelable

View file

@ -1,183 +1,128 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.time.LocalDateTime
public class Directory {
protected List<Child> children;
protected String id;
protected String parentId;
protected String name;
protected LocalDateTime starred;
protected Integer userRating;
protected Double averageRating;
protected Long playCount;
class Directory {
protected var children: List<Child>? = null
/**
* Gets the value of the id property.
*
* @return possible object is
* [String]
*/
/**
* Sets the value of the id property.
*
* @param value allowed object is
* [String]
*/
var id: String? = null
/**
* Gets the value of the parentId property.
*
* @return possible object is
* [String]
*/
/**
* Sets the value of the parentId property.
*
* @param value allowed object is
* [String]
*/
var parentId: String? = null
/**
* Gets the value of the name property.
*
* @return possible object is
* [String]
*/
/**
* Sets the value of the name property.
*
* @param value allowed object is
* [String]
*/
var name: String? = null
/**
* Gets the value of the starred property.
*
* @return possible object is
* [String]
*/
/**
* Sets the value of the starred property.
*
* @param value allowed object is
* [String]
*/
var starred: LocalDateTime? = null
/**
* Gets the value of the userRating property.
*
* @return possible object is
* [Integer]
*/
/**
* Sets the value of the userRating property.
*
* @param value allowed object is
* [Integer]
*/
var userRating: Int? = null
/**
* Gets the value of the averageRating property.
*
* @return possible object is
* [Double]
*/
/**
* Sets the value of the averageRating property.
*
* @param value allowed object is
* [Double]
*/
var averageRating: Double? = null
/**
* Gets the value of the playCount property.
*
* @return possible object is
* [Long]
*/
/**
* Sets the value of the playCount property.
*
* @param value allowed object is
* [Long]
*/
var playCount: Long? = null
/**
* Gets the value of the children property.
*
* <p>
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the children property.
*
* <p>
*
*
* For example, to add a new item, do as follows:
* <pre>
* getchildren().add(newItem);
* </pre>
* getchildren().add(newItem);
</pre> *
*
*
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
* [Child]
*/
public List<Child> getchildren() {
fun getchildren(): List<Child>? {
if (children == null) {
children = new ArrayList<>();
children = ArrayList()
}
return this.children;
return children
}
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
*/
public void setId(String value) {
this.id = value;
}
/**
* Gets the value of the parentId property.
*
* @return possible object is
* {@link String }
*/
public String getParentId() {
return parentId;
}
/**
* Sets the value of the parentId property.
*
* @param value allowed object is
* {@link String }
*/
public void setParentId(String value) {
this.parentId = value;
}
/**
* Gets the value of the name property.
*
* @return possible object is
* {@link String }
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value allowed object is
* {@link String }
*/
public void setName(String value) {
this.name = value;
}
/**
* Gets the value of the starred property.
*
* @return possible object is
* {@link String }
*/
public LocalDateTime getStarred() {
return starred;
}
/**
* Sets the value of the starred property.
*
* @param value allowed object is
* {@link String }
*/
public void setStarred(LocalDateTime value) {
this.starred = value;
}
/**
* Gets the value of the userRating property.
*
* @return possible object is
* {@link Integer }
*/
public Integer getUserRating() {
return userRating;
}
/**
* Sets the value of the userRating property.
*
* @param value allowed object is
* {@link Integer }
*/
public void setUserRating(Integer value) {
this.userRating = value;
}
/**
* Gets the value of the averageRating property.
*
* @return possible object is
* {@link Double }
*/
public Double getAverageRating() {
return averageRating;
}
/**
* Sets the value of the averageRating property.
*
* @param value allowed object is
* {@link Double }
*/
public void setAverageRating(Double value) {
this.averageRating = value;
}
/**
* Gets the value of the playCount property.
*
* @return possible object is
* {@link Long }
*/
public Long getPlayCount() {
return playCount;
}
/**
* Sets the value of the playCount property.
*
* @param value allowed object is
* {@link Long }
*/
public void setPlayCount(Long value) {
this.playCount = value;
}
}
}

View file

@ -1,29 +1,14 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.cappielloantonio.play.subsonic.utils.converter.ErrorCodeConverter;
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.cappielloantonio.play.subsonic.utils.converter.ErrorCodeConverter
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class Error {
@Attribute(converter = ErrorCodeConverter.class)
protected ErrorCode code;
class Error {
@Attribute(converter = ErrorCodeConverter::class)
var code: ErrorCode? = null
@Attribute
protected String message;
public ErrorCode getCode() {
return code;
}
public void setCode(ErrorCode value) {
this.code = value;
}
public String getMessage() {
return message;
}
public void setMessage(String value) {
this.message = value;
}
}
var message: String? = null
}

View file

@ -1,23 +1,16 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
public class ErrorCode {
public static int GENERIC_ERROR = 0;
public static int REQUIRED_PARAMETER_MISSING = 10;
public static int INCOMPATIBLE_VERSION_CLIENT = 20;
public static int INCOMPATIBLE_VERSION_SERVER = 30;
public static int WRONG_USERNAME_OR_PASSWORD = 40;
public static int TOKEN_AUTHENTICATION_NOT_SUPPORTED = 41;
public static int USER_NOT_AUTHORIZED = 50;
public static int TRIAL_PERIOD_OVER = 60;
public static int DATA_NOT_FOUND = 70;
class ErrorCode(val value: Int) {
private final int value;
public ErrorCode(int value) {
this.value = value;
companion object {
var GENERIC_ERROR = 0
var REQUIRED_PARAMETER_MISSING = 10
var INCOMPATIBLE_VERSION_CLIENT = 20
var INCOMPATIBLE_VERSION_SERVER = 30
var WRONG_USERNAME_OR_PASSWORD = 40
var TOKEN_AUTHENTICATION_NOT_SUPPORTED = 41
var USER_NOT_AUTHORIZED = 50
var TRIAL_PERIOD_OVER = 60
var DATA_NOT_FOUND = 70
}
public int getValue() {
return value;
}
}
}

View file

@ -1,39 +1,20 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.TextContent;
import com.tickaroo.tikxml.annotation.Xml;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.TextContent
import com.tickaroo.tikxml.annotation.Xml
import kotlinx.android.parcel.Parcelize
@Parcelize
@Xml
public class Genre {
class Genre : Parcelable {
@TextContent
protected String genre;
var genre: String? = null
@Attribute
protected int songCount;
var songCount = 0
@Attribute
protected int albumCount;
public String getGenre() {
return genre;
}
public void setGenre(String value) {
this.genre = value;
}
public int getSongCount() {
return songCount;
}
public void setSongCount(int value) {
this.songCount = value;
}
public int getAlbumCount() {
return albumCount;
}
public void setAlbumCount(int value) {
this.albumCount = value;
}
}
var albumCount = 0
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class Genres {
class Genres {
@Element
protected List<Genre> genres;
public List<Genre> getGenres() {
if (genres == null) {
genres = new ArrayList<>();
}
return this.genres;
}
public void setGenres(List<Genre> genres) {
this.genres = genres;
}
}
var genres: List<Genre>? = null
}

View file

@ -1,56 +1,6 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Index {
protected List<Artist> artists;
protected String name;
/**
* Gets the value of the artists property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the artists property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getArtists().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Artist }
*/
public List<Artist> getArtists() {
if (artists == null) {
artists = new ArrayList<>();
}
return this.artists;
}
/**
* Gets the value of the name property.
*
* @return possible object is
* {@link String }
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value allowed object is
* {@link String }
*/
public void setName(String value) {
this.name = value;
}
}
class Index {
var artists: List<Artist>? = null
var name: String? = null
}

View file

@ -1,33 +1,11 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class IndexID3 {
class IndexID3 {
@Element(name = "artist")
protected List<ArtistID3> artists;
protected String name;
public List<ArtistID3> getArtists() {
if (artists == null) {
artists = new ArrayList<>();
}
return this.artists;
}
public void setArtists(List<ArtistID3> artists) {
this.artists = artists;
}
public String getName() {
return name;
}
public void setName(String value) {
this.name = value;
}
}
var artists: List<ArtistID3>? = null
var name: String? = null
}

View file

@ -1,127 +1,9 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Indexes {
protected List<Artist> shortcuts;
protected List<Index> indices;
protected List<Child> children;
protected long lastModified;
protected String ignoredArticles;
/**
* Gets the value of the shortcuts property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the shortcuts property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getShortcuts().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Artist }
*/
public List<Artist> getShortcuts() {
if (shortcuts == null) {
shortcuts = new ArrayList<>();
}
return this.shortcuts;
}
/**
* Gets the value of the indices property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the indices property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getIndices().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Index }
*/
public List<Index> getIndices() {
if (indices == null) {
indices = new ArrayList<>();
}
return this.indices;
}
/**
* Gets the value of the children property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the children property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getchildren().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getchildren() {
if (children == null) {
children = new ArrayList<>();
}
return this.children;
}
/**
* Gets the value of the lastModified property.
*/
public long getLastModified() {
return lastModified;
}
/**
* Sets the value of the lastModified property.
*/
public void setLastModified(long value) {
this.lastModified = value;
}
/**
* Gets the value of the ignoredArticles property.
*
* @return possible object is
* {@link String }
*/
public String getIgnoredArticles() {
return ignoredArticles;
}
/**
* Sets the value of the ignoredArticles property.
*
* @param value allowed object is
* {@link String }
*/
public void setIgnoredArticles(String value) {
this.ignoredArticles = value;
}
}
class Indexes {
var shortcuts: List<Artist>? = null
var indices: List<Index>? = null
var children: List<Child>? = null
var lastModified: Long = 0
var ignoredArticles: String? = null
}

View file

@ -1,88 +1,56 @@
package com.cappielloantonio.play.subsonic.models;
public class InternetRadioStation {
protected String id;
protected String name;
protected String streamUrl;
protected String homePageUrl;
package com.cappielloantonio.play.subsonic.models
class InternetRadioStation {
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setId(String value) {
this.id = value;
}
var id: String? = null
/**
* Gets the value of the name property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getName() {
return name;
}
/**
* Sets the value of the name property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setName(String value) {
this.name = value;
}
var name: String? = null
/**
* Gets the value of the streamUrl property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getStreamUrl() {
return streamUrl;
}
/**
* Sets the value of the streamUrl property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setStreamUrl(String value) {
this.streamUrl = value;
}
var streamUrl: String? = null
/**
* Gets the value of the homePageUrl property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getHomePageUrl() {
return homePageUrl;
}
/**
* Sets the value of the homePageUrl property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setHomePageUrl(String value) {
this.homePageUrl = value;
}
}
var homePageUrl: String? = null
}

View file

@ -1,36 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class InternetRadioStations {
protected List<InternetRadioStation> internetRadioStations;
/**
* Gets the value of the internetRadioStations property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the internetRadioStations property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getInternetRadioStations().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link InternetRadioStation }
*/
public List<InternetRadioStation> getInternetRadioStations() {
if (internetRadioStations == null) {
internetRadioStations = new ArrayList<>();
}
return this.internetRadioStations;
}
}
class InternetRadioStations {
var internetRadioStations: List<InternetRadioStation>? = null
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class JukeboxPlaylist extends JukeboxStatus {
protected List<Child> entries;
/**
* Gets the value of the entries property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the entries property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEntries().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getEntries() {
if (entries == null) {
entries = new ArrayList<>();
}
return this.entries;
}
}
class JukeboxPlaylist : JukeboxStatus() {
var entries: List<Child>? = null
}

View file

@ -1,70 +1,38 @@
package com.cappielloantonio.play.subsonic.models;
public class JukeboxStatus {
protected int currentIndex;
protected boolean playing;
protected float gain;
protected Integer position;
package com.cappielloantonio.play.subsonic.models
open class JukeboxStatus {
/**
* Gets the value of the currentIndex property.
*/
public int getCurrentIndex() {
return currentIndex;
}
/**
* Sets the value of the currentIndex property.
*/
public void setCurrentIndex(int value) {
this.currentIndex = value;
}
var currentIndex = 0
/**
* Gets the value of the playing property.
*/
public boolean isPlaying() {
return playing;
}
/**
* Sets the value of the playing property.
*/
public void setPlaying(boolean value) {
this.playing = value;
}
var isPlaying = false
/**
* Gets the value of the gain property.
*/
public float getGain() {
return gain;
}
/**
* Sets the value of the gain property.
*/
public void setGain(float value) {
this.gain = value;
}
var gain = 0f
/**
* Gets the value of the position property.
*
* @return possible object is
* {@link Integer }
* [Integer]
*/
public Integer getPosition() {
return position;
}
/**
* Sets the value of the position property.
*
* @param value allowed object is
* {@link Integer }
* [Integer]
*/
public void setPosition(Integer value) {
this.position = value;
}
}
var position: Int? = null
}

View file

@ -1,84 +1,52 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
public class License {
protected boolean valid;
protected String email;
protected LocalDateTime licenseExpires;
protected LocalDateTime trialExpires;
import java.time.LocalDateTime
class License {
/**
* Gets the value of the valid property.
*/
public boolean isValid() {
return valid;
}
/**
* Sets the value of the valid property.
*/
public void setValid(boolean value) {
this.valid = value;
}
var isValid = false
/**
* Gets the value of the email property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getEmail() {
return email;
}
/**
* Sets the value of the email property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setEmail(String value) {
this.email = value;
}
var email: String? = null
/**
* Gets the value of the licenseExpires property.
*
* @return possible object is
* {@link String }
* [String]
*/
public LocalDateTime getLicenseExpires() {
return licenseExpires;
}
/**
* Sets the value of the licenseExpires property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setLicenseExpires(LocalDateTime value) {
this.licenseExpires = value;
}
var licenseExpires: LocalDateTime? = null
/**
* Gets the value of the trialExpires property.
*
* @return possible object is
* {@link String }
* [String]
*/
public LocalDateTime getTrialExpires() {
return trialExpires;
}
/**
* Sets the value of the trialExpires property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setTrialExpires(LocalDateTime value) {
this.trialExpires = value;
}
}
var trialExpires: LocalDateTime? = null
}

View file

@ -1,39 +1,17 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.TextContent;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.TextContent
import com.tickaroo.tikxml.annotation.Xml
@Xml(name = "lyrics")
public class Lyrics {
class Lyrics {
@TextContent
protected String content;
var content: String? = null
@Attribute
protected String artist;
var artist: String? = null
@Attribute
protected String title;
public String getContent() {
return content;
}
public void setContent(String value) {
this.content = value;
}
public String getArtist() {
return artist;
}
public void setArtist(String value) {
this.artist = value;
}
public String getTitle() {
return title;
}
public void setTitle(String value) {
this.title = value;
}
}
var title: String? = null
}

View file

@ -1,23 +1,17 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class MediaType {
public static String MUSIC = "music";
public static String PODCAST = "podcast";
public static String AUDIOBOOK = "audiobook";
public static String VIDEO = "video";
class MediaType {
@Attribute
private String value;
var value: String? = null
public String getValue() {
return value;
companion object {
var MUSIC = "music"
var PODCAST = "podcast"
var AUDIOBOOK = "audiobook"
var VIDEO = "video"
}
public void setValue(String value) {
this.value = value;
}
}
}

View file

@ -1,28 +1,13 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class MusicFolder {
class MusicFolder {
@Attribute
protected int id;
var id = 0
@Attribute
protected String name;
public int getId() {
return id;
}
public void setId(int value) {
this.id = value;
}
public String getName() {
return name;
}
public void setName(String value) {
this.name = value;
}
}
var name: String? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class MusicFolders {
class MusicFolders {
@Element
protected List<MusicFolder> musicFolders;
public List<MusicFolder> getMusicFolders() {
if (musicFolders == null) {
musicFolders = new ArrayList<>();
}
return this.musicFolders;
}
public void setMusicFolders(List<MusicFolder> musicFolders) {
this.musicFolders = musicFolders;
}
}
var musicFolders: List<MusicFolder>? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class NewestPodcasts {
class NewestPodcasts {
@Element(name = "episode")
protected List<PodcastEpisode> episodes;
public List<PodcastEpisode> getEpisodes() {
if (episodes == null) {
episodes = new ArrayList<>();
}
return this.episodes;
}
public void setEpisodes(List<PodcastEpisode> episodes) {
this.episodes = episodes;
}
}
var episodes: List<PodcastEpisode>? = null
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class NowPlaying {
protected List<NowPlayingEntry> entries;
/**
* Gets the value of the entries property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the entries property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEntries().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link NowPlayingEntry }
*/
public List<NowPlayingEntry> getEntries() {
if (entries == null) {
entries = new ArrayList<>();
}
return this.entries;
}
}
class NowPlaying {
var entries: List<NowPlayingEntry>? = null
}

View file

@ -1,76 +1,11 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
public class NowPlayingEntry extends Child {
protected String username;
protected int minutesAgo;
protected int playerId;
protected String playerName;
import kotlinx.android.parcel.Parcelize
/**
* Gets the value of the username property.
*
* @return possible object is
* {@link String }
*/
public String getUsername() {
return username;
}
/**
* Sets the value of the username property.
*
* @param value allowed object is
* {@link String }
*/
public void setUsername(String value) {
this.username = value;
}
/**
* Gets the value of the minutesAgo property.
*/
public int getMinutesAgo() {
return minutesAgo;
}
/**
* Sets the value of the minutesAgo property.
*/
public void setMinutesAgo(int value) {
this.minutesAgo = value;
}
/**
* Gets the value of the playerId property.
*/
public int getPlayerId() {
return playerId;
}
/**
* Sets the value of the playerId property.
*/
public void setPlayerId(int value) {
this.playerId = value;
}
/**
* Gets the value of the playerName property.
*
* @return possible object is
* {@link String }
*/
public String getPlayerName() {
return playerName;
}
/**
* Sets the value of the playerName property.
*
* @param value allowed object is
* {@link String }
*/
public void setPlayerName(String value) {
this.playerName = value;
}
}
@Parcelize
class NowPlayingEntry(override val id: String) : Child(id) {
var username: String? = null
var minutesAgo = 0
var playerId = 0
var playerName: String? = null
}

View file

@ -1,443 +0,0 @@
package com.cappielloantonio.play.subsonic.models;
public class ObjectFactory {
/**
* Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: org.subsonic.restapi
*/
public ObjectFactory() {
}
/**
* Create an instance of {@link SubsonicResponse }
*/
public SubsonicResponse createSubsonicResponse() {
return new SubsonicResponse();
}
/**
* Create an instance of {@link Error }
*/
public Error createError() {
return new Error();
}
/**
* Create an instance of {@link ScanStatus }
*/
public ScanStatus createScanStatus() {
return new ScanStatus();
}
/**
* Create an instance of {@link TopSongs }
*/
public TopSongs createTopSongs() {
return new TopSongs();
}
/**
* Create an instance of {@link SimilarSongs2 }
*/
public SimilarSongs2 createSimilarSongs2() {
return new SimilarSongs2();
}
/**
* Create an instance of {@link SimilarSongs }
*/
public SimilarSongs createSimilarSongs() {
return new SimilarSongs();
}
/**
* Create an instance of {@link ArtistInfo2 }
*/
public ArtistInfo2 createArtistInfo2() {
return new ArtistInfo2();
}
/**
* Create an instance of {@link ArtistInfo }
*/
public ArtistInfo createArtistInfo() {
return new ArtistInfo();
}
/**
* Create an instance of {@link AlbumInfo }
*/
public AlbumInfo createAlbumInfo() {
return new AlbumInfo();
}
/**
* Create an instance of {@link Starred2 }
*/
public Starred2 createStarred2() {
return new Starred2();
}
/**
* Create an instance of {@link Starred }
*/
public Starred createStarred() {
return new Starred();
}
/**
* Create an instance of {@link Shares }
*/
public Shares createShares() {
return new Shares();
}
/**
* Create an instance of {@link PlayQueue }
*/
public PlayQueue createPlayQueue() {
return new PlayQueue();
}
/**
* Create an instance of {@link Bookmarks }
*/
public Bookmarks createBookmarks() {
return new Bookmarks();
}
/**
* Create an instance of {@link InternetRadioStations }
*/
public InternetRadioStations createInternetRadioStations() {
return new InternetRadioStations();
}
/**
* Create an instance of {@link NewestPodcasts }
*/
public NewestPodcasts createNewestPodcasts() {
return new NewestPodcasts();
}
/**
* Create an instance of {@link Podcasts }
*/
public Podcasts createPodcasts() {
return new Podcasts();
}
/**
* Create an instance of {@link Lyrics }
*/
public Lyrics createLyrics() {
return new Lyrics();
}
/**
* Create an instance of {@link Songs }
*/
public Songs createSongs() {
return new Songs();
}
/**
* Create an instance of {@link AlbumList2 }
*/
public AlbumList2 createAlbumList2() {
return new AlbumList2();
}
/**
* Create an instance of {@link AlbumList }
*/
public AlbumList createAlbumList() {
return new AlbumList();
}
/**
* Create an instance of {@link ChatMessages }
*/
public ChatMessages createChatMessages() {
return new ChatMessages();
}
/**
* Create an instance of {@link User }
*/
public User createUser() {
return new User();
}
/**
* Create an instance of {@link Users }
*/
public Users createUsers() {
return new Users();
}
/**
* Create an instance of {@link License }
*/
public License createLicense() {
return new License();
}
/**
* Create an instance of {@link JukeboxPlaylist }
*/
public JukeboxPlaylist createJukeboxPlaylist() {
return new JukeboxPlaylist();
}
/**
* Create an instance of {@link JukeboxStatus }
*/
public JukeboxStatus createJukeboxStatus() {
return new JukeboxStatus();
}
/**
* Create an instance of {@link PlaylistWithSongs }
*/
public PlaylistWithSongs createPlaylistWithSongs() {
return new PlaylistWithSongs();
}
/**
* Create an instance of {@link Playlists }
*/
public Playlists createPlaylists() {
return new Playlists();
}
/**
* Create an instance of {@link SearchResult3 }
*/
public SearchResult3 createSearchResult3() {
return new SearchResult3();
}
/**
* Create an instance of {@link SearchResult2 }
*/
public SearchResult2 createSearchResult2() {
return new SearchResult2();
}
/**
* Create an instance of {@link SearchResult }
*/
public SearchResult createSearchResult() {
return new SearchResult();
}
/**
* Create an instance of {@link NowPlaying }
*/
public NowPlaying createNowPlaying() {
return new NowPlaying();
}
/**
* Create an instance of {@link VideoInfo }
*/
public VideoInfo createVideoInfo() {
return new VideoInfo();
}
/**
* Create an instance of {@link Videos }
*/
public Videos createVideos() {
return new Videos();
}
/**
* Create an instance of {@link Child }
*/
public Child createChild() {
return new Child();
}
/**
* Create an instance of {@link AlbumWithSongsID3 }
*/
public AlbumWithSongsID3 createAlbumWithSongsID3() {
return new AlbumWithSongsID3();
}
/**
* Create an instance of {@link ArtistWithAlbumsID3 }
*/
public ArtistWithAlbumsID3 createArtistWithAlbumsID3() {
return new ArtistWithAlbumsID3();
}
/**
* Create an instance of {@link ArtistsID3 }
*/
public ArtistsID3 createArtistsID3() {
return new ArtistsID3();
}
/**
* Create an instance of {@link Genres }
*/
public Genres createGenres() {
return new Genres();
}
/**
* Create an instance of {@link Directory }
*/
public Directory createDirectory() {
return new Directory();
}
/**
* Create an instance of {@link Indexes }
*/
public Indexes createIndexes() {
return new Indexes();
}
/**
* Create an instance of {@link MusicFolders }
*/
public MusicFolders createMusicFolders() {
return new MusicFolders();
}
/**
* Create an instance of {@link MusicFolder }
*/
public MusicFolder createMusicFolder() {
return new MusicFolder();
}
/**
* Create an instance of {@link Index }
*/
public Index createIndex() {
return new Index();
}
/**
* Create an instance of {@link Artist }
*/
public Artist createArtist() {
return new Artist();
}
/**
* Create an instance of {@link Genre }
*/
public Genre createGenre() {
return new Genre();
}
/**
* Create an instance of {@link IndexID3 }
*/
public IndexID3 createIndexID3() {
return new IndexID3();
}
/**
* Create an instance of {@link ArtistID3 }
*/
public ArtistID3 createArtistID3() {
return new ArtistID3();
}
/**
* Create an instance of {@link AlbumID3 }
*/
public AlbumID3 createAlbumID3() {
return new AlbumID3();
}
/**
* Create an instance of {@link Captions }
*/
public Captions createCaptions() {
return new Captions();
}
/**
* Create an instance of {@link AudioTrack }
*/
public AudioTrack createAudioTrack() {
return new AudioTrack();
}
/**
* Create an instance of {@link VideoConversion }
*/
public VideoConversion createVideoConversion() {
return new VideoConversion();
}
/**
* Create an instance of {@link NowPlayingEntry }
*/
public NowPlayingEntry createNowPlayingEntry() {
return new NowPlayingEntry();
}
/**
* Create an instance of {@link Playlist }
*/
public Playlist createPlaylist() {
return new Playlist();
}
/**
* Create an instance of {@link ChatMessage }
*/
public ChatMessage createChatMessage() {
return new ChatMessage();
}
/**
* Create an instance of {@link PodcastChannel }
*/
public PodcastChannel createPodcastChannel() {
return new PodcastChannel();
}
/**
* Create an instance of {@link PodcastEpisode }
*/
public PodcastEpisode createPodcastEpisode() {
return new PodcastEpisode();
}
/**
* Create an instance of {@link InternetRadioStation }
*/
public InternetRadioStation createInternetRadioStation() {
return new InternetRadioStation();
}
/**
* Create an instance of {@link Bookmark }
*/
public Bookmark createBookmark() {
return new Bookmark();
}
/**
* Create an instance of {@link Share }
*/
public Share createShare() {
return new Share();
}
/**
* Create an instance of {@link ArtistInfoBase }
*/
public ArtistInfoBase createArtistInfoBase() {
return new ArtistInfoBase();
}
}

View file

@ -1,141 +1,12 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.time.LocalDateTime
public class PlayQueue {
protected List<Child> entries;
protected Integer current;
protected Long position;
protected String username;
protected LocalDateTime changed;
protected String changedBy;
/**
* Gets the value of the entries property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the entries property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEntries().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getEntries() {
if (entries == null) {
entries = new ArrayList<>();
}
return this.entries;
}
/**
* Gets the value of the current property.
*
* @return possible object is
* {@link Integer }
*/
public Integer getCurrent() {
return current;
}
/**
* Sets the value of the current property.
*
* @param value allowed object is
* {@link Integer }
*/
public void setCurrent(Integer value) {
this.current = value;
}
/**
* Gets the value of the position property.
*
* @return possible object is
* {@link Long }
*/
public Long getPosition() {
return position;
}
/**
* Sets the value of the position property.
*
* @param value allowed object is
* {@link Long }
*/
public void setPosition(Long value) {
this.position = value;
}
/**
* Gets the value of the username property.
*
* @return possible object is
* {@link String }
*/
public String getUsername() {
return username;
}
/**
* Sets the value of the username property.
*
* @param value allowed object is
* {@link String }
*/
public void setUsername(String value) {
this.username = value;
}
/**
* Gets the value of the changed property.
*
* @return possible object is
* {@link String }
*/
public LocalDateTime getChanged() {
return changed;
}
/**
* Sets the value of the changed property.
*
* @param value allowed object is
* {@link String }
*/
public void setChanged(LocalDateTime value) {
this.changed = value;
}
/**
* Gets the value of the changedBy property.
*
* @return possible object is
* {@link String }
*/
public String getChangedBy() {
return changedBy;
}
/**
* Sets the value of the changedBy property.
*
* @param value allowed object is
* {@link String }
*/
public void setChangedBy(String value) {
this.changedBy = value;
}
}
class PlayQueue {
var entries: List<Child>? = null
var current: Int? = null
var position: Long? = null
var username: String? = null
var changed: LocalDateTime? = null
var changedBy: String? = null
}

View file

@ -1,125 +1,64 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import android.os.Parcelable
import androidx.room.ColumnInfo
import androidx.room.Entity
import androidx.room.Ignore
import androidx.room.PrimaryKey
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter
import kotlinx.android.parcel.Parcelize
import java.util.*
@Parcelize
@Entity(tableName = "playlist")
@Xml
public class Playlist {
protected List<String> allowedUsers;
open class Playlist : Parcelable {
@PrimaryKey
@ColumnInfo(name = "id")
@Attribute
protected String id;
lateinit var id: String
@ColumnInfo(name = "name")
@Attribute
protected String name;
var name: String? = null
@Ignore
@Attribute
protected String comment;
var comment: String? = null
@Ignore
@Attribute
protected String owner;
var owner: String? = null
@Ignore
@Attribute(name = "public")
protected Boolean universal;
var isUniversal: Boolean? = null
@Ignore
@Attribute
protected int songCount;
var songCount: Int = 0
@Ignore
@ColumnInfo(name = "duration")
@Attribute
protected int duration;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date created;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date changed;
var duration: Long = 0
@Ignore
@Attribute(converter = DateRfc3339TypeConverter::class)
var created: Date? = null
@Ignore
@Attribute(converter = DateRfc3339TypeConverter::class)
var changed: Date? = null
@Ignore
@ColumnInfo(name = "coverArt")
@Attribute
protected String coverArtId;
var coverArtId: String? = null
public List<String> getAllowedUsers() {
if (allowedUsers == null) {
allowedUsers = new ArrayList<>();
}
return this.allowedUsers;
}
public void setAllowedUsers(List<String> allowedUsers) {
this.allowedUsers = allowedUsers;
}
public String getId() {
return id;
}
public void setId(String value) {
this.id = value;
}
public String getName() {
return name;
}
public void setName(String value) {
this.name = value;
}
public String getComment() {
return comment;
}
public void setComment(String value) {
this.comment = value;
}
public String getOwner() {
return owner;
}
public void setOwner(String value) {
this.owner = value;
}
public Boolean isUniversal() {
return universal;
}
public void setUniversal(Boolean value) {
this.universal = value;
}
public int getSongCount() {
return songCount;
}
public void setSongCount(int value) {
this.songCount = value;
}
public int getDuration() {
return duration;
}
public void setDuration(int value) {
this.duration = value;
}
public Date getCreated() {
return created;
}
public void setCreated(Date value) {
this.created = value;
}
public Date getChanged() {
return changed;
}
public void setChanged(Date value) {
this.changed = value;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String value) {
this.coverArtId = value;
}
}
@Ignore
@Attribute
var allowedUsers: List<String>? = null
}

View file

@ -1,24 +1,13 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
import kotlinx.android.parcel.Parcelize
@Parcelize
@Xml
public class PlaylistWithSongs extends Playlist {
class PlaylistWithSongs : Playlist(), Parcelable {
@Element(name = "entry")
protected List<Child> entries;
public List<Child> getEntries() {
if (entries == null) {
entries = new ArrayList<>();
}
return this.entries;
}
public void setEntries(List<Child> entries) {
this.entries = entries;
}
}
var entries: List<Child>? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class Playlists {
class Playlists {
@Element(name = "playlist")
protected List<Playlist> playlists;
public List<Playlist> getPlaylists() {
if (playlists == null) {
playlists = new ArrayList<>();
}
return this.playlists;
}
public void setPlaylists(List<Playlist> playlists) {
this.playlists = playlists;
}
}
var playlists: List<Playlist>? = null
}

View file

@ -1,105 +1,38 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
import kotlinx.android.parcel.Parcelize
@Parcelize
@Xml
public class PodcastChannel {
class PodcastChannel : Parcelable {
@Element(name = "episode")
protected List<PodcastEpisode> episodes;
var episodes: List<PodcastEpisode>? = null
@Attribute
protected String id;
var id: String? = null
@Attribute
protected String url;
var url: String? = null
@Attribute
protected String title;
var title: String? = null
@Attribute
protected String description;
var description: String? = null
@Attribute
protected String coverArtId;
var coverArtId: String? = null
@Attribute
protected String originalImageUrl;
var originalImageUrl: String? = null
@Attribute
protected String status;
var status: String? = null
@Attribute
protected String errorMessage;
public List<PodcastEpisode> getEpisodes() {
if (episodes == null) {
episodes = new ArrayList<>();
}
return this.episodes;
}
public void setEpisodes(List<PodcastEpisode> episodes) {
this.episodes = episodes;
}
public String getId() {
return id;
}
public void setId(String value) {
this.id = value;
}
public String getUrl() {
return url;
}
public void setUrl(String value) {
this.url = value;
}
public String getTitle() {
return title;
}
public void setTitle(String value) {
this.title = value;
}
public String getDescription() {
return description;
}
public void setDescription(String value) {
this.description = value;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String value) {
this.coverArtId = value;
}
public String getOriginalImageUrl() {
return originalImageUrl;
}
public void setOriginalImageUrl(String value) {
this.originalImageUrl = value;
}
public String getStatus() {
return status;
}
public void setStatus(String value) {
this.status = value;
}
public String getErrorMessage() {
return errorMessage;
}
public void setErrorMessage(String value) {
this.errorMessage = value;
}
}
var errorMessage: String? = null
}

View file

@ -1,372 +1,120 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter;
import java.util.Date;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
import com.tickaroo.tikxml.converters.date.rfc3339.DateRfc3339TypeConverter
import kotlinx.android.parcel.Parcelize
import java.util.*
@Parcelize
@Xml
public class PodcastEpisode {
class PodcastEpisode : Parcelable {
@Attribute
protected String id;
var id: String? = null
@Attribute(name = "parent")
protected String parentId;
var parentId: String? = null
@Attribute(name = "isDir")
protected boolean dir;
var isDir = false
@Attribute
protected String title;
var title: String? = null
@Attribute
protected String album;
var album: String? = null
@Attribute
protected String artist;
var artist: String? = null
@Attribute
protected Integer track;
var track: Int? = null
@Attribute
protected Integer year;
var year: Int? = null
@Attribute(name = "genre")
protected String genre;
var genre: String? = null
@Attribute(name = "coverArt")
protected String coverArtId;
var coverArtId: String? = null
@Attribute
protected Long size;
var size: Long? = null
@Attribute
protected String contentType;
var contentType: String? = null
@Attribute
protected String suffix;
var suffix: String? = null
@Attribute
protected String transcodedContentType;
var transcodedContentType: String? = null
@Attribute
protected String transcodedSuffix;
var transcodedSuffix: String? = null
@Attribute
protected Integer duration;
var duration: Int? = null
@Attribute
protected Integer bitRate;
var bitRate: Int? = null
@Attribute
protected String path;
var path: String? = null
@Attribute(name = "isVideo")
protected Boolean video;
@Attribute
protected Integer userRating;
@Attribute
protected Double averageRating;
@Attribute
protected Long playCount;
@Attribute
protected Integer discNumber;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date created;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date starred;
@Attribute
protected String albumId;
@Attribute
protected String artistId;
@Attribute
protected String type;
@Attribute
protected Long bookmarkPosition;
@Attribute
protected Integer originalWidth;
@Attribute
protected Integer originalHeight;
var video: Boolean? = null
@Attribute
protected String streamId;
var userRating: Int? = null
@Attribute
protected String channelId;
var averageRating: Double? = null
@Attribute
protected String description;
var playCount: Long? = null
@Attribute
protected String status;
@Attribute(converter = DateRfc3339TypeConverter.class)
protected Date publishDate;
var discNumber: Int? = null
public String getId() {
return id;
}
@Attribute(converter = DateRfc3339TypeConverter::class)
var created: Date? = null
public void setId(String id) {
this.id = id;
}
@Attribute(converter = DateRfc3339TypeConverter::class)
var starred: Date? = null
public String getParentId() {
return parentId;
}
@Attribute
var albumId: String? = null
public void setParentId(String parentId) {
this.parentId = parentId;
}
@Attribute
var artistId: String? = null
public boolean isDir() {
return dir;
}
@Attribute
var type: String? = null
public void setDir(boolean dir) {
this.dir = dir;
}
@Attribute
var bookmarkPosition: Long? = null
public String getTitle() {
return title;
}
@Attribute
var originalWidth: Int? = null
public void setTitle(String title) {
this.title = title;
}
@Attribute
var originalHeight: Int? = null
public String getAlbum() {
return album;
}
@Attribute
var streamId: String? = null
public void setAlbum(String album) {
this.album = album;
}
@Attribute
var channelId: String? = null
public String getArtist() {
return artist;
}
@Attribute
var description: String? = null
public void setArtist(String artist) {
this.artist = artist;
}
@Attribute
var status: String? = null
public Integer getTrack() {
return track;
}
public void setTrack(Integer track) {
this.track = track;
}
public Integer getYear() {
return year;
}
public void setYear(Integer year) {
this.year = year;
}
public String getGenre() {
return genre;
}
public void setGenre(String genre) {
this.genre = genre;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String coverArtId) {
this.coverArtId = coverArtId;
}
public Long getSize() {
return size;
}
public void setSize(Long size) {
this.size = size;
}
public String getContentType() {
return contentType;
}
public void setContentType(String contentType) {
this.contentType = contentType;
}
public String getSuffix() {
return suffix;
}
public void setSuffix(String suffix) {
this.suffix = suffix;
}
public String getTranscodedContentType() {
return transcodedContentType;
}
public void setTranscodedContentType(String transcodedContentType) {
this.transcodedContentType = transcodedContentType;
}
public String getTranscodedSuffix() {
return transcodedSuffix;
}
public void setTranscodedSuffix(String transcodedSuffix) {
this.transcodedSuffix = transcodedSuffix;
}
public Integer getDuration() {
return duration;
}
public void setDuration(Integer duration) {
this.duration = duration;
}
public Integer getBitRate() {
return bitRate;
}
public void setBitRate(Integer bitRate) {
this.bitRate = bitRate;
}
public String getPath() {
return path;
}
public void setPath(String path) {
this.path = path;
}
public Boolean getVideo() {
return video;
}
public void setVideo(Boolean video) {
this.video = video;
}
public Integer getUserRating() {
return userRating;
}
public void setUserRating(Integer userRating) {
this.userRating = userRating;
}
public Double getAverageRating() {
return averageRating;
}
public void setAverageRating(Double averageRating) {
this.averageRating = averageRating;
}
public Long getPlayCount() {
return playCount;
}
public void setPlayCount(Long playCount) {
this.playCount = playCount;
}
public Integer getDiscNumber() {
return discNumber;
}
public void setDiscNumber(Integer discNumber) {
this.discNumber = discNumber;
}
public Date getCreated() {
return created;
}
public void setCreated(Date created) {
this.created = created;
}
public Date getStarred() {
return starred;
}
public void setStarred(Date starred) {
this.starred = starred;
}
public String getAlbumId() {
return albumId;
}
public void setAlbumId(String albumId) {
this.albumId = albumId;
}
public String getArtistId() {
return artistId;
}
public void setArtistId(String artistId) {
this.artistId = artistId;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public Long getBookmarkPosition() {
return bookmarkPosition;
}
public void setBookmarkPosition(Long bookmarkPosition) {
this.bookmarkPosition = bookmarkPosition;
}
public Integer getOriginalWidth() {
return originalWidth;
}
public void setOriginalWidth(Integer originalWidth) {
this.originalWidth = originalWidth;
}
public Integer getOriginalHeight() {
return originalHeight;
}
public void setOriginalHeight(Integer originalHeight) {
this.originalHeight = originalHeight;
}
public String getStreamId() {
return streamId;
}
public void setStreamId(String value) {
this.streamId = value;
}
public String getChannelId() {
return channelId;
}
public void setChannelId(String value) {
this.channelId = value;
}
public String getDescription() {
return description;
}
public void setDescription(String value) {
this.description = value;
}
public String getStatus() {
return status;
}
public void setStatus(String value) {
this.status = value;
}
public Date getPublishDate() {
return publishDate;
}
public void setPublishDate(Date value) {
this.publishDate = value;
}
}
@Attribute(converter = DateRfc3339TypeConverter::class)
var publishDate: Date? = null
}

View file

@ -1,25 +1,19 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class PodcastStatus {
public static String NEW = "new";
public static String DOWNLOADING = "downloading";
public static String COMPLETED = "completed";
public static String ERROR = "error";
public static String DELETED = "deleted";
public static String SKIPPED = "skipped";
class PodcastStatus {
@Attribute
private String value;
var value: String? = null
public String getValue() {
return value;
companion object {
var NEW = "new"
var DOWNLOADING = "downloading"
var COMPLETED = "completed"
var ERROR = "error"
var DELETED = "deleted"
var SKIPPED = "skipped"
}
public void setValue(String value) {
this.value = value;
}
}
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class Podcasts {
class Podcasts {
@Element(name = "channel")
protected List<PodcastChannel> channels;
public List<PodcastChannel> getChannels() {
if (channels == null) {
channels = new ArrayList<>();
}
return this.channels;
}
public void setChannels(List<PodcastChannel> channels) {
this.channels = channels;
}
}
var channels: List<PodcastChannel>? = null
}

View file

@ -1,20 +1,16 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class ResponseStatus {
public static String OK = "ok";
public static String FAILED = "failed";
class ResponseStatus(@param:Attribute val value: String) {
private final String value;
companion object {
@JvmField
var OK = "ok"
public ResponseStatus(@Attribute String value) {
this.value = value;
@JvmField
var FAILED = "failed"
}
public String getValue() {
return value;
}
}
}

View file

@ -1,28 +1,13 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class ScanStatus {
class ScanStatus {
@Attribute
protected boolean scanning;
var isScanning = false
@Attribute
protected Long count;
public boolean isScanning() {
return scanning;
}
public void setScanning(boolean value) {
this.scanning = value;
}
public Long getCount() {
return count;
}
public void setCount(Long value) {
this.count = value;
}
}
var count: Long? = null
}

View file

@ -1,65 +1,7 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class SearchResult {
protected List<Child> matches;
protected int offset;
protected int totalHits;
/**
* Gets the value of the matches property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the matches property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getMatches().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getMatches() {
if (matches == null) {
matches = new ArrayList<>();
}
return this.matches;
}
/**
* Gets the value of the offset property.
*/
public int getOffset() {
return offset;
}
/**
* Sets the value of the offset property.
*/
public void setOffset(int value) {
this.offset = value;
}
/**
* Gets the value of the totalHits property.
*/
public int getTotalHits() {
return totalHits;
}
/**
* Sets the value of the totalHits property.
*/
public void setTotalHits(int value) {
this.totalHits = value;
}
}
class SearchResult {
var matches: List<Child>? = null
var offset = 0
var totalHits = 0
}

View file

@ -1,50 +1,16 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class SearchResult2 {
class SearchResult2 {
@Element(name = "artist")
protected List<Artist> artists;
var artists: List<Artist>? = null
@Element(name = "album")
protected List<Child> albums;
var albums: List<Child>? = null
@Element(name = "song")
protected List<Child> songs;
public List<Artist> getArtists() {
if (artists == null) {
artists = new ArrayList<>();
}
return this.artists;
}
public void setArtists(List<Artist> artists) {
this.artists = artists;
}
public List<Child> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
public void setAlbums(List<Child> albums) {
this.albums = albums;
}
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,50 +1,16 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class SearchResult3 {
class SearchResult3 {
@Element(name = "artist")
protected List<ArtistID3> artists;
var artists: List<ArtistID3>? = null
@Element(name = "album")
protected List<AlbumID3> albums;
var albums: List<AlbumID3>? = null
@Element(name = "song")
protected List<Child> songs;
public List<ArtistID3> getArtists() {
if (artists == null) {
artists = new ArrayList<>();
}
return this.artists;
}
public List<AlbumID3> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setArtists(List<ArtistID3> artists) {
this.artists = artists;
}
public void setAlbums(List<AlbumID3> albums) {
this.albums = albums;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,198 +1,15 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.time.LocalDateTime
public class Share {
protected List<Child> entries;
protected String id;
protected String url;
protected String description;
protected String username;
protected LocalDateTime created;
protected LocalDateTime expires;
protected LocalDateTime lastVisited;
protected int visitCount;
/**
* Gets the value of the entries property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the entries property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getEntries().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getEntries() {
if (entries == null) {
entries = new ArrayList<>();
}
return this.entries;
}
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
*/
public void setId(String value) {
this.id = value;
}
/**
* Gets the value of the url property.
*
* @return possible object is
* {@link String }
*/
public String getUrl() {
return url;
}
/**
* Sets the value of the url property.
*
* @param value allowed object is
* {@link String }
*/
public void setUrl(String value) {
this.url = value;
}
/**
* Gets the value of the description property.
*
* @return possible object is
* {@link String }
*/
public String getDescription() {
return description;
}
/**
* Sets the value of the description property.
*
* @param value allowed object is
* {@link String }
*/
public void setDescription(String value) {
this.description = value;
}
/**
* Gets the value of the username property.
*
* @return possible object is
* {@link String }
*/
public String getUsername() {
return username;
}
/**
* Sets the value of the username property.
*
* @param value allowed object is
* {@link String }
*/
public void setUsername(String value) {
this.username = value;
}
/**
* Gets the value of the created property.
*
* @return possible object is
* {@link String }
*/
public LocalDateTime getCreated() {
return created;
}
/**
* Sets the value of the created property.
*
* @param value allowed object is
* {@link String }
*/
public void setCreated(LocalDateTime value) {
this.created = value;
}
/**
* Gets the value of the expires property.
*
* @return possible object is
* {@link String }
*/
public LocalDateTime getExpires() {
return expires;
}
/**
* Sets the value of the expires property.
*
* @param value allowed object is
* {@link String }
*/
public void setExpires(LocalDateTime value) {
this.expires = value;
}
/**
* Gets the value of the lastVisited property.
*
* @return possible object is
* {@link String }
*/
public LocalDateTime getLastVisited() {
return lastVisited;
}
/**
* Sets the value of the lastVisited property.
*
* @param value allowed object is
* {@link String }
*/
public void setLastVisited(LocalDateTime value) {
this.lastVisited = value;
}
/**
* Gets the value of the visitCount property.
*/
public int getVisitCount() {
return visitCount;
}
/**
* Sets the value of the visitCount property.
*/
public void setVisitCount(int value) {
this.visitCount = value;
}
}
class Share {
var entries: List<Child>? = null
var id: String? = null
var url: String? = null
var description: String? = null
var username: String? = null
var created: LocalDateTime? = null
var expires: LocalDateTime? = null
var lastVisited: LocalDateTime? = null
var visitCount = 0
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Shares {
protected List<Share> shares;
/**
* Gets the value of the shares property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the shares property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getShares().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Share }
*/
public List<Share> getShares() {
if (shares == null) {
shares = new ArrayList<>();
}
return this.shares;
}
}
class Shares {
var shares: List<Share>? = null
}

View file

@ -1,48 +1,22 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Xml;
import android.os.Parcelable
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Xml
import kotlinx.android.parcel.Parcelize
@Parcelize
@Xml(name = "similarArtist")
public class SimilarArtistID3 {
class SimilarArtistID3 : Parcelable {
@Attribute
protected String id;
var id: String? = null
@Attribute
protected String name;
var name: String? = null
@Attribute(name = "coverArt")
protected String coverArtId;
var coverArtId: String? = null
@Attribute
protected int albumCount;
public String getId() {
return id;
}
public void setId(String value) {
this.id = value;
}
public String getName() {
return name;
}
public void setName(String value) {
this.name = value;
}
public String getCoverArtId() {
return coverArtId;
}
public void setCoverArtId(String value) {
this.coverArtId = value;
}
public int getAlbumCount() {
return albumCount;
}
public void setAlbumCount(int value) {
this.albumCount = value;
}
}
var albumCount = 0
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class SimilarSongs {
protected List<Child> songs;
/**
* Gets the value of the songs property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the songs property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getSongs().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
}
class SimilarSongs {
var songs: List<Child>? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class SimilarSongs2 {
class SimilarSongs2 {
@Element(name = "song")
protected List<Child> songs;
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class Songs {
class Songs {
@Element(name = "song")
protected List<Child> songs;
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,91 +1,7 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Starred {
protected List<Artist> artists;
protected List<Child> albums;
protected List<Child> songs;
/**
* Gets the value of the artists property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the artists property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getArtists().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Artist }
*/
public List<Artist> getArtists() {
if (artists == null) {
artists = new ArrayList<>();
}
return this.artists;
}
/**
* Gets the value of the albums property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the albums property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getAlbums().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
/**
* Gets the value of the songs property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the songs property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getSongs().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
}
class Starred {
var artists: List<Artist>? = null
var albums: List<Child>? = null
var songs: List<Child>? = null
}

View file

@ -1,50 +1,16 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class Starred2 {
class Starred2 {
@Element(name = "artist")
protected List<ArtistID3> artists;
var artists: List<ArtistID3>? = null
@Element(name = "album")
protected List<AlbumID3> albums;
var albums: List<AlbumID3>? = null
@Element(name = "song")
protected List<Child> songs;
public List<ArtistID3> getArtists() {
if (artists == null) {
artists = new ArrayList<>();
}
return this.artists;
}
public void setArtists(List<ArtistID3> artists) {
this.artists = artists;
}
public List<AlbumID3> getAlbums() {
if (albums == null) {
albums = new ArrayList<>();
}
return this.albums;
}
public void setAlbums(List<AlbumID3> albums) {
this.albums = albums;
}
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,449 +1,108 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.cappielloantonio.play.subsonic.utils.converter.ResponseStatusConverter;
import com.tickaroo.tikxml.annotation.Attribute;
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import com.cappielloantonio.play.subsonic.utils.converter.ResponseStatusConverter
import com.tickaroo.tikxml.annotation.Attribute
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml(name = "subsonic-response")
public class SubsonicResponse {
class SubsonicResponse {
@Element
private Error error;
var error: Error? = null
@Element(name = "scanStatus")
private ScanStatus scanStatus;
var scanStatus: ScanStatus? = null
@Element(name = "topSongs")
private TopSongs topSongs;
var topSongs: TopSongs? = null
@Element(name = "similarSongs2")
private SimilarSongs2 similarSongs2;
private SimilarSongs similarSongs;
var similarSongs2: SimilarSongs2? = null
var similarSongs: SimilarSongs? = null
@Element(name = "artistInfo2")
private ArtistInfo2 artistInfo2;
private ArtistInfo artistInfo;
var artistInfo2: ArtistInfo2? = null
var artistInfo: ArtistInfo? = null
@Element(name = "albumInfo")
private AlbumInfo albumInfo;
var albumInfo: AlbumInfo? = null
@Element(name = "starred2")
private Starred2 starred2;
private Starred starred;
private Shares shares;
private PlayQueue playQueue;
private Bookmarks bookmarks;
private InternetRadioStations internetRadioStations;
var starred2: Starred2? = null
var starred: Starred? = null
var shares: Shares? = null
var playQueue: PlayQueue? = null
var bookmarks: Bookmarks? = null
var internetRadioStations: InternetRadioStations? = null
@Element(name = "newestPodcasts")
private NewestPodcasts newestPodcasts;
private Podcasts podcasts;
var newestPodcasts: NewestPodcasts? = null
var podcasts: Podcasts? = null
@Element(name = "lyrics")
private Lyrics lyrics;
var lyrics: Lyrics? = null
@Element(name = "songsByGenre")
private Songs songsByGenre;
var songsByGenre: Songs? = null
@Element(name = "randomSongs")
private Songs randomSongs;
var randomSongs: Songs? = null
@Element
private AlbumList2 albumList2;
private AlbumList albumList;
private ChatMessages chatMessages;
private User user;
private Users users;
private License license;
private JukeboxPlaylist jukeboxPlaylist;
private JukeboxStatus jukeboxStatus;
var albumList2: AlbumList2? = null
var albumList: AlbumList? = null
var chatMessages: ChatMessages? = null
var user: User? = null
var users: Users? = null
var license: License? = null
var jukeboxPlaylist: JukeboxPlaylist? = null
var jukeboxStatus: JukeboxStatus? = null
@Element(name = "playlist")
private PlaylistWithSongs playlist;
var playlist: PlaylistWithSongs? = null
@Element
private Playlists playlists;
var playlists: Playlists? = null
@Element
private SearchResult3 searchResult3;
var searchResult3: SearchResult3? = null
@Element
private SearchResult2 searchResult2;
private SearchResult searchResult;
private NowPlaying nowPlaying;
private VideoInfo videoInfo;
private Videos videos;
var searchResult2: SearchResult2? = null
var searchResult: SearchResult? = null
var nowPlaying: NowPlaying? = null
var videoInfo: VideoInfo? = null
var videos: Videos? = null
@Element(name = "song")
private Child song;
var song: Child? = null
@Element(name = "album")
private AlbumWithSongsID3 album;
var album: AlbumWithSongsID3? = null
@Element(name = "artist")
private ArtistWithAlbumsID3 artist;
var artist: ArtistWithAlbumsID3? = null
@Element(name = "artists")
private ArtistsID3 artists;
var artists: ArtistsID3? = null
@Element
private Genres genres;
private Directory directory;
private Indexes indexes;
var genres: Genres? = null
var directory: Directory? = null
var indexes: Indexes? = null
@Element
private MusicFolders musicFolders;
@Attribute(converter = ResponseStatusConverter.class)
private ResponseStatus status;
var musicFolders: MusicFolders? = null
@Attribute(converter = ResponseStatusConverter::class)
var status: ResponseStatus? = null
@Attribute
private String version;
var version: String? = null
@Attribute
private String type;
var type: String? = null
public Error getError() {
return error;
}
public void setError(Error value) {
this.error = value;
}
public ScanStatus getScanStatus() {
return scanStatus;
}
public void setScanStatus(ScanStatus value) {
this.scanStatus = value;
}
public TopSongs getTopSongs() {
return topSongs;
}
public void setTopSongs(TopSongs value) {
this.topSongs = value;
}
public SimilarSongs2 getSimilarSongs2() {
return similarSongs2;
}
public void setSimilarSongs2(SimilarSongs2 value) {
this.similarSongs2 = value;
}
public SimilarSongs getSimilarSongs() {
return similarSongs;
}
public void setSimilarSongs(SimilarSongs value) {
this.similarSongs = value;
}
public ArtistInfo2 getArtistInfo2() {
return artistInfo2;
}
public void setArtistInfo2(ArtistInfo2 value) {
this.artistInfo2 = value;
}
public ArtistInfo getArtistInfo() {
return artistInfo;
}
public void setArtistInfo(ArtistInfo value) {
this.artistInfo = value;
}
public AlbumInfo getAlbumInfo() {
return albumInfo;
}
public void setAlbumInfo(AlbumInfo value) {
this.albumInfo = value;
}
public Starred2 getStarred2() {
return starred2;
}
public void setStarred2(Starred2 value) {
this.starred2 = value;
}
public Starred getStarred() {
return starred;
}
public void setStarred(Starred value) {
this.starred = value;
}
public Shares getShares() {
return shares;
}
public void setShares(Shares value) {
this.shares = value;
}
public PlayQueue getPlayQueue() {
return playQueue;
}
public void setPlayQueue(PlayQueue value) {
this.playQueue = value;
}
public Bookmarks getBookmarks() {
return bookmarks;
}
public void setBookmarks(Bookmarks value) {
this.bookmarks = value;
}
public InternetRadioStations getInternetRadioStations() {
return internetRadioStations;
}
public void setInternetRadioStations(InternetRadioStations value) {
this.internetRadioStations = value;
}
public NewestPodcasts getNewestPodcasts() {
return newestPodcasts;
}
public void setNewestPodcasts(NewestPodcasts value) {
this.newestPodcasts = value;
}
public Podcasts getPodcasts() {
return podcasts;
}
public void setPodcasts(Podcasts value) {
this.podcasts = value;
}
public Lyrics getLyrics() {
return lyrics;
}
public void setLyrics(Lyrics value) {
this.lyrics = value;
}
public Songs getSongsByGenre() {
return songsByGenre;
}
public void setSongsByGenre(Songs value) {
this.songsByGenre = value;
}
public Songs getRandomSongs() {
return randomSongs;
}
public void setRandomSongs(Songs value) {
this.randomSongs = value;
}
public AlbumList2 getAlbumList2() {
return albumList2;
}
public void setAlbumList2(AlbumList2 value) {
this.albumList2 = value;
}
public AlbumList getAlbumList() {
return albumList;
}
public void setAlbumList(AlbumList value) {
this.albumList = value;
}
public ChatMessages getChatMessages() {
return chatMessages;
}
public void setChatMessages(ChatMessages value) {
this.chatMessages = value;
}
public User getUser() {
return user;
}
public void setUser(User value) {
this.user = value;
}
public Users getUsers() {
return users;
}
public void setUsers(Users value) {
this.users = value;
}
public License getLicense() {
return license;
}
public void setLicense(License value) {
this.license = value;
}
public JukeboxPlaylist getJukeboxPlaylist() {
return jukeboxPlaylist;
}
public void setJukeboxPlaylist(JukeboxPlaylist value) {
this.jukeboxPlaylist = value;
}
public JukeboxStatus getJukeboxStatus() {
return jukeboxStatus;
}
public void setJukeboxStatus(JukeboxStatus value) {
this.jukeboxStatus = value;
}
public PlaylistWithSongs getPlaylist() {
return playlist;
}
public void setPlaylist(PlaylistWithSongs value) {
this.playlist = value;
}
public Playlists getPlaylists() {
return playlists;
}
public void setPlaylists(Playlists value) {
this.playlists = value;
}
public SearchResult3 getSearchResult3() {
return searchResult3;
}
public void setSearchResult3(SearchResult3 value) {
this.searchResult3 = value;
}
public SearchResult2 getSearchResult2() {
return searchResult2;
}
public void setSearchResult2(SearchResult2 value) {
this.searchResult2 = value;
}
public SearchResult getSearchResult() {
return searchResult;
}
public void setSearchResult(SearchResult value) {
this.searchResult = value;
}
public NowPlaying getNowPlaying() {
return nowPlaying;
}
public void setNowPlaying(NowPlaying value) {
this.nowPlaying = value;
}
public VideoInfo getVideoInfo() {
return videoInfo;
}
public void setVideoInfo(VideoInfo value) {
this.videoInfo = value;
}
public Videos getVideos() {
return videos;
}
public void setVideos(Videos value) {
this.videos = value;
}
public Child getSong() {
return song;
}
public void setSong(Child value) {
this.song = value;
}
public AlbumWithSongsID3 getAlbum() {
return album;
}
public void setAlbum(AlbumWithSongsID3 value) {
this.album = value;
}
public ArtistWithAlbumsID3 getArtist() {
return artist;
}
public void setArtist(ArtistWithAlbumsID3 value) {
this.artist = value;
}
public ArtistsID3 getArtists() {
return artists;
}
public void setArtists(ArtistsID3 value) {
this.artists = value;
}
public Genres getGenres() {
return genres;
}
public void setGenres(Genres value) {
this.genres = value;
}
public Directory getDirectory() {
return directory;
}
public void setDirectory(Directory value) {
this.directory = value;
}
public Indexes getIndexes() {
return indexes;
}
public void setIndexes(Indexes value) {
this.indexes = value;
}
public MusicFolders getMusicFolders() {
return musicFolders;
}
public void setMusicFolders(MusicFolders value) {
this.musicFolders = value;
}
public ResponseStatus getStatus() {
return status;
}
public void setStatus(ResponseStatus value) {
this.status = value;
}
public String getVersion() {
return version;
}
public void setVersion(String value) {
this.version = value;
}
public String getType() {
return type;
}
public void setType(String value) {
this.type = value;
}
}
@Attribute
var serverVersion: String? = null
}

View file

@ -1,24 +1,10 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import com.tickaroo.tikxml.annotation.Element;
import com.tickaroo.tikxml.annotation.Xml;
import java.util.ArrayList;
import java.util.List;
import com.tickaroo.tikxml.annotation.Element
import com.tickaroo.tikxml.annotation.Xml
@Xml
public class TopSongs {
class TopSongs {
@Element(name = "song")
protected List<Child> songs;
public List<Child> getSongs() {
if (songs == null) {
songs = new ArrayList<>();
}
return this.songs;
}
public void setSongs(List<Child> songs) {
this.songs = songs;
}
}
var songs: List<Child>? = null
}

View file

@ -1,315 +1,24 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;
import java.time.LocalDateTime
public class User {
protected List<Integer> folders;
protected String username;
protected String email;
protected boolean scrobblingEnabled;
protected Integer maxBitRate;
protected boolean adminRole;
protected boolean settingsRole;
protected boolean downloadRole;
protected boolean uploadRole;
protected boolean playlistRole;
protected boolean coverArtRole;
protected boolean commentRole;
protected boolean podcastRole;
protected boolean streamRole;
protected boolean jukeboxRole;
protected boolean shareRole;
protected boolean videoConversionRole;
protected LocalDateTime avatarLastChanged;
/**
* Gets the value of the folders property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the folders property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getFolders().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Integer }
*/
public List<Integer> getFolders() {
if (folders == null) {
folders = new ArrayList<>();
}
return this.folders;
}
/**
* Gets the value of the username property.
*
* @return possible object is
* {@link String }
*/
public String getUsername() {
return username;
}
/**
* Sets the value of the username property.
*
* @param value allowed object is
* {@link String }
*/
public void setUsername(String value) {
this.username = value;
}
/**
* Gets the value of the email property.
*
* @return possible object is
* {@link String }
*/
public String getEmail() {
return email;
}
/**
* Sets the value of the email property.
*
* @param value allowed object is
* {@link String }
*/
public void setEmail(String value) {
this.email = value;
}
/**
* Gets the value of the scrobblingEnabled property.
*/
public boolean isScrobblingEnabled() {
return scrobblingEnabled;
}
/**
* Sets the value of the scrobblingEnabled property.
*/
public void setScrobblingEnabled(boolean value) {
this.scrobblingEnabled = value;
}
/**
* Gets the value of the maxBitRate property.
*
* @return possible object is
* {@link Integer }
*/
public Integer getMaxBitRate() {
return maxBitRate;
}
/**
* Sets the value of the maxBitRate property.
*
* @param value allowed object is
* {@link Integer }
*/
public void setMaxBitRate(Integer value) {
this.maxBitRate = value;
}
/**
* Gets the value of the adminRole property.
*/
public boolean isAdminRole() {
return adminRole;
}
/**
* Sets the value of the adminRole property.
*/
public void setAdminRole(boolean value) {
this.adminRole = value;
}
/**
* Gets the value of the settingsRole property.
*/
public boolean isSettingsRole() {
return settingsRole;
}
/**
* Sets the value of the settingsRole property.
*/
public void setSettingsRole(boolean value) {
this.settingsRole = value;
}
/**
* Gets the value of the downloadRole property.
*/
public boolean isDownloadRole() {
return downloadRole;
}
/**
* Sets the value of the downloadRole property.
*/
public void setDownloadRole(boolean value) {
this.downloadRole = value;
}
/**
* Gets the value of the uploadRole property.
*/
public boolean isUploadRole() {
return uploadRole;
}
/**
* Sets the value of the uploadRole property.
*/
public void setUploadRole(boolean value) {
this.uploadRole = value;
}
/**
* Gets the value of the playlistRole property.
*/
public boolean isPlaylistRole() {
return playlistRole;
}
/**
* Sets the value of the playlistRole property.
*/
public void setPlaylistRole(boolean value) {
this.playlistRole = value;
}
/**
* Gets the value of the coverArtRole property.
*/
public boolean isCoverArtRole() {
return coverArtRole;
}
/**
* Sets the value of the coverArtRole property.
*/
public void setCoverArtRole(boolean value) {
this.coverArtRole = value;
}
/**
* Gets the value of the commentRole property.
*/
public boolean isCommentRole() {
return commentRole;
}
/**
* Sets the value of the commentRole property.
*/
public void setCommentRole(boolean value) {
this.commentRole = value;
}
/**
* Gets the value of the podcastRole property.
*/
public boolean isPodcastRole() {
return podcastRole;
}
/**
* Sets the value of the podcastRole property.
*/
public void setPodcastRole(boolean value) {
this.podcastRole = value;
}
/**
* Gets the value of the streamRole property.
*/
public boolean isStreamRole() {
return streamRole;
}
/**
* Sets the value of the streamRole property.
*/
public void setStreamRole(boolean value) {
this.streamRole = value;
}
/**
* Gets the value of the jukeboxRole property.
*/
public boolean isJukeboxRole() {
return jukeboxRole;
}
/**
* Sets the value of the jukeboxRole property.
*/
public void setJukeboxRole(boolean value) {
this.jukeboxRole = value;
}
/**
* Gets the value of the shareRole property.
*/
public boolean isShareRole() {
return shareRole;
}
/**
* Sets the value of the shareRole property.
*/
public void setShareRole(boolean value) {
this.shareRole = value;
}
/**
* Gets the value of the videoConversionRole property.
*/
public boolean isVideoConversionRole() {
return videoConversionRole;
}
/**
* Sets the value of the videoConversionRole property.
*/
public void setVideoConversionRole(boolean value) {
this.videoConversionRole = value;
}
/**
* Gets the value of the avatarLastChanged property.
*
* @return possible object is
* {@link String }
*/
public LocalDateTime getAvatarLastChanged() {
return avatarLastChanged;
}
/**
* Sets the value of the avatarLastChanged property.
*
* @param value allowed object is
* {@link String }
*/
public void setAvatarLastChanged(LocalDateTime value) {
this.avatarLastChanged = value;
}
}
class User {
var folders: List<Int>? = null
var username: String? = null
var email: String? = null
var isScrobblingEnabled = false
var maxBitRate: Int? = null
var isAdminRole = false
var isSettingsRole = false
var isDownloadRole = false
var isUploadRole = false
var isPlaylistRole = false
var isCoverArtRole = false
var isCommentRole = false
var isPodcastRole = false
var isStreamRole = false
var isJukeboxRole = false
var isShareRole = false
var isVideoConversionRole = false
var avatarLastChanged: LocalDateTime? = null
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Users {
protected List<User> users;
/**
* Gets the value of the users property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the users property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getUsers().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link User }
*/
public List<User> getUsers() {
if (users == null) {
users = new ArrayList<>();
}
return this.users;
}
}
class Users {
var users: List<User>? = null
}

View file

@ -1,67 +1,43 @@
package com.cappielloantonio.play.subsonic.models;
public class VideoConversion {
protected String id;
protected Integer bitRate;
protected Integer audioTrackId;
package com.cappielloantonio.play.subsonic.models
class VideoConversion {
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
* [String]
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
* [String]
*/
public void setId(String value) {
this.id = value;
}
var id: String? = null
/**
* Gets the value of the bitRate property.
*
* @return possible object is
* {@link Integer }
* [Integer]
*/
public Integer getBitRate() {
return bitRate;
}
/**
* Sets the value of the bitRate property.
*
* @param value allowed object is
* {@link Integer }
* [Integer]
*/
public void setBitRate(Integer value) {
this.bitRate = value;
}
var bitRate: Int? = null
/**
* Gets the value of the audioTrackId property.
*
* @return possible object is
* {@link Integer }
* [Integer]
*/
public Integer getAudioTrackId() {
return audioTrackId;
}
/**
* Sets the value of the audioTrackId property.
*
* @param value allowed object is
* {@link Integer }
* [Integer]
*/
public void setAudioTrackId(Integer value) {
this.audioTrackId = value;
}
}
var audioTrackId: Int? = null
}

View file

@ -1,112 +1,8 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class VideoInfo {
protected List<Captions> captions;
protected List<AudioTrack> audioTracks;
protected List<VideoConversion> conversions;
protected String id;
/**
* Gets the value of the captions property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the captions property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getCaptions().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Captions }
*/
public List<Captions> getCaptions() {
if (captions == null) {
captions = new ArrayList<>();
}
return this.captions;
}
/**
* Gets the value of the audioTracks property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the audioTracks property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getAudioTracks().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link AudioTrack }
*/
public List<AudioTrack> getAudioTracks() {
if (audioTracks == null) {
audioTracks = new ArrayList<>();
}
return this.audioTracks;
}
/**
* Gets the value of the conversions property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the conversions property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getConversions().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link VideoConversion }
*/
public List<VideoConversion> getConversions() {
if (conversions == null) {
conversions = new ArrayList<>();
}
return this.conversions;
}
/**
* Gets the value of the id property.
*
* @return possible object is
* {@link String }
*/
public String getId() {
return id;
}
/**
* Sets the value of the id property.
*
* @param value allowed object is
* {@link String }
*/
public void setId(String value) {
this.id = value;
}
}
class VideoInfo {
var captions: List<Captions>? = null
var audioTracks: List<AudioTrack>? = null
var conversions: List<VideoConversion>? = null
var id: String? = null
}

View file

@ -1,35 +1,5 @@
package com.cappielloantonio.play.subsonic.models;
package com.cappielloantonio.play.subsonic.models
import java.util.ArrayList;
import java.util.List;
public class Videos {
protected List<Child> videos;
/**
* Gets the value of the videos property.
*
* <p>
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a <CODE>set</CODE> method for the videos property.
*
* <p>
* For example, to add a new item, do as follows:
* <pre>
* getVideos().add(newItem);
* </pre>
*
*
* <p>
* Objects of the following type(s) are allowed in the list
* {@link Child }
*/
public List<Child> getVideos() {
if (videos == null) {
videos = new ArrayList<>();
}
return this.videos;
}
}
class Videos {
var videos: List<Child>? = null
}