*** PRIVATE *** In theory, we want to keep this separate from our global variables in bufcli. Originally, this was in a different package, and we want to keep the option to split it out again. The separation of concerns here is that the controller doesnt itself deal in the global variables.
| 202 | // it out again. The separation of concerns here is that the controller doesnt itself |
| 203 | // deal in the global variables. |
| 204 | type controller struct { |
| 205 | logger *slog.Logger |
| 206 | container app.EnvStdioContainer |
| 207 | moduleDataProvider bufmodule.ModuleDataProvider |
| 208 | graphProvider bufmodule.GraphProvider |
| 209 | commitProvider bufmodule.CommitProvider |
| 210 | pluginKeyProvider bufplugin.PluginKeyProvider |
| 211 | pluginDataProvider bufplugin.PluginDataProvider |
| 212 | policyKeyProvider bufpolicy.PolicyKeyProvider |
| 213 | policyDataProvider bufpolicy.PolicyDataProvider |
| 214 | wktStore bufwktstore.Store |
| 215 | |
| 216 | disableSymlinks bool |
| 217 | fileAnnotationErrorFormat string |
| 218 | fileAnnotationsToStdout bool |
| 219 | copyToInMemory bool |
| 220 | |
| 221 | storageosProvider storageos.Provider |
| 222 | buffetchRefParser buffetch.RefParser |
| 223 | buffetchReader buffetch.Reader |
| 224 | buffetchWriter buffetch.Writer |
| 225 | workspaceProvider bufworkspace.WorkspaceProvider |
| 226 | workspaceDepManagerProvider bufworkspace.WorkspaceDepManagerProvider |
| 227 | } |
| 228 | |
| 229 | func newController( |
| 230 | logger *slog.Logger, |
nothing calls this directly
no outgoing calls
no test coverage detected