/** * Generated by API Builder - https://www.apibuilder.io * Service version: 1.0.0 * User agent: apibuilder app.apibuilder.io/teambytes/hipchat-sns-bridge/1.0.0/flow_erm_schema */ package com.teambytes.hipchat.sns.bridge.v1.erm import io.flow.event.relation.mapper.schema.ErmSpec import io.apibuilder.spec.v0.models.{Enum, EnumValue, Field, Model, Union, UnionType} import com.teambytes.hipchat.sns.bridge.v1.models.Error import com.teambytes.hipchat.sns.bridge.v1.models.HipchatApiConsumer import com.teambytes.hipchat.sns.bridge.v1.models.HipchatCapabilities import com.teambytes.hipchat.sns.bridge.v1.models.HipchatCapabilitiesDescriptor import com.teambytes.hipchat.sns.bridge.v1.models.HipchatConfigurationPage import com.teambytes.hipchat.sns.bridge.v1.models.HipchatInstallData import com.teambytes.hipchat.sns.bridge.v1.models.HipchatInstallable import com.teambytes.hipchat.sns.bridge.v1.models.HipchatLinks import com.teambytes.hipchat.sns.bridge.v1.models.HipchatOauth2Provider import com.teambytes.hipchat.sns.bridge.v1.models.HipchatScope import com.teambytes.hipchat.sns.bridge.v1.models.HipchatVendor import com.teambytes.hipchat.sns.bridge.v1.models.ServiceInfo import com.teambytes.hipchat.sns.bridge.v1.models.SnsNotification object GeneratedErmSchema { implicit lazy val ermSpecError: ErmSpec[Error] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.error", spec = Model(name = "error", plural = "errors", fields = Seq( Field(name = "description", `type` = "string", required = true), )), ) implicit lazy val ermSpecHipchatApiConsumer: ErmSpec[HipchatApiConsumer] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_api_consumer", spec = Model(name = "hipchat_api_consumer", plural = "hipchat_api_consumers", fields = Seq( Field(name = "scopes", `type` = "[hipchat_scope]", required = true), Field(name = "fromName", `type` = "string", required = false), )), resolved = Map[String, ErmSpec[_]]( "com.teambytes.hipchat.sns.bridge.v1.enums.hipchat_scope" -> ermSpecHipchatScope, ), ) implicit lazy val ermSpecHipchatConfigurationPage: ErmSpec[HipchatConfigurationPage] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_configuration_page", spec = Model(name = "hipchat_configuration_page", plural = "hipchat_configuration_pages", fields = Seq( Field(name = "allowAccessToRoomAdmins", `type` = "string", required = false), Field(name = "url", `type` = "string", required = true), )), ) implicit lazy val ermSpecHipchatInstallable: ErmSpec[HipchatInstallable] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_installable", spec = Model(name = "hipchat_installable", plural = "hipchat_installables", fields = Seq( Field(name = "callbackUrl", `type` = "string", required = false), Field(name = "installedUrl", `type` = "string", required = false), Field(name = "allowGlobal", `type` = "boolean", required = false), Field(name = "allowRoom", `type` = "boolean", required = false), )), ) implicit lazy val ermSpecHipchatOauth2Provider: ErmSpec[HipchatOauth2Provider] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_oauth2_provider", spec = Model(name = "hipchat_oauth2_provider", plural = "hipchat_oauth2_providers", fields = Seq( Field(name = "tokenUrl", `type` = "string", required = false), Field(name = "authorizationUrl", `type` = "string", required = false), )), ) implicit lazy val ermSpecHipchatCapabilities: ErmSpec[HipchatCapabilities] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_capabilities", spec = Model(name = "hipchat_capabilities", plural = "hipchat_capabilities", fields = Seq( Field(name = "configurable", `type` = "hipchat_configuration_page", required = false), Field(name = "hipchatApiConsumer", `type` = "hipchat_api_consumer", required = false), Field(name = "installable", `type` = "hipchat_installable", required = false), Field(name = "oauth2Provider", `type` = "hipchat_oauth2_provider", required = false), )), resolved = Map[String, ErmSpec[_]]( "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_configuration_page" -> ermSpecHipchatConfigurationPage, "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_api_consumer" -> ermSpecHipchatApiConsumer, "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_installable" -> ermSpecHipchatInstallable, "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_oauth2_provider" -> ermSpecHipchatOauth2Provider, ), ) implicit lazy val ermSpecHipchatLinks: ErmSpec[HipchatLinks] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_links", spec = Model(name = "hipchat_links", plural = "hipchat_linkses", fields = Seq( Field(name = "homepage", `type` = "string", required = false), Field(name = "api", `type` = "string", required = false), Field(name = "self", `type` = "string", required = true), )), ) implicit lazy val ermSpecHipchatVendor: ErmSpec[HipchatVendor] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_vendor", spec = Model(name = "hipchat_vendor", plural = "hipchat_vendors", fields = Seq( Field(name = "name", `type` = "string", required = true), Field(name = "url", `type` = "string", required = true), )), ) implicit lazy val ermSpecHipchatCapabilitiesDescriptor: ErmSpec[HipchatCapabilitiesDescriptor] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_capabilities_descriptor", spec = Model(name = "hipchat_capabilities_descriptor", plural = "hipchat_capabilities_descriptors", fields = Seq( Field(name = "name", `type` = "string", required = true), Field(name = "description", `type` = "string", required = true), Field(name = "key", `type` = "string", required = true), Field(name = "apiVersion", `type` = "string", required = false), Field(name = "capabilities", `type` = "hipchat_capabilities", required = false), Field(name = "links", `type` = "hipchat_links", required = true), Field(name = "vendor", `type` = "hipchat_vendor", required = false), )), resolved = Map[String, ErmSpec[_]]( "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_capabilities" -> ermSpecHipchatCapabilities, "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_links" -> ermSpecHipchatLinks, "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_vendor" -> ermSpecHipchatVendor, ), ) implicit lazy val ermSpecHipchatInstallData: ErmSpec[HipchatInstallData] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.hipchat_install_data", spec = Model(name = "hipchat_install_data", plural = "hipchat_install_data", fields = Seq( Field(name = "capabilitiesUrl", `type` = "string", required = true), Field(name = "oauthId", `type` = "string", required = true), Field(name = "oauthSecret", `type` = "string", required = true), Field(name = "groupId", `type` = "long", required = true), Field(name = "roomId", `type` = "string", required = false), )), ) implicit lazy val ermSpecServiceInfo: ErmSpec[ServiceInfo] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.service_info", spec = Model(name = "service_info", plural = "service_info", fields = Seq( Field(name = "name", `type` = "string", required = true), Field(name = "version", `type` = "string", required = true), Field(name = "scala_version", `type` = "string", required = true), Field(name = "sbt_version", `type` = "string", required = true), Field(name = "build_time", `type` = "date-time-iso8601", required = true), )), ) implicit lazy val ermSpecSnsNotification: ErmSpec[SnsNotification] = ErmSpec.model( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.models.sns_notification", spec = Model(name = "sns_notification", plural = "sns_notifications", fields = Seq( Field(name = "Type", `type` = "string", required = true), Field(name = "MessageId", `type` = "string", required = true), Field(name = "TopicArn", `type` = "string", required = true), Field(name = "Message", `type` = "string", required = true), Field(name = "Timestamp", `type` = "string", required = true), Field(name = "SignatureVersion", `type` = "string", required = true), Field(name = "Signature", `type` = "string", required = true), Field(name = "SigningCertURL", `type` = "string", required = true), Field(name = "Token", `type` = "string", required = false), Field(name = "Subject", `type` = "string", required = false), Field(name = "SubscribeURL", `type` = "string", required = false), Field(name = "UnsubscribeURL", `type` = "string", required = false), )), ) implicit lazy val ermSpecHipchatScope: ErmSpec[HipchatScope] = ErmSpec.`enum`( qualifiedName = "com.teambytes.hipchat.sns.bridge.v1.enums.hipchat_scope", spec = Enum(name = "hipchat_scope", plural = "hipchat_scopes", values = Seq( EnumValue(name = "send_message"), EnumValue(name = "send_notification"), )), ) val all: Seq[ErmSpec[_]] = Seq( ermSpecError, ermSpecHipchatApiConsumer, ermSpecHipchatConfigurationPage, ermSpecHipchatInstallable, ermSpecHipchatOauth2Provider, ermSpecHipchatCapabilities, ermSpecHipchatLinks, ermSpecHipchatVendor, ermSpecHipchatCapabilitiesDescriptor, ermSpecHipchatInstallData, ermSpecServiceInfo, ermSpecSnsNotification, ermSpecHipchatScope, ) }