in apt/method.go [75:101]
func (m *Method) Run(ctx context.Context) error {
m.writer.SendCapabilities()
for {
select {
case <-ctx.Done():
return nil
default:
}
msg, err := m.reader.ReadMessage(ctx)
if errors.Is(err, errEmptyMessage) {
continue
} else if errors.Is(err, io.EOF) {
return nil
} else if err != nil {
return err
}
switch msg.code {
case 600:
m.handleAcquire(ctx, msg)
case 601:
m.handleConfigure(msg)
default:
// TODO(hopkiw): now write a test for this.
m.writer.Fail(fmt.Sprintf("Unsupported message code %d received from apt", msg.code))
}
}
}