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

[EPIC] Refactor the validation logic in the commands. #6083

Open
4 of 7 tasks
Abyss-lord opened this issue Jan 3, 2025 · 3 comments
Open
4 of 7 tasks

[EPIC] Refactor the validation logic in the commands. #6083

Abyss-lord opened this issue Jan 3, 2025 · 3 comments
Assignees
Labels
improvement Improvements on everything

Comments

@Abyss-lord
Copy link
Contributor

Abyss-lord commented Jan 3, 2025

What would you like to be improved?

Refactor the client Command parameter validation logic. Let the command do its own validation, and GravitinoCommandLine only handle the common part of the logic validation

How should we improve?

Refactor the client Command parameter validation logic by introducing a verify method in the Command class for parameter validation. the verify method as follows:

 public Command verify() {
    // validation logic
    return this;
  }

In GravitinoCommandLine, Use newXXX().verify.handle() to invoke specific commands

Task list

@Abyss-lord Abyss-lord added the improvement Improvements on everything label Jan 3, 2025
@Abyss-lord
Copy link
Contributor Author

@justinmclean I would like to work on it.

@Abyss-lord
Copy link
Contributor Author

@justinmclean , The scope of a single task is too broad. Should we consider splitting it into smaller tasks for better manageability? just like

  • refactor metalake command and test case.

@justinmclean
Copy link
Member

I don't think it is too large, but if you want to break it by entity (metalake, catalog, schema etc ect) go ahead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improvements on everything
Projects
None yet
Development

No branches or pull requests

2 participants