Skip to content

Conversation

@anakin4747
Copy link

Factoring out VSCode specific functionality from BitbakeDriver to BitbakeDriverVSCode.

I would love some input on how I factored out runBitbakeTerminalCustomCommand, I don't currently love exactly how I did it.
I made the default behaviour of runTerminalCommand to be a noop since it needs to be implemented by a subclass to make sense. This solution also forces the client to implement their own queuing/locking logic for running terminal commands which I am also not too pleased about.

I also though about making it an abstract function that only gets implemented in a subclass but then that would require making BitbakeDriver an abstract class which seemed like too big of a change to me.

Some next steps after this would be moving it to one of the lib folders.

Thanks!

To refactor BitbakeDriver to become editor agnostic, add
BitbakeDriverVSCode which will be the base for factoring out VSCode
specific functionality from BitbakeDriver.
To make BitbakeDriver editor agnostic, change the notifications from a
VSCode dependent implementation to the standard logging and override it
to clientNotificationManager in BitbakeDriverVSCode.
To make the BitbakeDriver editor agnostic, replace
runBitbakeTerminalCustomCommand with a generic runTerminalCommand
function that gets overriden by runBitbakeTerminalCustomCommand in
BitbakeDriverVSCode.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants