All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.api.services.solar.v1.model.HttpBody Maven / Gradle / Ivy

/*
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
 * in compliance with the License. You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software distributed under the License
 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
 * or implied. See the License for the specific language governing permissions and limitations under
 * the License.
 */
/*
 * This code was generated by https://github.com/googleapis/google-api-java-client-services/
 * Modify at your own risk.
 */

package com.google.api.services.solar.v1.model;

/**
 * Message that represents an arbitrary HTTP body. It should only be used for payload formats that
 * can't be represented as JSON, such as raw binary or an HTML page. This message can be used both
 * in streaming and non-streaming API methods in the request as well as the response. It can be used
 * as a top-level request field, which is convenient if one wants to extract parameters from either
 * the URL or HTTP template into the request fields and also want access to the raw HTTP body.
 * Example: message GetResourceRequest { // A unique request id. string request_id = 1; // The raw
 * HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service ResourceService {
 * rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc
 * UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming
 * methods: service CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream
 * google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns (stream
 * google.api.HttpBody); } Use of this type only changes how the request and response bodies are
 * handled, all other features will continue to work unchanged.
 *
 * 

This is the Java data model class that specifies how to parse/serialize into the JSON that is * transmitted over HTTP when working with the Solar API. For a detailed explanation see: * https://developers.google.com/api-client-library/java/google-http-java-client/json *

* * @author Google, Inc. */ @SuppressWarnings("javadoc") public final class HttpBody extends com.google.api.client.json.GenericJson { /** * The HTTP Content-Type header value specifying the content type of the body. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String contentType; /** * The HTTP request/response body as raw binary. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.lang.String data; /** * Application specific response metadata. Must be set in the first response for streaming APIs. * The value may be {@code null}. */ @com.google.api.client.util.Key private java.util.List> extensions; /** * The HTTP Content-Type header value specifying the content type of the body. * @return value or {@code null} for none */ public java.lang.String getContentType() { return contentType; } /** * The HTTP Content-Type header value specifying the content type of the body. * @param contentType contentType or {@code null} for none */ public HttpBody setContentType(java.lang.String contentType) { this.contentType = contentType; return this; } /** * The HTTP request/response body as raw binary. * @see #decodeData() * @return value or {@code null} for none */ public java.lang.String getData() { return data; } /** * The HTTP request/response body as raw binary. * @see #getData() * @return Base64 decoded value or {@code null} for none * * @since 1.14 */ public byte[] decodeData() { return com.google.api.client.util.Base64.decodeBase64(data); } /** * The HTTP request/response body as raw binary. * @see #encodeData() * @param data data or {@code null} for none */ public HttpBody setData(java.lang.String data) { this.data = data; return this; } /** * The HTTP request/response body as raw binary. * @see #setData() * *

* The value is encoded Base64 or {@code null} for none. *

* * @since 1.14 */ public HttpBody encodeData(byte[] data) { this.data = com.google.api.client.util.Base64.encodeBase64URLSafeString(data); return this; } /** * Application specific response metadata. Must be set in the first response for streaming APIs. * @return value or {@code null} for none */ public java.util.List> getExtensions() { return extensions; } /** * Application specific response metadata. Must be set in the first response for streaming APIs. * @param extensions extensions or {@code null} for none */ public HttpBody setExtensions(java.util.List> extensions) { this.extensions = extensions; return this; } @Override public HttpBody set(String fieldName, Object value) { return (HttpBody) super.set(fieldName, value); } @Override public HttpBody clone() { return (HttpBody) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy