/*
* 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://code.google.com/p/google-apis-client-generator/
* (build: 2014-07-22 21:53:01 UTC)
* on 2014-09-26 at 18:17:07 UTC
* Modify at your own risk.
*/
package com.appspot.your_app.subscribe;
/**
* Service definition for Subscribe (v1).
*
* <p>
* Subscribe API
* </p>
*
* <p>
* For more information about this service, see the
* <a href="" target="_blank">API Documentation</a>
* </p>
*
* <p>
* This service uses {@link SubscribeRequestInitializer} to initialize global parameters via its
* {@link Builder}.
* </p>
*
* @since 1.3
* @author Google, Inc.
*/
@SuppressWarnings("javadoc")
public class Subscribe extends com.google.api.client.googleapis.services.json.AbstractGoogleJsonClient {
// Note: Leave this static initializer at the top of the file.
static {
com.google.api.client.util.Preconditions.checkState(
com.google.api.client.googleapis.GoogleUtils.MAJOR_VERSION == 1 &&
com.google.api.client.googleapis.GoogleUtils.MINOR_VERSION >= 15,
"You are currently running with version %s of google-api-client. " +
"You need at least version 1.15 of google-api-client to run version " +
"1.19.0 of the Subscribe Service library.", com.google.api.client.googleapis.GoogleUtils.VERSION);
}
/**
* The default encoded root URL of the service. This is determined when the library is generated
* and normally should not be changed.
*
* @since 1.7
*/
public static final String DEFAULT_ROOT_URL = "https://your-app.appspot.com/_ah/api/";
/**
* The default encoded service path of the service. This is determined when the library is
* generated and normally should not be changed.
*
* @since 1.7
*/
public static final String DEFAULT_SERVICE_PATH = "subscribe/v1/";
/**
* The default encoded base URL of the service. This is determined when the library is generated
* and normally should not be changed.
*/
public static final String DEFAULT_BASE_URL = DEFAULT_ROOT_URL + DEFAULT_SERVICE_PATH;
/**
* Constructor.
*
* <p>
* Use {@link Builder} if you need to specify any of the optional parameters.
* </p>
*
* @param transport HTTP transport, which should normally be:
* <ul>
* <li>Google App Engine:
* {@code com.google.api.client.extensions.appengine.http.UrlFetchTransport}</li>
* <li>Android: {@code newCompatibleTransport} from
* {@code com.google.api.client.extensions.android.http.AndroidHttp}</li>
* <li>Java: {@link com.google.api.client.googleapis.javanet.GoogleNetHttpTransport#newTrustedTransport()}
* </li>
* </ul>
* @param jsonFactory JSON factory, which may be:
* <ul>
* <li>Jackson: {@code com.google.api.client.json.jackson2.JacksonFactory}</li>
* <li>Google GSON: {@code com.google.api.client.json.gson.GsonFactory}</li>
* <li>Android Honeycomb or higher:
* {@code com.google.api.client.extensions.android.json.AndroidJsonFactory}</li>
* </ul>
* @param httpRequestInitializer HTTP request initializer or {@code null} for none
* @since 1.7
*/
public Subscribe(com.google.api.client.http.HttpTransport transport, com.google.api.client.json.JsonFactory jsonFactory,
com.google.api.client.http.HttpRequestInitializer httpRequestInitializer) {
this(new Builder(transport, jsonFactory, httpRequestInitializer));
}
/**
* @param builder builder
*/
Subscribe(Builder builder) {
super(builder);
}
@Override
protected void initialize(com.google.api.client.googleapis.services.AbstractGoogleClientRequest<?> httpClientRequest) throws java.io.IOException {
super.initialize(httpClientRequest);
}
/**
* An accessor for creating requests from the Send collection.
*
* <p>The typical use is:</p>
* <pre>
* {@code Subscribe subscribe = new Subscribe(...);}
* {@code Subscribe.Send.List request = subscribe.send().list(parameters ...)}
* </pre>
*
* @return the resource collection
*/
public Send send() {
return new Send();
}
/**
* The "send" collection of methods.
*/
public class Send {
/**
* Exposes an API endpoint to send emails for the given email addresses. Args: request: An instance
* of RequestMessage parsed from the API request. Returns: An instance of ResponseMessage containing
* the status of request.
*
* Create a request for the method "send.emails".
*
* This request holds the parameters needed by the subscribe server. After setting any optional
* parameters, call the {@link Emails#execute()} method to invoke the remote operation.
*
* @param content the {@link com.appspot.your_app.subscribe.model.SubscribeApiMessagesRequestMessage}
* @return the request
*/
public Emails emails(com.appspot.your_app.subscribe.model.SubscribeApiMessagesRequestMessage content) throws java.io.IOException {
Emails result = new Emails(content);
initialize(result);
return result;
}
public class Emails extends SubscribeRequest<com.appspot.your_app.subscribe.model.SubscribeApiMessagesResponseMessage> {
private static final String REST_PATH = "send";
/**
* Exposes an API endpoint to send emails for the given email addresses. Args: request: An
* instance of RequestMessage parsed from the API request. Returns: An instance of ResponseMessage
* containing the status of request.
*
* Create a request for the method "send.emails".
*
* This request holds the parameters needed by the the subscribe server. After setting any
* optional parameters, call the {@link Emails#execute()} method to invoke the remote operation.
* <p> {@link
* Emails#initialize(com.google.api.client.googleapis.services.AbstractGoogleClientRequest)} must
* be called to initialize this instance immediately after invoking the constructor. </p>
*
* @param content the {@link com.appspot.your_app.subscribe.model.SubscribeApiMessagesRequestMessage}
* @since 1.13
*/
protected Emails(com.appspot.your_app.subscribe.model.SubscribeApiMessagesRequestMessage content) {
super(Subscribe.this, "POST", REST_PATH, content, com.appspot.your_app.subscribe.model.SubscribeApiMessagesResponseMessage.class);
}
@Override
public Emails setAlt(java.lang.String alt) {
return (Emails) super.setAlt(alt);
}
@Override
public Emails setFields(java.lang.String fields) {
return (Emails) super.setFields(fields);
}
@Override
public Emails setKey(java.lang.String key) {
return (Emails) super.setKey(key);
}
@Override
public Emails setOauthToken(java.lang.String oauthToken) {
return (Emails) super.setOauthToken(oauthToken);
}
@Override
public Emails setPrettyPrint(java.lang.Boolean prettyPrint) {
return (Emails) super.setPrettyPrint(prettyPrint);
}
@Override
public Emails setQuotaUser(java.lang.String quotaUser) {
return (Emails) super.setQuotaUser(quotaUser);
}
@Override
public Emails setUserIp(java.lang.String userIp) {
return (Emails) super.setUserIp(userIp);
}
@Override
public Emails set(String parameterName, Object value) {
return (Emails) super.set(parameterName, value);
}
}
}
/**
* Builder for {@link Subscribe}.
*
* <p>
* Implementation is not thread-safe.
* </p>
*
* @since 1.3.0
*/
public static final class Builder extends com.google.api.client.googleapis.services.json.AbstractGoogleJsonClient.Builder {
/**
* Returns an instance of a new builder.
*
* @param transport HTTP transport, which should normally be:
* <ul>
* <li>Google App Engine:
* {@code com.google.api.client.extensions.appengine.http.UrlFetchTransport}</li>
* <li>Android: {@code newCompatibleTransport} from
* {@code com.google.api.client.extensions.android.http.AndroidHttp}</li>
* <li>Java: {@link com.google.api.client.googleapis.javanet.GoogleNetHttpTransport#newTrustedTransport()}
* </li>
* </ul>
* @param jsonFactory JSON factory, which may be:
* <ul>
* <li>Jackson: {@code com.google.api.client.json.jackson2.JacksonFactory}</li>
* <li>Google GSON: {@code com.google.api.client.json.gson.GsonFactory}</li>
* <li>Android Honeycomb or higher:
* {@code com.google.api.client.extensions.android.json.AndroidJsonFactory}</li>
* </ul>
* @param httpRequestInitializer HTTP request initializer or {@code null} for none
* @since 1.7
*/
public Builder(com.google.api.client.http.HttpTransport transport, com.google.api.client.json.JsonFactory jsonFactory,
com.google.api.client.http.HttpRequestInitializer httpRequestInitializer) {
super(
transport,
jsonFactory,
DEFAULT_ROOT_URL,
DEFAULT_SERVICE_PATH,
httpRequestInitializer,
false);
}
/** Builds a new instance of {@link Subscribe}. */
@Override
public Subscribe build() {
return new Subscribe(this);
}
@Override
public Builder setRootUrl(String rootUrl) {
return (Builder) super.setRootUrl(rootUrl);
}
@Override
public Builder setServicePath(String servicePath) {
return (Builder) super.setServicePath(servicePath);
}
@Override
public Builder setHttpRequestInitializer(com.google.api.client.http.HttpRequestInitializer httpRequestInitializer) {
return (Builder) super.setHttpRequestInitializer(httpRequestInitializer);
}
@Override
public Builder setApplicationName(String applicationName) {
return (Builder) super.setApplicationName(applicationName);
}
@Override
public Builder setSuppressPatternChecks(boolean suppressPatternChecks) {
return (Builder) super.setSuppressPatternChecks(suppressPatternChecks);
}
@Override
public Builder setSuppressRequiredParameterChecks(boolean suppressRequiredParameterChecks) {
return (Builder) super.setSuppressRequiredParameterChecks(suppressRequiredParameterChecks);
}
@Override
public Builder setSuppressAllChecks(boolean suppressAllChecks) {
return (Builder) super.setSuppressAllChecks(suppressAllChecks);
}
/**
* Set the {@link SubscribeRequestInitializer}.
*
* @since 1.12
*/
public Builder setSubscribeRequestInitializer(
SubscribeRequestInitializer subscribeRequestInitializer) {
return (Builder) super.setGoogleClientRequestInitializer(subscribeRequestInitializer);
}
@Override
public Builder setGoogleClientRequestInitializer(
com.google.api.client.googleapis.services.GoogleClientRequestInitializer googleClientRequestInitializer) {
return (Builder) super.setGoogleClientRequestInitializer(googleClientRequestInitializer);
}
}
}