gcp.codegen
package gcp.codegen
Members list
Type members
Classlikes
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
case class GeneratorConfig(outDir: Path, resourcesPkg: String, schemasPkg: String, httpSource: HttpSource, jsonCodec: JsonCodec, arrayType: ArrayType, dialect: Dialect, preprocess: Specs => Specs)
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object GeneratorConfig
Attributes
- Companion
- class
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
GeneratorConfig.type
case class Method(httpMethod: String, path: String, flatPath: Option[FlatPath], parameters: Map[String, Parameter], parameterOrder: List[String], response: Option[SchemaType], request: Option[SchemaType])
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object Method
case class Parameter(description: Option[String], location: String, typ: SchemaType, required: Boolean, pattern: Option[String])
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object Parameter
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object Property
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object ResourcePath
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
ResourcePath.type
case class Schema(id: SchemaPath, description: Option[String], properties: List[(String, Property)])
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object Schema
object SchemaPath
Attributes
- Supertypes
-
class Objecttrait Matchableclass Any
- Self type
-
SchemaPath.type
object SchemaType
Attributes
- Companion
- enum
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
- Self type
-
SchemaType.type
case class Specs(name: String, protocol: String, ownerName: String, discoveryVersion: String, resources: Map[ResourcePath, Resource], version: String, baseUrl: String, schemas: Map[SchemaPath, Schema])
Attributes
- Companion
- object
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
object Specs
enum SpecsInput
Attributes
- Supertypes
-
trait Enumtrait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Value members
Concrete methods
def commonSchemaCodecs(schemas: Map[SchemaPath, Schema], pkg: String, objName: String, jsonCodec: JsonCodec, dialect: Dialect, hasProps: SchemaPath => Boolean, arrType: ArrayType): Option[String]
def generateBySpec(specs: Specs, config: GeneratorConfig)(using ExecutionContext): Future[List[File]]
def readResources(resources: List[(ResourcePath, Value)], result: Map[ResourcePath, Resource]): Map[ResourcePath, Resource]
def resourceCode(pkg: String, resourcesPkg: String, schemasPkg: String, baseUrl: String, resourceName: String, resource: Resource, httpSource: HttpSource, jsonCodec: JsonCodec, arrType: ArrayType, hasProps: SchemaPath => Boolean): String
def schemasCode(schema: Schema, pkg: String, jsonCodec: JsonCodec, dialect: Dialect, hasProps: SchemaPath => Boolean, arrType: ArrayType, commonCodecsPkg: Option[String]): String
Concrete fields
In this article