/** * Generated by API Builder - https://www.apibuilder.io * Service version: 1.0.1 * User agent: apibuilder app.apibuilder.io/gilt/gilt-public-api/1.0.1/anorm_2_9_scala_3_parsers */ import anorm._ package com.gilt.public.api.anorm.parsers { import com.gilt.public.api.anorm.conversions.Standard._ import com.gilt.public.api.anorm.conversions.Types._ object Store { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.Store] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "store", prefixOpt: Option[String] = None): RowParser[com.gilt.public.api.models.Store] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.public.api.models.Store(value) } } } object Product { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.Product] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", product: String = "product", id: String = "id", brand: String = "brand", url: String = "url", contentPrefix: String = "content", categories: String = "categories", imageUrls: String = "image_urls", skus: String = "skus", prefixOpt: Option[String] = None ): RowParser[com.gilt.public.api.models.Product] = { SqlParser.str(prefixOpt.getOrElse("") + name) ~ SqlParser.str(prefixOpt.getOrElse("") + product) ~ SqlParser.long(prefixOpt.getOrElse("") + id) ~ SqlParser.str(prefixOpt.getOrElse("") + brand) ~ SqlParser.str(prefixOpt.getOrElse("") + url) ~ com.gilt.public.api.anorm.parsers.ProductContent.parserWithPrefix(prefixOpt.getOrElse("") + contentPrefix) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + categories) ~ SqlParser.get[_root_.play.api.libs.json.JsObject](prefixOpt.getOrElse("") + imageUrls) ~ SqlParser.get[Seq[com.gilt.public.api.models.Sku]](prefixOpt.getOrElse("") + skus) map { case name ~ product ~ id ~ brand ~ url ~ content ~ categories ~ imageUrls ~ skus => { com.gilt.public.api.models.Product( name = name, product = product, id = id, brand = brand, url = url, content = content, categories = categories, imageUrls = imageUrls, skus = skus ) } } } } object ProductCategories { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.ProductCategories] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( categories: String = "categories", prefixOpt: Option[String] = None ): RowParser[com.gilt.public.api.models.ProductCategories] = { SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + categories) map { case categories => { com.gilt.public.api.models.ProductCategories( categories = categories ) } } } } object ProductContent { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.ProductContent] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( description: String = "description", fitNotes: String = "fit_notes", material: String = "material", careInstructions: String = "care_instructions", origin: String = "origin", prefixOpt: Option[String] = None ): RowParser[com.gilt.public.api.models.ProductContent] = { SqlParser.str(prefixOpt.getOrElse("") + description).? ~ SqlParser.str(prefixOpt.getOrElse("") + fitNotes).? ~ SqlParser.str(prefixOpt.getOrElse("") + material).? ~ SqlParser.str(prefixOpt.getOrElse("") + careInstructions).? ~ SqlParser.str(prefixOpt.getOrElse("") + origin).? map { case description ~ fitNotes ~ material ~ careInstructions ~ origin => { com.gilt.public.api.models.ProductContent( description = description, fitNotes = fitNotes, material = material, careInstructions = careInstructions, origin = origin ) } } } } object SaleDetail { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.SaleDetail] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", sale: String = "sale", saleKey: String = "sale_key", store: String = "store", description: String = "description", saleUrl: String = "sale_url", begins: String = "begins", ends: String = "ends", imageUrls: String = "image_urls", products: String = "products", prefixOpt: Option[String] = None ): RowParser[com.gilt.public.api.models.SaleDetail] = { SqlParser.str(prefixOpt.getOrElse("") + name) ~ SqlParser.str(prefixOpt.getOrElse("") + sale) ~ SqlParser.str(prefixOpt.getOrElse("") + saleKey) ~ com.gilt.public.api.anorm.parsers.Store.parser(prefixOpt.getOrElse("") + store) ~ SqlParser.str(prefixOpt.getOrElse("") + description).? ~ SqlParser.str(prefixOpt.getOrElse("") + saleUrl) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + begins) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + ends).? ~ SqlParser.get[_root_.play.api.libs.json.JsObject](prefixOpt.getOrElse("") + imageUrls) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + products).? map { case name ~ sale ~ saleKey ~ store ~ description ~ saleUrl ~ begins ~ ends ~ imageUrls ~ products => { com.gilt.public.api.models.SaleDetail( name = name, sale = sale, saleKey = saleKey, store = store, description = description, saleUrl = saleUrl, begins = begins, ends = ends, imageUrls = imageUrls, products = products ) } } } } object SaleList { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.SaleList] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( sales: String = "sales", prefixOpt: Option[String] = None ): RowParser[com.gilt.public.api.models.SaleList] = { SqlParser.get[Seq[com.gilt.public.api.models.SaleDetail]](prefixOpt.getOrElse("") + sales) map { case sales => { com.gilt.public.api.models.SaleList( sales = sales ) } } } } object Sku { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.public.api.models.Sku] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( id: String = "id", inventoryStatus: String = "inventory_status", msrpPrice: String = "msrp_price", salePrice: String = "sale_price", shippingSurcharge: String = "shipping_surcharge", attributes: String = "attributes", prefixOpt: Option[String] = None ): RowParser[com.gilt.public.api.models.Sku] = { SqlParser.long(prefixOpt.getOrElse("") + id) ~ SqlParser.str(prefixOpt.getOrElse("") + inventoryStatus) ~ SqlParser.get[BigDecimal](prefixOpt.getOrElse("") + msrpPrice) ~ SqlParser.get[BigDecimal](prefixOpt.getOrElse("") + salePrice) ~ SqlParser.get[BigDecimal](prefixOpt.getOrElse("") + shippingSurcharge).? ~ SqlParser.get[Seq[_root_.play.api.libs.json.JsObject]](prefixOpt.getOrElse("") + attributes) map { case id ~ inventoryStatus ~ msrpPrice ~ salePrice ~ shippingSurcharge ~ attributes => { com.gilt.public.api.models.Sku( id = id, inventoryStatus = inventoryStatus, msrpPrice = msrpPrice, salePrice = salePrice, shippingSurcharge = shippingSurcharge, attributes = attributes ) } } } } }