Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Compiler] Build a new TypeResolver #24

Closed
kmruiz opened this issue Sep 4, 2019 · 3 comments
Closed

[Compiler] Build a new TypeResolver #24

kmruiz opened this issue Sep 4, 2019 · 3 comments
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@kmruiz
Copy link
Contributor

kmruiz commented Sep 4, 2019

A TypeResolver is a class that needs to be implemented so the compiler can find out which types are custom types defined in schemata. Right now there is no implementation of it, so the compiler itself is unusable in a real environment.

How to implement

  • Implement a type registry somewhere in schemata. @VaughnVernon can provide more info.
  • Implement a new class that implements the io.vlingo.schemata.codegen.processor.types.TypeResolver. You can see an example in the test code
    NOTE: The InMemoryTypeResolver has been temporarily moved to src/main so the compiler will work for end-to-end tests.
@kmruiz kmruiz added enhancement New feature or request good first issue Good for newcomers labels Sep 4, 2019
@wwerner
Copy link
Contributor

wwerner commented Oct 18, 2019

I think this depends on #42 (unique constraints for organization/unit/... names), as we want to resolve using the schema coordinates like org:unit:context:..., correct?

@kmruiz
Copy link
Contributor Author

kmruiz commented Oct 20, 2019

AFAIK you are right, because the type reference needs to be a full qualified name with an optional version.

@kmruiz
Copy link
Contributor Author

kmruiz commented Nov 11, 2019

I'm going to create an specific issue for implementing the TypeResolver based on io.vlingo.schemata.query.SchemaVersionQueries

@kmruiz kmruiz closed this as completed Nov 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants