object Resolver extends Serializable
Companion object. Lets us create a Resolver from a Json
- Alphabetic
- By Inheritance
- Resolver
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- final case class ResolverConfig(cacheSize: Int, cacheTtl: Option[TTL], repositoryRefs: List[Json]) extends Product with Serializable
- sealed trait ResolverResult[+K, +A] extends AnyRef
The result of doing a lookup with the resolver, carrying information on whether the cache was used
- type SchemaContentListLookupResult = ResolverResult[SchemaKey, SchemaContentList]
- case class SchemaItem(schema: Json, supersededBy: SupersededBy) extends Product with Serializable
The result of doing schema lookup
The result of doing schema lookup
- schema
Schema json
- supersededBy
Superseding schema version if the schema is superseded by another schema. Otherwise, it is None.
- type SchemaListKey = (Vendor, Name, Model)
- type SchemaListLookupResult = ResolverResult[SchemaListKey, SchemaList]
- type SchemaLookupResult = ResolverResult[SchemaKey, SchemaItem]
- case class SchemaResolutionError(schemaKey: SchemaKey, error: ResolutionError) extends Product with Serializable
- type SupersededBy = Option[Full]
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val SelfDescribingKey: SchemaKey
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bootstrap[F[_]](implicit arg0: Monad[F], arg1: CreateResolverCache[F]): F[Resolver[F]]
A Resolver which only looks at our embedded repo
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def fromConfig[F[_]](config: ResolverConfig)(implicit arg0: Monad[F], arg1: CreateResolverCache[F]): EitherT[F, DecodingFailure, Resolver[F]]
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def init[F[_]](cacheSize: Int, cacheTtl: Option[TTL], refs: Registry*)(implicit arg0: Monad[F], arg1: CreateResolverCache[F]): F[Resolver[F]]
Constructs a Resolver instance from an arg array of RepositoryRefs.
Constructs a Resolver instance from an arg array of RepositoryRefs.
- cacheSize
The size of the cache
- cacheTtl
Optional time to live for schemas
- refs
Any RepositoryRef to add to this resolver
- returns
a configured Resolver instance
- def initPure(refs: InMemory*): Resolver[Id]
Construct a pure resolver, working only with in-memory registries, no cache, no clock
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def parse[F[_]](config: Json)(implicit arg0: Monad[F], arg1: CreateResolverCache[F]): F[Either[DecodingFailure, Resolver[F]]]
Construct a Resolver instance from a Json *and* validates against embedded schema (hence side-effect)
Construct a Resolver instance from a Json *and* validates against embedded schema (hence side-effect)
- config
The JSON containing the configuration for this resolver
- returns
a configured Resolver instance
- def parseConfig(config: Json): Either[DecodingFailure, ResolverConfig]
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def traverseRepos[F[_], A](get: (Registry) => F[Either[RegistryError, A]], remaining: List[Registry], tried: LookupFailureMap)(implicit arg0: Monad[F], arg1: RegistryLookup[F], arg2: Clock[F]): F[Either[LookupFailureMap, A]]
Tail-recursive function to find our schema in one of our repositories
Tail-recursive function to find our schema in one of our repositories
- get
a function to get an entity from first registry
- remaining
A List of repositories we have to look in (not-tried yet or with non-404 error)
- tried
A Map of repositories with their accumulated errors we have looked in fruitlessly so far
- returns
either a Success-boxed schema (as a Json), or a Failure-boxing of Map of repositories with all their accumulated errors
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- object ResolverResult
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated