package converter import ( "context" "io" ) // StubClient 是 Phase 0 的 converter Client stub。 // // 所有方法回 ErrNotImplemented,用於讓 DI 流程能編譯運行, // 但前端若真的呼叫到 converter API,會收到 501 / 明確錯誤訊息。 // // 未來若需要假資料讓前端 UI 流程走通(PRD §8.5 建議), // 可擴充為 FakeClient(產 fake job_id、模擬 queued → processing → completed)。 type StubClient struct{} // NewStubClient 建立一個 StubClient 實例。 func NewStubClient() *StubClient { return &StubClient{} } // SubmitConvert 回 ErrNotImplemented。 func (s *StubClient) SubmitConvert(ctx context.Context, req *ConvertRequest) (string, error) { return "", ErrNotImplemented } // GetJob 回 ErrNotImplemented。 func (s *StubClient) GetJob(ctx context.Context, jobID string) (*Job, error) { return nil, ErrNotImplemented } // ListJobs 回 ErrNotImplemented。 func (s *StubClient) ListJobs(ctx context.Context, userID string) ([]*Job, error) { return nil, ErrNotImplemented } // DownloadResult 回 ErrNotImplemented。 func (s *StubClient) DownloadResult(ctx context.Context, jobID string) (io.ReadCloser, error) { return nil, ErrNotImplemented } // CancelJob 回 ErrNotImplemented。 func (s *StubClient) CancelJob(ctx context.Context, jobID string) error { return ErrNotImplemented }