graphql-engine/server/src-lib/Hasura/Eventing
Antoine Leblanc 4815fcd500 server: progress on generic metadata
This PR generalizes a bunch of metadata structures.

Most importantly, it changes `SourceCache` to hold existentially quantified values:
```
data BackendSourceInfo =
  forall b. Backend b => BackendSourceInfo (SourceInfo b)

type SourceCache = HashMap SourceName BackendSourceInfo
```

This changes a *lot* of things throughout the code. For now, all code using the schema cache explicitly casts sources to Postgres, meaning that if any non-Postgres `SourceInfo` makes it to the cache, it'll be ignored.

That means that after this PR is submitted, we can split work between two different aspects:
  - creating `SourceInfo` for other backends
  - handling those other sources down the line

GitOrigin-RevId: fb9ea00f32e840fc33c5467896fb1dfa5283ab42
2021-01-20 00:32:45 +00:00
..
ScheduledTrigger server: simplify JSON instances 2021-01-19 19:15:42 +00:00
Common.hs server: metadata storage abstraction for scheduled triggers 2020-11-25 10:57:38 +00:00
EventTrigger.hs server: progress on generic metadata 2021-01-20 00:32:45 +00:00
HTTP.hs server: simplify JSON instances 2021-01-19 19:15:42 +00:00
ScheduledTrigger.hs server: simplify JSON instances 2021-01-19 19:15:42 +00:00