Skip to content

Commit

Permalink
move to data classes
Browse files Browse the repository at this point in the history
  • Loading branch information
janvde committed Aug 10, 2018
1 parent c2da4c7 commit c3e320a
Show file tree
Hide file tree
Showing 18 changed files with 307 additions and 461 deletions.
8 changes: 4 additions & 4 deletions library/src/main/java/com/getroadmap/r2rlib/models/Agency.kt
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ import android.os.Parcelable
* phone string Agency Phone Number (optional)
* icon Icon Agency icon (optional)
*/
data class Agency(var name: String?,
var url: String?,
var phone: String?,
var icon: Icon?) : Parcelable {
data class Agency(val name: String?,
val url: String?,
val phone: String?,
val icon: Icon?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readString(),
parcel.readString(),
Expand Down
29 changes: 13 additions & 16 deletions library/src/main/java/com/getroadmap/r2rlib/models/AirCodeshare.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,19 @@ import com.google.gson.annotations.SerializedName
* Created by jan on 11/07/16.
*/

open class AirCodeshare() : Parcelable {
/**
* airline integer Airline (index into airlines array)
* flight string Flight number
*/

@SerializedName("airline")
@Expose
var airline: Int? = null
@SerializedName("flight")
@Expose
var flight: String? = null

constructor(parcel: Parcel) : this() {
airline = parcel.readValue(Int::class.java.classLoader) as? Int
flight = parcel.readString()
/**
* airline integer Airline (index into airlines array)
* flight string Flight number
*/
data class AirCodeshare(@SerializedName("airline")
@Expose
val airline: Int?,
@SerializedName("flight")
@Expose
val flight: String?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readValue(Int::class.java.classLoader) as? Int,
parcel.readString()) {
}

override fun writeToParcel(parcel: Parcel, flags: Int) {
Expand Down
101 changes: 48 additions & 53 deletions library/src/main/java/com/getroadmap/r2rlib/models/AirHop.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,58 +9,54 @@ import java.util.ArrayList
* Created by jan on 11/07/16.
*/

class AirHop() : Parcelable {

/**
* depPlace integer Departure airport (index into places array)
* arrPlace integer Arrival airport (index into places array)
* depTerminal string Departure airport terminal (optional)
* arrTerminal string Arrivar airport terminal (optional)
* depTime string Departure time (24-hour local time - hh:mm)
* arrTime string Arrivar time (24-hour local time - hh:mm)
* flight string Flight number
* duration float Estimated flight duration (in minutes)
* airline string Advertised airline (index into airlines array)
* operatingAirline string Operating airline (index into airlines array) (optional)
* aircraft string Aircraft (index into aircrafts array) (optional)
* dayChange integer Num day changes during flight (optional)
* layoverDuration float Layover time (in minutes) (optional)
* layoverDayChange integer Num day changes during layover (optional)
* codeshares AirCodeshare[] Array of codeshares (optional)
*/

var depPlace: Int? = null
var arrPlace: Int? = null
var depTerminal: String? = null
var arrTerminal: String? = null
var depTime: String? = null
var arrTime: String? = null
var flight: String? = null
var duration: Float? = null
var airline: String? = null
var operatingAirline: String? = null
var aircraft: String? = null
var dayChange: Int? = null
var layoverDuration: Float? = null
var layoverDayChange: Int? = null
var codeshares: List<AirCodeshare>? = null

constructor(parcel: Parcel) : this() {
depPlace = parcel.readValue(Int::class.java.classLoader) as? Int
arrPlace = parcel.readValue(Int::class.java.classLoader) as? Int
depTerminal = parcel.readString()
arrTerminal = parcel.readString()
depTime = parcel.readString()
arrTime = parcel.readString()
flight = parcel.readString()
duration = parcel.readValue(Float::class.java.classLoader) as? Float
airline = parcel.readString()
operatingAirline = parcel.readString()
aircraft = parcel.readString()
dayChange = parcel.readValue(Int::class.java.classLoader) as? Int
layoverDuration = parcel.readValue(Float::class.java.classLoader) as? Float
layoverDayChange = parcel.readValue(Int::class.java.classLoader) as? Int
codeshares = parcel.createTypedArrayList(AirCodeshare)
/**
* depPlace integer Departure airport (index into places array)
* arrPlace integer Arrival airport (index into places array)
* depTerminal string Departure airport terminal (optional)
* arrTerminal string Arrival airport terminal (optional)
* depTime string Departure time (24-hour local time - hh:mm)
* arrTime string Arrival time (24-hour local time - hh:mm)
* flight string Flight number
* duration float Estimated flight duration (in minutes)
* airline string Advertised airline (index into airlines array)
* operatingAirline string Operating airline (index into airlines array) (optional)
* aircraft string Aircraft (index into aircrafts array) (optional)
* dayChange integer Num day changes during flight (optional)
* layoverDuration float Layover time (in minutes) (optional)
* layoverDayChange integer Num day changes during layover (optional)
* codeshares AirCodeshare[] Array of codeshares (optional)
*/
data class AirHop(val depPlace: Int?,
val arrPlace: Int?,
val depTerminal: String?,
val arrTerminal: String?,
val depTime: String?,
val arrTime: String?,
val flight: String?,
val duration: Float?,
val airline: String?,
val operatingAirline: String?,
val aircraft: String?,
val dayChange: Int?,
val layoverDuration: Float?,
val layoverDayChange: Int?,
val codeshares: List<AirCodeshare>?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readValue(Int::class.java.classLoader) as? Int,
parcel.readValue(Int::class.java.classLoader) as? Int,
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readValue(Float::class.java.classLoader) as? Float,
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readValue(Int::class.java.classLoader) as? Int,
parcel.readValue(Float::class.java.classLoader) as? Float,
parcel.readValue(Int::class.java.classLoader) as? Int,
parcel.createTypedArrayList(AirCodeshare)) {
}

override fun writeToParcel(parcel: Parcel, flags: Int) {
Expand Down Expand Up @@ -94,5 +90,4 @@ class AirHop() : Parcelable {
return arrayOfNulls(size)
}
}

}
28 changes: 13 additions & 15 deletions library/src/main/java/com/getroadmap/r2rlib/models/AirLeg.kt
Original file line number Diff line number Diff line change
Expand Up @@ -10,23 +10,22 @@ import java.util.ArrayList
* https://www.rome2rio.com/documentation/search#AirLeg
*/

open class AirLeg() : Parcelable {
/**
* operatingDays DayFlags Days of operation bitmask (optional)
* indicativePrices IndicativePrice[] Array of indicative prices (optional)
* hops AirHop[] Array of hops
*/

var operatingDays: DayFlags? = null
var indicativePrices: List<IndicativePrice>? = null
var hops: List<AirHop>? = null

constructor(parcel: Parcel) : this() {
indicativePrices = parcel.createTypedArrayList(IndicativePrice.CREATOR)
hops = parcel.createTypedArrayList(AirHop.CREATOR)
/**
* operatingDays DayFlags Days of operation bitmask (optional)
* indicativePrices IndicativePrice[] Array of indicative prices (optional)
* hops AirHop[] Array of hops
*/
data class AirLeg(val operatingDays: DayFlags?,
val indicativePrices: List<IndicativePrice>?,
val hops: List<AirHop>?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readValue(Int::class.java.classLoader) as? DayFlags,
parcel.createTypedArrayList(IndicativePrice),
parcel.createTypedArrayList(AirHop)) {
}

override fun writeToParcel(parcel: Parcel, flags: Int) {
parcel.writeValue(operatingDays?.flag)
parcel.writeTypedList(indicativePrices)
parcel.writeTypedList(hops)
}
Expand All @@ -44,5 +43,4 @@ open class AirLeg() : Parcelable {
return arrayOfNulls(size)
}
}

}
53 changes: 24 additions & 29 deletions library/src/main/java/com/getroadmap/r2rlib/models/AirSegment.kt
Original file line number Diff line number Diff line change
Expand Up @@ -12,34 +12,30 @@ import java.util.ArrayList
* Created by jan on 11/07/16.
*/

class AirSegment() : Segment() {

/**
* segmentKind string "air"
* depPlace integer Departure airport (index into places array)
* arrPlace integer Arrival airport (index into places array)
* vehicle integer Vehicle (index into vehicles array)
* distance float Estimated distance (in km)
* transitDuration float Estimated duration spent in transit (in minutes)
* transferDuration float Estimated duration spent waiting for transfer (in minutes)
* indicativePrices IndicativePrice[] Array of indicative prices (optional)
*
* outbound AirLeg[] Array of outbound legs
* return AirLeg[] Array of return legs
*
* @return
*/

@SerializedName("outbound")
@Expose
var outbound: List<AirLeg>? = null
@SerializedName("return")
@Expose
var returns: List<AirLeg>? = null

constructor(parcel: Parcel) : this() {
outbound = parcel.createTypedArrayList(AirLeg)
returns = parcel.createTypedArrayList(AirLeg)
/**
* segmentKind string "air"
* depPlace integer Departure airport (index into places array)
* arrPlace integer Arrival airport (index into places array)
* vehicle integer Vehicle (index into vehicles array)
* distance float Estimated distance (in km)
* transitDuration float Estimated duration spent in transit (in minutes)
* transferDuration float Estimated duration spent waiting for transfer (in minutes)
* indicativePrices IndicativePrice[] Array of indicative prices (optional)
*
* outbound AirLeg[] Array of outbound legs
* return AirLeg[] Array of return legs
*
* @return
*/
data class AirSegment(@SerializedName("outbound")
@Expose
val outbound: List<AirLeg>?,
@SerializedName("return")
@Expose
val returns: List<AirLeg>?) : Segment() {
constructor(parcel: Parcel) : this(
parcel.createTypedArrayList(AirLeg),
parcel.createTypedArrayList(AirLeg)) {
}

override fun writeToParcel(parcel: Parcel, flags: Int) {
Expand All @@ -61,5 +57,4 @@ class AirSegment() : Segment() {
return arrayOfNulls(size)
}
}

}
31 changes: 14 additions & 17 deletions library/src/main/java/com/getroadmap/r2rlib/models/Aircraft.kt
Original file line number Diff line number Diff line change
Expand Up @@ -9,22 +9,20 @@ import android.os.Parcelable
* https://www.rome2rio.com/documentation/search#Aircraft
* class for api v1.4
*/
class Aircraft() : Parcelable {

/**
* code string Aircraft code (IATA)
* manufacturer string Manufacturer name
* model string Model name
*/

var code: String? = null
var manufacturer: String? = null
var model: String? = null

constructor(parcel: Parcel) : this() {
code = parcel.readString()
manufacturer = parcel.readString()
model = parcel.readString()


/**
* code string Aircraft code (IATA)
* manufacturer string Manufacturer name
* model string Model name
*/
data class Aircraft(val code: String?,
val manufacturer: String?,
val model: String?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readString(),
parcel.readString(),
parcel.readString()) {
}

override fun writeToParcel(parcel: Parcel, flags: Int) {
Expand All @@ -46,5 +44,4 @@ class Aircraft() : Parcelable {
return arrayOfNulls(size)
}
}

}
8 changes: 4 additions & 4 deletions library/src/main/java/com/getroadmap/r2rlib/models/Airline.kt
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ import android.os.Parcelable
* url string Airline URL (optional)
* icon Icon Airline icon (optional)
*/
class Airline(var code: String?,
var name: String?,
var url: String?,
var icon: Icon?) : Parcelable {
data class Airline(val code: String?,
val name: String?,
val url: String?,
val icon: Icon?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readString(),
parcel.readString(),
Expand Down
35 changes: 16 additions & 19 deletions library/src/main/java/com/getroadmap/r2rlib/models/ExternalLink.kt
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,22 @@ import android.os.Parcelable
* Created by jan on 11/07/16.
*/

open class ExternalLink() : Parcelable {
/**
* text string Link text
* url string Link URL
* displayUrl string Display URL (cleaned up link url) (optional)
* moustacheUrl string Moustach URL (link url with replacement parameters) (optional)
*/

var text: String? = null
var url: String? = null
var displayUrl: String? = null
var moustacheUrl: String? = null

constructor(parcel: Parcel) : this() {
text = parcel.readString()
url = parcel.readString()
displayUrl = parcel.readString()
moustacheUrl = parcel.readString()
/**
* text string Link text
* url string Link URL
* displayUrl string Display URL (cleaned up link url) (optional)
* moustacheUrl string Moustach URL (link url with replacement parameters) (optional)
*/

data class ExternalLink(val text: String?,
val url: String?,
val displayUrl: String?,
val moustacheUrl: String?) : Parcelable {
constructor(parcel: Parcel) : this(
parcel.readString(),
parcel.readString(),
parcel.readString(),
parcel.readString()) {
}

override fun writeToParcel(parcel: Parcel, flags: Int) {
Expand All @@ -47,5 +45,4 @@ open class ExternalLink() : Parcelable {
return arrayOfNulls(size)
}
}

}
Loading

0 comments on commit c3e320a

Please sign in to comment.