Skip to content

Commit ce9c6de

Browse files
Bump dependencies, support parking metadata (#343)
* Bump dependencies, support parking metadata * OptIn RestrictedMapboxSearchAPI
1 parent 2401996 commit ce9c6de

File tree

61 files changed

+3357
-128
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+3357
-128
lines changed

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,22 @@
11
# Changelog for the Mapbox Search SDK for Android
22

3+
## 2.14.0-beta.1
4+
5+
### Experimental API breaking changes
6+
- Type `com.mapbox.search.common.ParkingRestriction` has been moved to `com.mapbox.search.common.parking.ParkingRestriction`
7+
- Type `com.mapbox.search.common.ParkingType` has been moved to `com.mapbox.search.common.parking.ParkingType`
8+
9+
### New features
10+
- Extended list of supported `com.mapbox.search.common.parking.ParkingRestriction` and `com.mapbox.search.common.parking.ParkingType`.
11+
- Added experimental support for parking metadata, both online and offline, see `SearchResultMetadata.parkingInfo` and `OfflineSearchResultMetadata.parkingInfo`.
12+
13+
### Mapbox dependencies
14+
- Search Native SDK `2.14.0-beta.1`
15+
- Common SDK `24.14.0-beta.1`
16+
- Maps SDK `11.14.0-beta.1`
17+
18+
19+
320
## 2.14.0-alpha.2
421

522
### New features

MapboxSearch/base/src/main/java/com/mapbox/search/base/core/CoreAliases.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,18 @@ typealias CoreFacility = com.mapbox.search.internal.bindgen.Facility
5454
typealias CoreEvLocation = com.mapbox.search.internal.bindgen.EvLocation
5555
typealias CoreParkingRestriction = com.mapbox.search.internal.bindgen.ParkingRestriction
5656
typealias CoreParkingType = com.mapbox.search.internal.bindgen.ParkingType
57+
typealias CoreParkingInfo = com.mapbox.search.internal.bindgen.ParkingInfo
58+
typealias CoreParkingPaymentType = com.mapbox.search.internal.bindgen.ParkingPaymentType
59+
typealias CoreParkingPaymentMethod = com.mapbox.search.internal.bindgen.ParkingPaymentMethod
60+
typealias CoreParkingTrend = com.mapbox.search.internal.bindgen.ParkingTrend
61+
typealias CoreParkingAvailabilityLevel = com.mapbox.search.internal.bindgen.ParkingAvailabilityLevel
62+
typealias CoreParkingPriceType = com.mapbox.search.internal.bindgen.ParkingPriceType
63+
typealias CoreParkingRateCustomValue = com.mapbox.search.internal.bindgen.ParkingRateCustomValue
64+
typealias CoreParkingRateValue = com.mapbox.search.internal.bindgen.ParkingRateValue
65+
typealias CoreParkingRate = com.mapbox.search.internal.bindgen.ParkingRate
66+
typealias CoreParkingRatePrice = com.mapbox.search.internal.bindgen.ParkingRatePrice
67+
typealias CoreParkingRateTime = com.mapbox.search.internal.bindgen.ParkingRateTime
68+
typealias CoreParkingRateInfo = com.mapbox.search.internal.bindgen.ParkingRateInfo
5769
typealias CorePowerType = com.mapbox.search.internal.bindgen.PowerType
5870
typealias CoreEVSE = com.mapbox.search.internal.bindgen.EVSE
5971
typealias CoreEvseCapability = com.mapbox.search.internal.bindgen.EvseCapability

MapboxSearch/base/src/main/java/com/mapbox/search/base/core/CoreFactoryFunctions.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ fun createCoreResultMetadata(
117117
timezone: String? = null,
118118
lastUpdated: String? = null,
119119
cuisines: List<String>? = null,
120+
parkingInfo: CoreParkingInfo? = null,
120121
): CoreResultMetadata = CoreResultMetadata(
121122
reviewCount = reviewCount,
122123
phone = phone,
@@ -161,6 +162,7 @@ fun createCoreResultMetadata(
161162
timezone = timezone,
162163
lastUpdated = lastUpdated,
163164
cuisines = cuisines,
165+
parkingInfo = parkingInfo,
164166
)
165167

166168
fun createCoreOpenHours(

MapboxSearch/base/src/main/java/com/mapbox/search/base/factory/ParkingType.kt

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ import androidx.annotation.RestrictTo
66
import com.mapbox.annotation.MapboxExperimental
77
import com.mapbox.search.base.core.CoreParkingRestriction
88
import com.mapbox.search.base.core.CoreParkingType
9-
import com.mapbox.search.common.ParkingRestriction
10-
import com.mapbox.search.common.ParkingType
9+
import com.mapbox.search.common.parking.ParkingRestriction
10+
import com.mapbox.search.common.parking.ParkingType
1111

1212
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
1313
@ParkingType.Type
@@ -18,6 +18,7 @@ fun CoreParkingType.mapToPlatform(): String {
1818
CoreParkingType.PARKING_LOT -> ParkingType.PARKING_LOT
1919
CoreParkingType.ON_DRIVEWAY -> ParkingType.ON_DRIVEWAY
2020
CoreParkingType.ON_STREET -> ParkingType.ON_STREET
21+
CoreParkingType.OFF_STREET -> ParkingType.OFF_STREET
2122
CoreParkingType.UNDERGROUND_GARAGE -> ParkingType.UNDERGROUND_GARAGE
2223
CoreParkingType.UNKNOWN -> ParkingType.UNKNOWN
2324
}
@@ -31,6 +32,7 @@ fun createCoreParkingType(@ParkingType.Type type: String?): CoreParkingType? {
3132
ParkingType.PARKING_LOT -> CoreParkingType.PARKING_LOT
3233
ParkingType.ON_DRIVEWAY -> CoreParkingType.ON_DRIVEWAY
3334
ParkingType.ON_STREET -> CoreParkingType.ON_STREET
35+
ParkingType.OFF_STREET -> CoreParkingType.OFF_STREET
3436
ParkingType.UNDERGROUND_GARAGE -> CoreParkingType.UNDERGROUND_GARAGE
3537
ParkingType.UNKNOWN -> CoreParkingType.UNKNOWN
3638
else -> null
@@ -46,6 +48,42 @@ fun CoreParkingRestriction.mapToPlatform(): String {
4648
CoreParkingRestriction.DISABLED -> ParkingRestriction.DISABLED
4749
CoreParkingRestriction.CUSTOMERS -> ParkingRestriction.CUSTOMERS
4850
CoreParkingRestriction.MOTOR_CYCLES -> ParkingRestriction.MOTOR_CYCLES
51+
CoreParkingRestriction.NO_PARKING -> ParkingRestriction.NO_PARKING
52+
CoreParkingRestriction.MAX_STAY -> ParkingRestriction.MAX_STAY
53+
CoreParkingRestriction.MONTHLY_ONLY -> ParkingRestriction.MONTHLY_ONLY
54+
CoreParkingRestriction.NO_SUV -> ParkingRestriction.NO_SUV
55+
CoreParkingRestriction.NO_LPG -> ParkingRestriction.NO_LPG
56+
CoreParkingRestriction.VALET_ONLY -> ParkingRestriction.VALET_ONLY
57+
CoreParkingRestriction.VISITORS_ONLY -> ParkingRestriction.VISITORS_ONLY
58+
CoreParkingRestriction.EVENTS_ONLY -> ParkingRestriction.EVENTS_ONLY
59+
CoreParkingRestriction.NO_RESTRICTIONS_OUTSIDE_HOURS -> ParkingRestriction.NO_RESTRICTIONS_OUTSIDE_HOURS
60+
CoreParkingRestriction.BOOKING_ONLY -> ParkingRestriction.BOOKING_ONLY
61+
CoreParkingRestriction.PARKING_DISK -> ParkingRestriction.PARKING_DISK
4962
CoreParkingRestriction.UNKNOWN -> ParkingRestriction.UNKNOWN
5063
}
5164
}
65+
66+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
67+
fun createCoreParkingRestriction(@ParkingRestriction.Type type: String): CoreParkingRestriction? {
68+
return when (type) {
69+
ParkingRestriction.EV_ONLY -> CoreParkingRestriction.EV_ONLY
70+
ParkingRestriction.PLUGGED -> CoreParkingRestriction.PLUGGED
71+
ParkingRestriction.DISABLED -> CoreParkingRestriction.DISABLED
72+
ParkingRestriction.CUSTOMERS -> CoreParkingRestriction.CUSTOMERS
73+
ParkingRestriction.MOTOR_CYCLES -> CoreParkingRestriction.MOTOR_CYCLES
74+
ParkingRestriction.NO_PARKING -> CoreParkingRestriction.NO_PARKING
75+
ParkingRestriction.MAX_STAY -> CoreParkingRestriction.MAX_STAY
76+
ParkingRestriction.MONTHLY_ONLY -> CoreParkingRestriction.MONTHLY_ONLY
77+
ParkingRestriction.NO_SUV -> CoreParkingRestriction.NO_SUV
78+
ParkingRestriction.NO_LPG -> CoreParkingRestriction.NO_LPG
79+
ParkingRestriction.VALET_ONLY -> CoreParkingRestriction.VALET_ONLY
80+
ParkingRestriction.VISITORS_ONLY -> CoreParkingRestriction.VISITORS_ONLY
81+
ParkingRestriction.EVENTS_ONLY -> CoreParkingRestriction.EVENTS_ONLY
82+
ParkingRestriction.NO_RESTRICTIONS_OUTSIDE_HOURS ->
83+
CoreParkingRestriction.NO_RESTRICTIONS_OUTSIDE_HOURS
84+
ParkingRestriction.BOOKING_ONLY -> CoreParkingRestriction.BOOKING_ONLY
85+
ParkingRestriction.PARKING_DISK -> CoreParkingRestriction.PARKING_DISK
86+
ParkingRestriction.UNKNOWN -> CoreParkingRestriction.UNKNOWN
87+
else -> null
88+
}
89+
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
@file:OptIn(MapboxExperimental::class)
2+
3+
package com.mapbox.search.base.factory.parking
4+
5+
import androidx.annotation.RestrictTo
6+
import com.mapbox.annotation.MapboxExperimental
7+
import com.mapbox.search.base.core.CoreParkingAvailabilityLevel
8+
import com.mapbox.search.common.parking.ParkingAvailabilityLevel
9+
10+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
11+
@ParkingAvailabilityLevel.Type
12+
fun CoreParkingAvailabilityLevel.mapToPlatform(): String {
13+
return when (this) {
14+
CoreParkingAvailabilityLevel.LOW -> ParkingAvailabilityLevel.LOW
15+
CoreParkingAvailabilityLevel.MID -> ParkingAvailabilityLevel.MID
16+
CoreParkingAvailabilityLevel.HIGH -> ParkingAvailabilityLevel.HIGH
17+
CoreParkingAvailabilityLevel.UNKNOWN -> ParkingAvailabilityLevel.UNKNOWN
18+
}
19+
}
20+
21+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
22+
fun createCoreParkingAvailabilityLevel(
23+
@ParkingAvailabilityLevel.Type level: String?,
24+
): CoreParkingAvailabilityLevel? {
25+
return when (level) {
26+
ParkingAvailabilityLevel.LOW -> CoreParkingAvailabilityLevel.LOW
27+
ParkingAvailabilityLevel.MID -> CoreParkingAvailabilityLevel.MID
28+
ParkingAvailabilityLevel.HIGH -> CoreParkingAvailabilityLevel.HIGH
29+
ParkingAvailabilityLevel.UNKNOWN -> CoreParkingAvailabilityLevel.UNKNOWN
30+
else -> null
31+
}
32+
}
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
@file:OptIn(MapboxExperimental::class)
2+
3+
package com.mapbox.search.base.factory.parking
4+
5+
import androidx.annotation.RestrictTo
6+
import com.mapbox.annotation.MapboxExperimental
7+
import com.mapbox.search.base.core.CoreParkingInfo
8+
import com.mapbox.search.base.factory.createCoreParkingRestriction
9+
import com.mapbox.search.base.factory.mapToPlatform
10+
import com.mapbox.search.common.parking.ParkingInfo
11+
12+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
13+
fun CoreParkingInfo.mapToPlatform(): ParkingInfo {
14+
return ParkingInfo(
15+
capacity = capacity,
16+
rateInfo = rateInfo?.mapToPlatform(),
17+
availability = availability,
18+
availabilityLevel = availabilityLevel?.mapToPlatform(),
19+
availabilityUpdatedAt = availabilityAt,
20+
trend = trend?.mapToPlatform(),
21+
paymentMethods = paymentMethods?.mapNotNull { it?.mapToPlatform() },
22+
paymentTypes = paymentTypes?.mapNotNull { it?.mapToPlatform() },
23+
restrictions = restrictions?.mapNotNull { it?.mapToPlatform() },
24+
)
25+
}
26+
27+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
28+
fun ParkingInfo.mapToCore(): CoreParkingInfo {
29+
return CoreParkingInfo(
30+
capacity = capacity,
31+
rateInfo = rateInfo?.mapToCore(),
32+
availability = availability,
33+
availabilityLevel = availabilityLevel?.let {
34+
createCoreParkingAvailabilityLevel(it)
35+
},
36+
availabilityAt = availabilityUpdatedAt,
37+
trend = trend?.let {
38+
createCoreParkingTrend(it)
39+
},
40+
paymentMethods = paymentMethods?.map {
41+
createCoreParkingPaymentMethod(it)
42+
},
43+
paymentTypes = paymentTypes?.map {
44+
createCoreParkingPaymentType(it)
45+
},
46+
restrictions = restrictions?.map {
47+
createCoreParkingRestriction(it)
48+
},
49+
)
50+
}
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
@file:OptIn(MapboxExperimental::class)
2+
3+
package com.mapbox.search.base.factory.parking
4+
5+
import androidx.annotation.RestrictTo
6+
import com.mapbox.annotation.MapboxExperimental
7+
import com.mapbox.search.base.core.CoreParkingPaymentMethod
8+
import com.mapbox.search.common.parking.ParkingPaymentMethod
9+
10+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
11+
@ParkingPaymentMethod.Type
12+
fun CoreParkingPaymentMethod.mapToPlatform(): String {
13+
return when (this) {
14+
CoreParkingPaymentMethod.PAY_ON_FOOT -> ParkingPaymentMethod.PAY_ON_FOOT
15+
CoreParkingPaymentMethod.PAY_AND_DISPLAY -> ParkingPaymentMethod.PAY_AND_DISPLAY
16+
CoreParkingPaymentMethod.PAY_ON_EXIT -> ParkingPaymentMethod.PAY_ON_EXIT
17+
CoreParkingPaymentMethod.PAY_ON_ENTRY -> ParkingPaymentMethod.PAY_ON_ENTRY
18+
CoreParkingPaymentMethod.PARKING_METER -> ParkingPaymentMethod.PARKING_METER
19+
CoreParkingPaymentMethod.MULTI_SPACE_METER -> ParkingPaymentMethod.MULTI_SPACE_METER
20+
CoreParkingPaymentMethod.HONESTY_BOX -> ParkingPaymentMethod.HONESTY_BOX
21+
CoreParkingPaymentMethod.ATTENDANT -> ParkingPaymentMethod.ATTENDANT
22+
CoreParkingPaymentMethod.PAY_BY_PLATE -> ParkingPaymentMethod.PAY_BY_PLATE
23+
CoreParkingPaymentMethod.PAY_AT_RECEPTION -> ParkingPaymentMethod.PAY_AT_RECEPTION
24+
CoreParkingPaymentMethod.PAY_BY_PHONE -> ParkingPaymentMethod.PAY_BY_PHONE
25+
CoreParkingPaymentMethod.PAY_BY_COUPON -> ParkingPaymentMethod.PAY_BY_COUPON
26+
CoreParkingPaymentMethod.ELECTRONIC_PARKING_SYSTEM ->
27+
ParkingPaymentMethod.ELECTRONIC_PARKING_SYSTEM
28+
CoreParkingPaymentMethod.UNKNOWN -> ParkingPaymentMethod.UNKNOWN
29+
}
30+
}
31+
32+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
33+
fun createCoreParkingPaymentMethod(
34+
@ParkingPaymentMethod.Type type: String?,
35+
): CoreParkingPaymentMethod? {
36+
return when (type) {
37+
ParkingPaymentMethod.PAY_ON_FOOT -> CoreParkingPaymentMethod.PAY_ON_FOOT
38+
ParkingPaymentMethod.PAY_AND_DISPLAY -> CoreParkingPaymentMethod.PAY_AND_DISPLAY
39+
ParkingPaymentMethod.PAY_ON_EXIT -> CoreParkingPaymentMethod.PAY_ON_EXIT
40+
ParkingPaymentMethod.PAY_ON_ENTRY -> CoreParkingPaymentMethod.PAY_ON_ENTRY
41+
ParkingPaymentMethod.PARKING_METER -> CoreParkingPaymentMethod.PARKING_METER
42+
ParkingPaymentMethod.MULTI_SPACE_METER -> CoreParkingPaymentMethod.MULTI_SPACE_METER
43+
ParkingPaymentMethod.HONESTY_BOX -> CoreParkingPaymentMethod.HONESTY_BOX
44+
ParkingPaymentMethod.ATTENDANT -> CoreParkingPaymentMethod.ATTENDANT
45+
ParkingPaymentMethod.PAY_BY_PLATE -> CoreParkingPaymentMethod.PAY_BY_PLATE
46+
ParkingPaymentMethod.PAY_AT_RECEPTION -> CoreParkingPaymentMethod.PAY_AT_RECEPTION
47+
ParkingPaymentMethod.PAY_BY_PHONE -> CoreParkingPaymentMethod.PAY_BY_PHONE
48+
ParkingPaymentMethod.PAY_BY_COUPON -> CoreParkingPaymentMethod.PAY_BY_COUPON
49+
ParkingPaymentMethod.ELECTRONIC_PARKING_SYSTEM ->
50+
CoreParkingPaymentMethod.ELECTRONIC_PARKING_SYSTEM
51+
ParkingPaymentMethod.UNKNOWN -> CoreParkingPaymentMethod.UNKNOWN
52+
else -> null
53+
}
54+
}
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
@file:OptIn(MapboxExperimental::class)
2+
3+
package com.mapbox.search.base.factory.parking
4+
5+
import androidx.annotation.RestrictTo
6+
import com.mapbox.annotation.MapboxExperimental
7+
import com.mapbox.search.base.core.CoreParkingPaymentType
8+
import com.mapbox.search.common.parking.ParkingPaymentType
9+
10+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
11+
@ParkingPaymentType.Type
12+
fun CoreParkingPaymentType.mapToPlatform(): String {
13+
return when (this) {
14+
CoreParkingPaymentType.COINS -> ParkingPaymentType.COINS
15+
CoreParkingPaymentType.NOTES -> ParkingPaymentType.NOTES
16+
CoreParkingPaymentType.CONTACTLESS -> ParkingPaymentType.CONTACTLESS
17+
CoreParkingPaymentType.CARDS -> ParkingPaymentType.CARDS
18+
CoreParkingPaymentType.MOBILE -> ParkingPaymentType.MOBILE
19+
CoreParkingPaymentType.CARDS_VISA -> ParkingPaymentType.CARDS_VISA
20+
CoreParkingPaymentType.CARDS_MASTERCARD -> ParkingPaymentType.CARDS_MASTERCARD
21+
CoreParkingPaymentType.CARDS_AMEX -> ParkingPaymentType.CARDS_AMEX
22+
CoreParkingPaymentType.CARDS_MAESTRO -> ParkingPaymentType.CARDS_MAESTRO
23+
CoreParkingPaymentType.EFTPOS -> ParkingPaymentType.EFTPOS
24+
CoreParkingPaymentType.CARDS_DINERS -> ParkingPaymentType.CARDS_DINERS
25+
CoreParkingPaymentType.CARDS_GELDKARTE -> ParkingPaymentType.CARDS_GELDKARTE
26+
CoreParkingPaymentType.CARDS_DISCOVER -> ParkingPaymentType.CARDS_DISCOVER
27+
CoreParkingPaymentType.CHEQUE -> ParkingPaymentType.CHEQUE
28+
CoreParkingPaymentType.CARDS_ECASH -> ParkingPaymentType.CARDS_ECASH
29+
CoreParkingPaymentType.CARDS_JCB -> ParkingPaymentType.CARDS_JCB
30+
CoreParkingPaymentType.CARDS_OPERATORCARD -> ParkingPaymentType.CARDS_OPERATORCARD
31+
CoreParkingPaymentType.CARDS_SMARTCARD -> ParkingPaymentType.CARDS_SMARTCARD
32+
CoreParkingPaymentType.CARDS_TELEPEAGE -> ParkingPaymentType.CARDS_TELEPEAGE
33+
CoreParkingPaymentType.CARDS_TOTALGR -> ParkingPaymentType.CARDS_TOTALGR
34+
CoreParkingPaymentType.CARDS_MONEO -> ParkingPaymentType.CARDS_MONEO
35+
CoreParkingPaymentType.CARDS_FLASHPAY -> ParkingPaymentType.CARDS_FLASHPAY
36+
CoreParkingPaymentType.CARDS_CASHCARD -> ParkingPaymentType.CARDS_CASHCARD
37+
CoreParkingPaymentType.CARDS_VCASHCARD -> ParkingPaymentType.CARDS_VCASHCARD
38+
CoreParkingPaymentType.CARDS_CEPAS -> ParkingPaymentType.CARDS_CEPAS
39+
CoreParkingPaymentType.CARDS_OCTOPUS -> ParkingPaymentType.CARDS_OCTOPUS
40+
CoreParkingPaymentType.ALIPAY -> ParkingPaymentType.ALIPAY
41+
CoreParkingPaymentType.WECHATPAY -> ParkingPaymentType.WECHATPAY
42+
CoreParkingPaymentType.CARDS_EASYCARD -> ParkingPaymentType.CARDS_EASYCARD
43+
CoreParkingPaymentType.CARDS_CARTEBLEUE -> ParkingPaymentType.CARDS_CARTEBLEUE
44+
CoreParkingPaymentType.CARDS_TOUCHNGO -> ParkingPaymentType.CARDS_TOUCHNGO
45+
CoreParkingPaymentType.UNKNOWN -> ParkingPaymentType.UNKNOWN
46+
}
47+
}
48+
49+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
50+
fun createCoreParkingPaymentType(@ParkingPaymentType.Type type: String): CoreParkingPaymentType? {
51+
return when (type) {
52+
ParkingPaymentType.COINS -> CoreParkingPaymentType.COINS
53+
ParkingPaymentType.NOTES -> CoreParkingPaymentType.NOTES
54+
ParkingPaymentType.CONTACTLESS -> CoreParkingPaymentType.CONTACTLESS
55+
ParkingPaymentType.CARDS -> CoreParkingPaymentType.CARDS
56+
ParkingPaymentType.MOBILE -> CoreParkingPaymentType.MOBILE
57+
ParkingPaymentType.CARDS_VISA -> CoreParkingPaymentType.CARDS_VISA
58+
ParkingPaymentType.CARDS_MASTERCARD -> CoreParkingPaymentType.CARDS_MASTERCARD
59+
ParkingPaymentType.CARDS_AMEX -> CoreParkingPaymentType.CARDS_AMEX
60+
ParkingPaymentType.CARDS_MAESTRO -> CoreParkingPaymentType.CARDS_MAESTRO
61+
ParkingPaymentType.EFTPOS -> CoreParkingPaymentType.EFTPOS
62+
ParkingPaymentType.CARDS_DINERS -> CoreParkingPaymentType.CARDS_DINERS
63+
ParkingPaymentType.CARDS_GELDKARTE -> CoreParkingPaymentType.CARDS_GELDKARTE
64+
ParkingPaymentType.CARDS_DISCOVER -> CoreParkingPaymentType.CARDS_DISCOVER
65+
ParkingPaymentType.CHEQUE -> CoreParkingPaymentType.CHEQUE
66+
ParkingPaymentType.CARDS_ECASH -> CoreParkingPaymentType.CARDS_ECASH
67+
ParkingPaymentType.CARDS_JCB -> CoreParkingPaymentType.CARDS_JCB
68+
ParkingPaymentType.CARDS_OPERATORCARD -> CoreParkingPaymentType.CARDS_OPERATORCARD
69+
ParkingPaymentType.CARDS_SMARTCARD -> CoreParkingPaymentType.CARDS_SMARTCARD
70+
ParkingPaymentType.CARDS_TELEPEAGE -> CoreParkingPaymentType.CARDS_TELEPEAGE
71+
ParkingPaymentType.CARDS_TOTALGR -> CoreParkingPaymentType.CARDS_TOTALGR
72+
ParkingPaymentType.CARDS_MONEO -> CoreParkingPaymentType.CARDS_MONEO
73+
ParkingPaymentType.CARDS_FLASHPAY -> CoreParkingPaymentType.CARDS_FLASHPAY
74+
ParkingPaymentType.CARDS_CASHCARD -> CoreParkingPaymentType.CARDS_CASHCARD
75+
ParkingPaymentType.CARDS_VCASHCARD -> CoreParkingPaymentType.CARDS_VCASHCARD
76+
ParkingPaymentType.CARDS_CEPAS -> CoreParkingPaymentType.CARDS_CEPAS
77+
ParkingPaymentType.CARDS_OCTOPUS -> CoreParkingPaymentType.CARDS_OCTOPUS
78+
ParkingPaymentType.ALIPAY -> CoreParkingPaymentType.ALIPAY
79+
ParkingPaymentType.WECHATPAY -> CoreParkingPaymentType.WECHATPAY
80+
ParkingPaymentType.CARDS_EASYCARD -> CoreParkingPaymentType.CARDS_EASYCARD
81+
ParkingPaymentType.CARDS_CARTEBLEUE -> CoreParkingPaymentType.CARDS_CARTEBLEUE
82+
ParkingPaymentType.CARDS_TOUCHNGO -> CoreParkingPaymentType.CARDS_TOUCHNGO
83+
ParkingPaymentType.UNKNOWN -> CoreParkingPaymentType.UNKNOWN
84+
else -> null
85+
}
86+
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
@file:OptIn(MapboxExperimental::class)
2+
3+
package com.mapbox.search.base.factory.parking
4+
5+
import androidx.annotation.RestrictTo
6+
import com.mapbox.annotation.MapboxExperimental
7+
import com.mapbox.search.base.core.CoreParkingPriceType
8+
import com.mapbox.search.common.parking.ParkingPriceType
9+
10+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
11+
@ParkingPriceType.Type
12+
fun CoreParkingPriceType.mapToPlatform(): String {
13+
return when (this) {
14+
CoreParkingPriceType.DURATION -> ParkingPriceType.DURATION
15+
CoreParkingPriceType.DURATION_ADDITIONAL -> ParkingPriceType.DURATION_ADDITIONAL
16+
CoreParkingPriceType.CUSTOM -> ParkingPriceType.CUSTOM
17+
}
18+
}
19+
20+
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
21+
fun createCoreParkingPriceType(@ParkingPriceType.Type type: String?): CoreParkingPriceType? {
22+
return when (type) {
23+
ParkingPriceType.DURATION -> CoreParkingPriceType.DURATION
24+
ParkingPriceType.DURATION_ADDITIONAL -> CoreParkingPriceType.DURATION_ADDITIONAL
25+
ParkingPriceType.CUSTOM -> CoreParkingPriceType.CUSTOM
26+
else -> null
27+
}
28+
}

0 commit comments

Comments
 (0)