/** * Generated by API Builder - https://www.apibuilder.io * Service version: 0.2.7 * User agent: apibuilder app.apibuilder.io/gilt/svc-sundial/0.2.7/anorm_2_8_parsers */ import anorm._ package com.gilt.svc.sundial.v0.anorm.parsers { import com.gilt.svc.sundial.v0.anorm.conversions.Standard._ import com.gilt.svc.sundial.v0.anorm.conversions.Types._ object DefaultEmrJobFlowRole { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.DefaultEmrJobFlowRole] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "default_emr_job_flow_role", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.DefaultEmrJobFlowRole] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.DefaultEmrJobFlowRole(value) } } } object DefaultEmrServiceRole { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.DefaultEmrServiceRole] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "default_emr_service_role", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.DefaultEmrServiceRole] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.DefaultEmrServiceRole(value) } } } object EmrApplication { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.EmrApplication] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "emr_application", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.EmrApplication] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.EmrApplication(value) } } } object EmrReleaseLabel { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.EmrReleaseLabel] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "emr_release_label", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.EmrReleaseLabel] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.EmrReleaseLabel(value) } } } object NotificationOptions { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.NotificationOptions] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "notification_options", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.NotificationOptions] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.NotificationOptions(value) } } } object OnDemand { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.OnDemand] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "on_demand", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.OnDemand] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.OnDemand(value) } } } object ProcessOverlapAction { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.ProcessOverlapAction] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "process_overlap_action", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.ProcessOverlapAction] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.ProcessOverlapAction(value) } } } object ProcessStatus { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.ProcessStatus] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "process_status", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.ProcessStatus] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.ProcessStatus(value) } } } object TaskStatus { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.TaskStatus] = parser(prefixOpt = Some(s"$prefix$sep")) def parser(name: String = "task_status", prefixOpt: Option[String] = None): RowParser[com.gilt.svc.sundial.v0.models.TaskStatus] = { SqlParser.str(prefixOpt.getOrElse("") + name) map { case value => com.gilt.svc.sundial.v0.models.TaskStatus(value) } } } object BatchImageCommand { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.BatchImageCommand] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( image: String = "image", tag: String = "tag", command: String = "command", memory: String = "memory", vCpus: String = "vCpus", jobRoleArn: String = "job_role_arn", environmentVariables: String = "environment_variables", jobQueue: String = "job_queue", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.BatchImageCommand] = { SqlParser.str(prefixOpt.getOrElse("") + image) ~ SqlParser.str(prefixOpt.getOrElse("") + tag) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + command) ~ SqlParser.int(prefixOpt.getOrElse("") + memory) ~ SqlParser.int(prefixOpt.getOrElse("") + vCpus) ~ SqlParser.str(prefixOpt.getOrElse("") + jobRoleArn).? ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.EnvironmentVariable]](prefixOpt.getOrElse("") + environmentVariables) ~ SqlParser.str(prefixOpt.getOrElse("") + jobQueue).? map { case image ~ tag ~ command ~ memory ~ vCpus ~ jobRoleArn ~ environmentVariables ~ jobQueue => { com.gilt.svc.sundial.v0.models.BatchImageCommand( image = image, tag = tag, command = command, memory = memory, vCpus = vCpus, jobRoleArn = jobRoleArn, environmentVariables = environmentVariables, jobQueue = jobQueue ) } } } } object ContinuousSchedule { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.ContinuousSchedule] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( bufferSeconds: String = "buffer_seconds", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.ContinuousSchedule] = { SqlParser.int(prefixOpt.getOrElse("") + bufferSeconds).? map { case bufferSeconds => { com.gilt.svc.sundial.v0.models.ContinuousSchedule( bufferSeconds = bufferSeconds ) } } } } object CronSchedule { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.CronSchedule] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( dayOfWeek: String = "day_of_week", month: String = "month", dayOfMonth: String = "day_of_month", hours: String = "hours", minutes: String = "minutes", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.CronSchedule] = { SqlParser.str(prefixOpt.getOrElse("") + dayOfWeek) ~ SqlParser.str(prefixOpt.getOrElse("") + month) ~ SqlParser.str(prefixOpt.getOrElse("") + dayOfMonth) ~ SqlParser.str(prefixOpt.getOrElse("") + hours) ~ SqlParser.str(prefixOpt.getOrElse("") + minutes) map { case dayOfWeek ~ month ~ dayOfMonth ~ hours ~ minutes => { com.gilt.svc.sundial.v0.models.CronSchedule( dayOfWeek = dayOfWeek, month = month, dayOfMonth = dayOfMonth, hours = hours, minutes = minutes ) } } } } object CustomEmrJobFlowRole { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.CustomEmrJobFlowRole] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( roleName: String = "role_name", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.CustomEmrJobFlowRole] = { SqlParser.str(prefixOpt.getOrElse("") + roleName) map { case roleName => { com.gilt.svc.sundial.v0.models.CustomEmrJobFlowRole( roleName = roleName ) } } } } object CustomEmrServiceRole { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.CustomEmrServiceRole] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( roleName: String = "role_name", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.CustomEmrServiceRole] = { SqlParser.str(prefixOpt.getOrElse("") + roleName) map { case roleName => { com.gilt.svc.sundial.v0.models.CustomEmrServiceRole( roleName = roleName ) } } } } object DockerImageCommand { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.DockerImageCommand] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( image: String = "image", tag: String = "tag", command: String = "command", memory: String = "memory", cpu: String = "cpu", taskRoleArn: String = "taskRoleArn", logPaths: String = "log_paths", environmentVariables: String = "environment_variables", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.DockerImageCommand] = { SqlParser.str(prefixOpt.getOrElse("") + image) ~ SqlParser.str(prefixOpt.getOrElse("") + tag) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + command) ~ SqlParser.int(prefixOpt.getOrElse("") + memory).? ~ SqlParser.int(prefixOpt.getOrElse("") + cpu).? ~ SqlParser.str(prefixOpt.getOrElse("") + taskRoleArn).? ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + logPaths) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.EnvironmentVariable]](prefixOpt.getOrElse("") + environmentVariables) map { case image ~ tag ~ command ~ memory ~ cpu ~ taskRoleArn ~ logPaths ~ environmentVariables => { com.gilt.svc.sundial.v0.models.DockerImageCommand( image = image, tag = tag, command = command, memory = memory, cpu = cpu, taskRoleArn = taskRoleArn, logPaths = logPaths, environmentVariables = environmentVariables ) } } } } object Email { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.Email] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", email: String = "email", notifyWhen: String = "notify_when", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.Email] = { SqlParser.str(prefixOpt.getOrElse("") + name) ~ SqlParser.str(prefixOpt.getOrElse("") + email) ~ com.gilt.svc.sundial.v0.anorm.parsers.NotificationOptions.parser(prefixOpt.getOrElse("") + notifyWhen) map { case name ~ email ~ notifyWhen => { com.gilt.svc.sundial.v0.models.Email( name = name, email = email, notifyWhen = notifyWhen ) } } } } object EmrCommand { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.EmrCommand] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( emrClusterPrefix: String = "emr_cluster", jobName: String = "job_name", region: String = "region", `class`: String = "class", s3JarPath: String = "s3_jar_path", sparkConf: String = "spark_conf", args: String = "args", s3LogDetailsPrefix: String = "s3_log_details", loadData: String = "load_data", saveResults: String = "save_results", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.EmrCommand] = { com.gilt.svc.sundial.v0.anorm.parsers.EmrCluster.parserWithPrefix(prefixOpt.getOrElse("") + emrClusterPrefix) ~ SqlParser.str(prefixOpt.getOrElse("") + jobName) ~ SqlParser.str(prefixOpt.getOrElse("") + region) ~ SqlParser.str(prefixOpt.getOrElse("") + `class`) ~ SqlParser.str(prefixOpt.getOrElse("") + s3JarPath) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + sparkConf) ~ SqlParser.get[Seq[String]](prefixOpt.getOrElse("") + args) ~ com.gilt.svc.sundial.v0.anorm.parsers.S3LogDetails.parserWithPrefix(prefixOpt.getOrElse("") + s3LogDetailsPrefix).? ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.S3Cp]](prefixOpt.getOrElse("") + loadData).? ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.S3Cp]](prefixOpt.getOrElse("") + saveResults).? map { case emrCluster ~ jobName ~ region ~ classInstance ~ s3JarPath ~ sparkConf ~ args ~ s3LogDetails ~ loadData ~ saveResults => { com.gilt.svc.sundial.v0.models.EmrCommand( emrCluster = emrCluster, jobName = jobName, region = region, `class` = classInstance, s3JarPath = s3JarPath, sparkConf = sparkConf, args = args, s3LogDetails = s3LogDetails, loadData = loadData, saveResults = saveResults ) } } } } object EmrInstanceGroupDetails { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.EmrInstanceGroupDetails] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( emrInstanceType: String = "emr_instance_type", instanceCount: String = "instance_count", awsMarketPrefix: String = "aws_market", ebsVolumeSize: String = "ebs_volume_size", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.EmrInstanceGroupDetails] = { SqlParser.str(prefixOpt.getOrElse("") + emrInstanceType) ~ SqlParser.int(prefixOpt.getOrElse("") + instanceCount) ~ com.gilt.svc.sundial.v0.anorm.parsers.AwsMarket.parserWithPrefix(prefixOpt.getOrElse("") + awsMarketPrefix) ~ SqlParser.int(prefixOpt.getOrElse("") + ebsVolumeSize).? map { case emrInstanceType ~ instanceCount ~ awsMarket ~ ebsVolumeSize => { com.gilt.svc.sundial.v0.models.EmrInstanceGroupDetails( emrInstanceType = emrInstanceType, instanceCount = instanceCount, awsMarket = awsMarket, ebsVolumeSize = ebsVolumeSize ) } } } } object EnvironmentVariable { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.EnvironmentVariable] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( variableName: String = "variable_name", value: String = "value", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.EnvironmentVariable] = { SqlParser.str(prefixOpt.getOrElse("") + variableName) ~ SqlParser.str(prefixOpt.getOrElse("") + value) map { case variableName ~ value => { com.gilt.svc.sundial.v0.models.EnvironmentVariable( variableName = variableName, value = value ) } } } } object ExistingEmrCluster { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.ExistingEmrCluster] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( clusterId: String = "cluster_id", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.ExistingEmrCluster] = { SqlParser.str(prefixOpt.getOrElse("") + clusterId) map { case clusterId => { com.gilt.svc.sundial.v0.models.ExistingEmrCluster( clusterId = clusterId ) } } } } object Healthcheck { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.Healthcheck] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( status: String = "status", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.Healthcheck] = { SqlParser.str(prefixOpt.getOrElse("") + status) map { case status => { com.gilt.svc.sundial.v0.models.Healthcheck( status = status ) } } } } object LogEntry { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.LogEntry] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( logEntryId: String = "log_entry_id", when: String = "when", source: String = "source", message: String = "message", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.LogEntry] = { SqlParser.get[_root_.java.util.UUID](prefixOpt.getOrElse("") + logEntryId) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + when) ~ SqlParser.str(prefixOpt.getOrElse("") + source) ~ SqlParser.str(prefixOpt.getOrElse("") + message) map { case logEntryId ~ when ~ source ~ message => { com.gilt.svc.sundial.v0.models.LogEntry( logEntryId = logEntryId, when = when, source = source, message = message ) } } } } object MetadataEntry { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.MetadataEntry] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( metadataEntryId: String = "metadata_entry_id", when: String = "when", key: String = "key", value: String = "value", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.MetadataEntry] = { SqlParser.get[_root_.java.util.UUID](prefixOpt.getOrElse("") + metadataEntryId) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + when) ~ SqlParser.str(prefixOpt.getOrElse("") + key) ~ SqlParser.str(prefixOpt.getOrElse("") + value) map { case metadataEntryId ~ when ~ key ~ value => { com.gilt.svc.sundial.v0.models.MetadataEntry( metadataEntryId = metadataEntryId, when = when, key = key, value = value ) } } } } object NewEmrCluster { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.NewEmrCluster] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( name: String = "name", releaseLabel: String = "release_label", applications: String = "applications", s3LogUri: String = "s3_log_uri", masterInstancePrefix: String = "master_instance", coreInstancePrefix: String = "core_instance", taskInstancePrefix: String = "task_instance", ec2Subnet: String = "ec2_subnet", emrServiceRolePrefix: String = "emr_service_role", emrJobFlowRolePrefix: String = "emr_job_flow_role", visibleToAllUsers: String = "visible_to_all_users", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.NewEmrCluster] = { SqlParser.str(prefixOpt.getOrElse("") + name) ~ com.gilt.svc.sundial.v0.anorm.parsers.EmrReleaseLabel.parser(prefixOpt.getOrElse("") + releaseLabel) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.EmrApplication]](prefixOpt.getOrElse("") + applications) ~ SqlParser.str(prefixOpt.getOrElse("") + s3LogUri) ~ com.gilt.svc.sundial.v0.anorm.parsers.EmrInstanceGroupDetails.parserWithPrefix(prefixOpt.getOrElse("") + masterInstancePrefix) ~ com.gilt.svc.sundial.v0.anorm.parsers.EmrInstanceGroupDetails.parserWithPrefix(prefixOpt.getOrElse("") + coreInstancePrefix).? ~ com.gilt.svc.sundial.v0.anorm.parsers.EmrInstanceGroupDetails.parserWithPrefix(prefixOpt.getOrElse("") + taskInstancePrefix).? ~ SqlParser.str(prefixOpt.getOrElse("") + ec2Subnet).? ~ com.gilt.svc.sundial.v0.anorm.parsers.EmrServiceRole.parserWithPrefix(prefixOpt.getOrElse("") + emrServiceRolePrefix) ~ com.gilt.svc.sundial.v0.anorm.parsers.EmrJobFlowRole.parserWithPrefix(prefixOpt.getOrElse("") + emrJobFlowRolePrefix) ~ SqlParser.bool(prefixOpt.getOrElse("") + visibleToAllUsers) map { case name ~ releaseLabel ~ applications ~ s3LogUri ~ masterInstance ~ coreInstance ~ taskInstance ~ ec2Subnet ~ emrServiceRole ~ emrJobFlowRole ~ visibleToAllUsers => { com.gilt.svc.sundial.v0.models.NewEmrCluster( name = name, releaseLabel = releaseLabel, applications = applications, s3LogUri = s3LogUri, masterInstance = masterInstance, coreInstance = coreInstance, taskInstance = taskInstance, ec2Subnet = ec2Subnet, emrServiceRole = emrServiceRole, emrJobFlowRole = emrJobFlowRole, visibleToAllUsers = visibleToAllUsers ) } } } } object Pagerduty { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.Pagerduty] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( serviceKey: String = "service_key", numConsecutiveFailures: String = "num_consecutive_failures", apiUrl: String = "api_url", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.Pagerduty] = { SqlParser.str(prefixOpt.getOrElse("") + serviceKey) ~ SqlParser.int(prefixOpt.getOrElse("") + numConsecutiveFailures) ~ SqlParser.str(prefixOpt.getOrElse("") + apiUrl) map { case serviceKey ~ numConsecutiveFailures ~ apiUrl => { com.gilt.svc.sundial.v0.models.Pagerduty( serviceKey = serviceKey, numConsecutiveFailures = numConsecutiveFailures, apiUrl = apiUrl ) } } } } object Process { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.Process] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( processId: String = "process_id", processDefinitionName: String = "process_definition_name", startTime: String = "start_time", status: String = "status", task: String = "task", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.Process] = { SqlParser.get[_root_.java.util.UUID](prefixOpt.getOrElse("") + processId) ~ SqlParser.str(prefixOpt.getOrElse("") + processDefinitionName) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + startTime) ~ com.gilt.svc.sundial.v0.anorm.parsers.ProcessStatus.parser(prefixOpt.getOrElse("") + status) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.Task]](prefixOpt.getOrElse("") + task) map { case processId ~ processDefinitionName ~ startTime ~ status ~ task => { com.gilt.svc.sundial.v0.models.Process( processId = processId, processDefinitionName = processDefinitionName, startTime = startTime, status = status, task = task ) } } } } object ProcessDefinition { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.ProcessDefinition] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( processDefinitionName: String = "process_definition_name", paused: String = "paused", processDescription: String = "process_description", schedulePrefix: String = "schedule", taskDefinitions: String = "task_definitions", overlapAction: String = "overlap_action", notifications: String = "notifications", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.ProcessDefinition] = { SqlParser.str(prefixOpt.getOrElse("") + processDefinitionName) ~ SqlParser.bool(prefixOpt.getOrElse("") + paused).? ~ SqlParser.str(prefixOpt.getOrElse("") + processDescription).? ~ com.gilt.svc.sundial.v0.anorm.parsers.ProcessSchedule.parserWithPrefix(prefixOpt.getOrElse("") + schedulePrefix).? ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.TaskDefinition]](prefixOpt.getOrElse("") + taskDefinitions) ~ com.gilt.svc.sundial.v0.anorm.parsers.ProcessOverlapAction.parser(prefixOpt.getOrElse("") + overlapAction) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.Notification]](prefixOpt.getOrElse("") + notifications).? map { case processDefinitionName ~ paused ~ processDescription ~ schedule ~ taskDefinitions ~ overlapAction ~ notifications => { com.gilt.svc.sundial.v0.models.ProcessDefinition( processDefinitionName = processDefinitionName, paused = paused, processDescription = processDescription, schedule = schedule, taskDefinitions = taskDefinitions, overlapAction = overlapAction, notifications = notifications ) } } } } object S3Cp { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.S3Cp] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( source: String = "source", destination: String = "destination", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.S3Cp] = { SqlParser.str(prefixOpt.getOrElse("") + source) ~ SqlParser.str(prefixOpt.getOrElse("") + destination) map { case source ~ destination => { com.gilt.svc.sundial.v0.models.S3Cp( source = source, destination = destination ) } } } } object S3LogDetails { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.S3LogDetails] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( logGroupName: String = "log_group_name", logStreamName: String = "log_stream_name", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.S3LogDetails] = { SqlParser.str(prefixOpt.getOrElse("") + logGroupName) ~ SqlParser.str(prefixOpt.getOrElse("") + logStreamName) map { case logGroupName ~ logStreamName => { com.gilt.svc.sundial.v0.models.S3LogDetails( logGroupName = logGroupName, logStreamName = logStreamName ) } } } } object ShellScriptCommand { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.ShellScriptCommand] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( script: String = "script", environmentVariables: String = "environment_variables", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.ShellScriptCommand] = { SqlParser.str(prefixOpt.getOrElse("") + script) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.EnvironmentVariable]](prefixOpt.getOrElse("") + environmentVariables).? map { case script ~ environmentVariables => { com.gilt.svc.sundial.v0.models.ShellScriptCommand( script = script, environmentVariables = environmentVariables ) } } } } object Spot { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.Spot] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( bidPrice: String = "bid_price", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.Spot] = { SqlParser.get[BigDecimal](prefixOpt.getOrElse("") + bidPrice) map { case bidPrice => { com.gilt.svc.sundial.v0.models.Spot( bidPrice = bidPrice ) } } } } object Task { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.Task] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( taskId: String = "task_id", processId: String = "process_id", processDefinitionName: String = "process_definition_name", taskDefinitionName: String = "task_definition_name", startTime: String = "start_time", endTime: String = "end_time", previousAttemptCount: String = "previous_attempt_count", logEntries: String = "log_entries", metadataEntries: String = "metadata_entries", executionState: String = "execution_state", status: String = "status", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.Task] = { SqlParser.get[_root_.java.util.UUID](prefixOpt.getOrElse("") + taskId) ~ SqlParser.get[_root_.java.util.UUID](prefixOpt.getOrElse("") + processId) ~ SqlParser.str(prefixOpt.getOrElse("") + processDefinitionName) ~ SqlParser.str(prefixOpt.getOrElse("") + taskDefinitionName) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + startTime) ~ SqlParser.get[_root_.org.joda.time.DateTime](prefixOpt.getOrElse("") + endTime).? ~ SqlParser.int(prefixOpt.getOrElse("") + previousAttemptCount) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.LogEntry]](prefixOpt.getOrElse("") + logEntries) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.MetadataEntry]](prefixOpt.getOrElse("") + metadataEntries) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.MetadataEntry]](prefixOpt.getOrElse("") + executionState).? ~ com.gilt.svc.sundial.v0.anorm.parsers.TaskStatus.parser(prefixOpt.getOrElse("") + status) map { case taskId ~ processId ~ processDefinitionName ~ taskDefinitionName ~ startTime ~ endTime ~ previousAttemptCount ~ logEntries ~ metadataEntries ~ executionState ~ status => { com.gilt.svc.sundial.v0.models.Task( taskId = taskId, processId = processId, processDefinitionName = processDefinitionName, taskDefinitionName = taskDefinitionName, startTime = startTime, endTime = endTime, previousAttemptCount = previousAttemptCount, logEntries = logEntries, metadataEntries = metadataEntries, executionState = executionState, status = status ) } } } } object TaskDefinition { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.TaskDefinition] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( taskDefinitionName: String = "task_definition_name", dependencies: String = "dependencies", executablePrefix: String = "executable", maxAttempts: String = "max_attempts", maxRuntimeSeconds: String = "max_runtime_seconds", backoffBaseSeconds: String = "backoff_base_seconds", backoffExponent: String = "backoff_exponent", requireExplicitSuccess: String = "require_explicit_success", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.TaskDefinition] = { SqlParser.str(prefixOpt.getOrElse("") + taskDefinitionName) ~ SqlParser.get[Seq[com.gilt.svc.sundial.v0.models.TaskDependency]](prefixOpt.getOrElse("") + dependencies) ~ com.gilt.svc.sundial.v0.anorm.parsers.TaskExecutable.parserWithPrefix(prefixOpt.getOrElse("") + executablePrefix) ~ SqlParser.int(prefixOpt.getOrElse("") + maxAttempts) ~ SqlParser.int(prefixOpt.getOrElse("") + maxRuntimeSeconds).? ~ SqlParser.int(prefixOpt.getOrElse("") + backoffBaseSeconds) ~ SqlParser.get[Double](prefixOpt.getOrElse("") + backoffExponent) ~ SqlParser.bool(prefixOpt.getOrElse("") + requireExplicitSuccess) map { case taskDefinitionName ~ dependencies ~ executable ~ maxAttempts ~ maxRuntimeSeconds ~ backoffBaseSeconds ~ backoffExponent ~ requireExplicitSuccess => { com.gilt.svc.sundial.v0.models.TaskDefinition( taskDefinitionName = taskDefinitionName, dependencies = dependencies, executable = executable, maxAttempts = maxAttempts, maxRuntimeSeconds = maxRuntimeSeconds, backoffBaseSeconds = backoffBaseSeconds, backoffExponent = backoffExponent, requireExplicitSuccess = requireExplicitSuccess ) } } } } object TaskDependency { def parserWithPrefix(prefix: String, sep: String = "_"): RowParser[com.gilt.svc.sundial.v0.models.TaskDependency] = parser(prefixOpt = Some(s"$prefix$sep")) def parser( taskDefinitionName: String = "task_definition_name", successRequired: String = "success_required", prefixOpt: Option[String] = None ): RowParser[com.gilt.svc.sundial.v0.models.TaskDependency] = { SqlParser.str(prefixOpt.getOrElse("") + taskDefinitionName) ~ SqlParser.bool(prefixOpt.getOrElse("") + successRequired) map { case taskDefinitionName ~ successRequired => { com.gilt.svc.sundial.v0.models.TaskDependency( taskDefinitionName = taskDefinitionName, successRequired = successRequired ) } } } } object AwsMarket { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.OnDemand.parser("aws_market", Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.Spot.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.OnDemand.parser("aws_market") | com.gilt.svc.sundial.v0.anorm.parsers.Spot.parser() } } object EmrCluster { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.NewEmrCluster.parser(prefixOpt = Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.ExistingEmrCluster.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.NewEmrCluster.parser() | com.gilt.svc.sundial.v0.anorm.parsers.ExistingEmrCluster.parser() } } object EmrJobFlowRole { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.DefaultEmrJobFlowRole.parser("emr_job_flow_role", Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.CustomEmrJobFlowRole.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.DefaultEmrJobFlowRole.parser("emr_job_flow_role") | com.gilt.svc.sundial.v0.anorm.parsers.CustomEmrJobFlowRole.parser() } } object EmrServiceRole { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.DefaultEmrServiceRole.parser("emr_service_role", Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.CustomEmrServiceRole.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.DefaultEmrServiceRole.parser("emr_service_role") | com.gilt.svc.sundial.v0.anorm.parsers.CustomEmrServiceRole.parser() } } object Notification { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.Email.parser(prefixOpt = Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.Pagerduty.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.Email.parser() | com.gilt.svc.sundial.v0.anorm.parsers.Pagerduty.parser() } } object ProcessSchedule { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.CronSchedule.parser(prefixOpt = Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.ContinuousSchedule.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.CronSchedule.parser() | com.gilt.svc.sundial.v0.anorm.parsers.ContinuousSchedule.parser() } } object TaskExecutable { def parserWithPrefix(prefix: String, sep: String = "_") = { com.gilt.svc.sundial.v0.anorm.parsers.DockerImageCommand.parser(prefixOpt = Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.ShellScriptCommand.parser(prefixOpt = Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.BatchImageCommand.parser(prefixOpt = Some(s"$prefix$sep")) | com.gilt.svc.sundial.v0.anorm.parsers.EmrCommand.parser(prefixOpt = Some(s"$prefix$sep")) } def parser() = { com.gilt.svc.sundial.v0.anorm.parsers.DockerImageCommand.parser() | com.gilt.svc.sundial.v0.anorm.parsers.ShellScriptCommand.parser() | com.gilt.svc.sundial.v0.anorm.parsers.BatchImageCommand.parser() | com.gilt.svc.sundial.v0.anorm.parsers.EmrCommand.parser() } } }