diff options
Diffstat (limited to 'chromium/components/speech/upstream_loader_client.h')
-rw-r--r-- | chromium/components/speech/upstream_loader_client.h | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/chromium/components/speech/upstream_loader_client.h b/chromium/components/speech/upstream_loader_client.h new file mode 100644 index 00000000000..dcc51f7358d --- /dev/null +++ b/chromium/components/speech/upstream_loader_client.h @@ -0,0 +1,34 @@ +// Copyright 2020 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef COMPONENTS_SPEECH_UPSTREAM_LOADER_CLIENT_H_ +#define COMPONENTS_SPEECH_UPSTREAM_LOADER_CLIENT_H_ + +namespace speech { + +// An interface containing the callback functions required by consumers +// of the UpstreamLoader. The class that implements this client +// interface must outlive the UpstreamLoader. +class UpstreamLoaderClient { + public: + UpstreamLoaderClient(const UpstreamLoaderClient&) = delete; + UpstreamLoaderClient& operator=(const UpstreamLoaderClient&) = delete; + + protected: + UpstreamLoaderClient() = default; + virtual ~UpstreamLoaderClient() = default; + + private: + friend class UpstreamLoader; + + // Executed when upstream data is completed. + // success: True on 2xx responses. + // response_code: The HTTP response code if available, or -1 on + // network errors. + virtual void OnUpstreamDataComplete(bool success, int response_code) = 0; +}; + +} // namespace speech + +#endif // COMPONENTS_SPEECH_UPSTREAM_LOADER_CLIENT_H_ |