blob: ed6c5537ee421239f9505c80aada441e3f318406 [file] [log] [blame]
// Copyright 2017 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.
/* DO NOT EDIT. Generated from components/cronet/native/generated/cronet.idl */
#ifndef COMPONENTS_CRONET_NATIVE_GENERATED_CRONET_IDL_IMPL_STRUCT_H_
#define COMPONENTS_CRONET_NATIVE_GENERATED_CRONET_IDL_IMPL_STRUCT_H_
#include "components/cronet/native/generated/cronet.idl_c.h"
#include <memory>
#include <string>
#include <vector>
#include "base/macros.h"
// Struct Cronet_Error.
struct Cronet_Error {
public:
Cronet_Error();
~Cronet_Error();
Cronet_Error_ERROR_CODE errorCode = Cronet_Error_ERROR_CODE_ERROR_CALLBACK;
std::string message;
int32_t internal_error_code = 0;
bool immediately_retryable = false;
int32_t quic_detailed_error_code = 0;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_Error);
};
// Struct Cronet_QuicHint.
struct Cronet_QuicHint {
public:
Cronet_QuicHint();
~Cronet_QuicHint();
std::string host;
int32_t port = 0;
int32_t alternate_port = 0;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_QuicHint);
};
// Struct Cronet_PublicKeyPins.
struct Cronet_PublicKeyPins {
public:
Cronet_PublicKeyPins();
~Cronet_PublicKeyPins();
std::string host;
std::vector<std::string> pins_sha256;
bool include_subdomains = false;
int64_t expiration_date;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_PublicKeyPins);
};
// Struct Cronet_EngineParams.
struct Cronet_EngineParams {
public:
Cronet_EngineParams();
~Cronet_EngineParams();
bool enable_check_result = true;
std::string user_agent;
std::string accept_language;
std::string storage_path;
bool enable_quic = false;
bool enable_http2 = true;
bool enable_brotli = true;
Cronet_EngineParams_HTTP_CACHE_MODE http_cache_mode =
Cronet_EngineParams_HTTP_CACHE_MODE_DISABLED;
int64_t http_cache_max_size = 0;
std::vector<std::unique_ptr<Cronet_QuicHint>> quic_hints;
std::vector<std::unique_ptr<Cronet_PublicKeyPins>> public_key_pins;
bool enable_public_key_pinning_bypass_for_local_trust_anchors = true;
std::string experimental_options;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_EngineParams);
};
// Struct Cronet_HttpHeader.
struct Cronet_HttpHeader {
public:
Cronet_HttpHeader();
~Cronet_HttpHeader();
std::string name;
std::string value;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_HttpHeader);
};
// Struct Cronet_UrlResponseInfo.
struct Cronet_UrlResponseInfo {
public:
Cronet_UrlResponseInfo();
~Cronet_UrlResponseInfo();
std::string url;
std::vector<std::string> url_chain;
int32_t http_status_code;
std::string http_status_text;
std::vector<std::unique_ptr<Cronet_HttpHeader>> all_headers_list;
bool was_cached;
std::string negotiated_protocol;
std::string proxy_server;
int64_t received_byte_count;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_UrlResponseInfo);
};
// Struct Cronet_UrlRequestParams.
struct Cronet_UrlRequestParams {
public:
Cronet_UrlRequestParams();
~Cronet_UrlRequestParams();
std::string http_method;
std::vector<std::unique_ptr<Cronet_HttpHeader>> request_headers;
bool disable_cache = false;
Cronet_UrlRequestParams_REQUEST_PRIORITY priority =
Cronet_UrlRequestParams_REQUEST_PRIORITY_REQUEST_PRIORITY_MEDIUM;
Cronet_UploadDataProviderPtr upload_data_provider;
Cronet_ExecutorPtr upload_data_provider_executor;
bool allow_direct_executor = false;
std::vector<RawDataPtr> annotations;
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_UrlRequestParams);
};
// Struct Cronet_RequestFinishedInfo.
struct Cronet_RequestFinishedInfo {
public:
Cronet_RequestFinishedInfo();
~Cronet_RequestFinishedInfo();
private:
DISALLOW_COPY_AND_ASSIGN(Cronet_RequestFinishedInfo);
};
#endif // COMPONENTS_CRONET_NATIVE_GENERATED_CRONET_IDL_IMPL_STRUCT_H_