
com.vendasta.accountgroup.v1.internal.ListingSyncPro Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of accountgroup.v1 Show documentation
Show all versions of accountgroup.v1 Show documentation
Java SDK for service account-group
The newest version!
package com.vendasta.accountgroup.v1.internal;
import java.util.List;
import java.util.ArrayList;
import java.util.Date;
import java.util.Map;
import java.util.HashMap;
import java.util.Collections;
import java.util.Arrays;
import java.time.Duration;
import org.apache.commons.lang3.StringUtils;
import com.vendasta.accountgroup.v1.generated.ApiProto;
/**
*
**/
public final class ListingSyncPro {
/**
*
**/
public enum ServiceProviders {
UBERALL(0),
YEXT(1);
private static final Map protoTypeMap;
static {
Map aMap;
aMap = new HashMap();
aMap.put(ApiProto.ListingSyncPro.ServiceProviders.UBERALL, ListingSyncPro.ServiceProviders.UBERALL);
aMap.put(ApiProto.ListingSyncPro.ServiceProviders.YEXT, ListingSyncPro.ServiceProviders.YEXT);
protoTypeMap = Collections.unmodifiableMap(aMap);
}
private static final Map javaTypeMap;
static {
Map aMap;
aMap = new HashMap();
aMap.put(ListingSyncPro.ServiceProviders.UBERALL, ApiProto.ListingSyncPro.ServiceProviders.UBERALL);
aMap.put(ListingSyncPro.ServiceProviders.YEXT, ApiProto.ListingSyncPro.ServiceProviders.YEXT);
javaTypeMap = Collections.unmodifiableMap(aMap);
}
private int value;
private ServiceProviders(int i) {
value = i;
}
public int getValue() {
return value;
}
public static ServiceProviders fromProto(ApiProto.ListingSyncPro.ServiceProviders proto) {
return protoTypeMap.get(proto);
}
public static List fromProtos(List protos) {
List result = new ArrayList();
for(ApiProto.ListingSyncPro.ServiceProviders proto : protos) {
result.add(ServiceProviders.fromProto(proto));
}
return result;
}
public ApiProto.ListingSyncPro.ServiceProviders toProto() {
return javaTypeMap.get(this);
}
public static List toProtos(List objects) {
List result = new ArrayList();
for(ServiceProviders obj : objects) {
result.add(obj.toProto());
}
return result;
}
}
/**
*
**/
public enum BillingFrequency {
MONTHLY(0),
YEARLY(1),
ONE_TIME(2);
private static final Map protoTypeMap;
static {
Map aMap;
aMap = new HashMap();
aMap.put(ApiProto.ListingSyncPro.BillingFrequency.MONTHLY, ListingSyncPro.BillingFrequency.MONTHLY);
aMap.put(ApiProto.ListingSyncPro.BillingFrequency.YEARLY, ListingSyncPro.BillingFrequency.YEARLY);
aMap.put(ApiProto.ListingSyncPro.BillingFrequency.ONE_TIME, ListingSyncPro.BillingFrequency.ONE_TIME);
protoTypeMap = Collections.unmodifiableMap(aMap);
}
private static final Map javaTypeMap;
static {
Map aMap;
aMap = new HashMap();
aMap.put(ListingSyncPro.BillingFrequency.MONTHLY, ApiProto.ListingSyncPro.BillingFrequency.MONTHLY);
aMap.put(ListingSyncPro.BillingFrequency.YEARLY, ApiProto.ListingSyncPro.BillingFrequency.YEARLY);
aMap.put(ListingSyncPro.BillingFrequency.ONE_TIME, ApiProto.ListingSyncPro.BillingFrequency.ONE_TIME);
javaTypeMap = Collections.unmodifiableMap(aMap);
}
private int value;
private BillingFrequency(int i) {
value = i;
}
public int getValue() {
return value;
}
public static BillingFrequency fromProto(ApiProto.ListingSyncPro.BillingFrequency proto) {
return protoTypeMap.get(proto);
}
public static List fromProtos(List protos) {
List result = new ArrayList();
for(ApiProto.ListingSyncPro.BillingFrequency proto : protos) {
result.add(BillingFrequency.fromProto(proto));
}
return result;
}
public ApiProto.ListingSyncPro.BillingFrequency toProto() {
return javaTypeMap.get(this);
}
public static List toProtos(List objects) {
List result = new ArrayList();
for(BillingFrequency obj : objects) {
result.add(obj.toProto());
}
return result;
}
}
private final Date purchaseDate;
private final ListingSyncPro.BillingFrequency billingFrequency;
private final Date expiryDate;
private final String country;
private final boolean discountFlag;
private final ListingSyncPro.ServiceProviders serviceProvider;
private ListingSyncPro (
final Date purchaseDate,
final ListingSyncPro.BillingFrequency billingFrequency,
final Date expiryDate,
final String country,
final boolean discountFlag,
final ListingSyncPro.ServiceProviders serviceProvider)
{
this.purchaseDate = purchaseDate;
this.billingFrequency = billingFrequency;
this.expiryDate = expiryDate;
this.country = country;
this.discountFlag = discountFlag;
this.serviceProvider = serviceProvider;
}
/**
*
* @return The final value of purchaseDate on the object
**/
public Date getPurchaseDate() {
return this.purchaseDate;
}
/**
*
* @return The final value of billingFrequency on the object
**/
public ListingSyncPro.BillingFrequency getBillingFrequency() {
return this.billingFrequency;
}
/**
*
* @return The final value of expiryDate on the object
**/
public Date getExpiryDate() {
return this.expiryDate;
}
/**
*
* @return The final value of country on the object
**/
public String getCountry() {
return this.country;
}
/**
*
* @return The final value of discountFlag on the object
**/
public boolean getDiscountFlag() {
return this.discountFlag;
}
/**
*
* @return The final value of serviceProvider on the object
**/
public ListingSyncPro.ServiceProviders getServiceProvider() {
return this.serviceProvider;
}
public static class Builder {
private Date purchaseDate;
private ListingSyncPro.BillingFrequency billingFrequency;
private Date expiryDate;
private String country;
private boolean discountFlag;
private ListingSyncPro.ServiceProviders serviceProvider;
public Builder() {
this.purchaseDate = null;
this.billingFrequency = null;
this.expiryDate = null;
this.country = "";
this.discountFlag = false;
this.serviceProvider = null;
}
/**
* Adds a value to the builder for purchaseDate
* @param purchaseDate Value to assign to the mutable Builder
* @return The Builder instance so that call chaining works
**/
public Builder setPurchaseDate(Date purchaseDate) {
this.purchaseDate = purchaseDate;
return this;
}
/**
* Adds a value to the builder for billingFrequency
* @param billingFrequency Value to assign to the mutable Builder
* @return The Builder instance so that call chaining works
**/
public Builder setBillingFrequency(ListingSyncPro.BillingFrequency billingFrequency) {
this.billingFrequency = billingFrequency;
return this;
}
/**
* Adds a value to the builder for expiryDate
* @param expiryDate Value to assign to the mutable Builder
* @return The Builder instance so that call chaining works
**/
public Builder setExpiryDate(Date expiryDate) {
this.expiryDate = expiryDate;
return this;
}
/**
* Adds a value to the builder for country
* @param country Value to assign to the mutable Builder
* @return The Builder instance so that call chaining works
**/
public Builder setCountry(String country) {
this.country = country;
return this;
}
/**
* Adds a value to the builder for discountFlag
* @param discountFlag Value to assign to the mutable Builder
* @return The Builder instance so that call chaining works
**/
public Builder setDiscountFlag(boolean discountFlag) {
this.discountFlag = discountFlag;
return this;
}
/**
* Adds a value to the builder for serviceProvider
* @param serviceProvider Value to assign to the mutable Builder
* @return The Builder instance so that call chaining works
**/
public Builder setServiceProvider(ListingSyncPro.ServiceProviders serviceProvider) {
this.serviceProvider = serviceProvider;
return this;
}
/**
* Takes the configuration in the mutable Builder and uses it to instantiate a final instance
* of the ListingSyncPro class
* @return The instantiated final ListingSyncPro
**/
public ListingSyncPro build() {
return new ListingSyncPro(
this.purchaseDate,
this.billingFrequency,
this.expiryDate,
this.country,
this.discountFlag,
this.serviceProvider);
}
}
/**
* Returns a Builder for ListingSyncPro, which is a mutable representation of the object. Once the
* client has built up an object they can then create an immutable ListingSyncPro object using the
* build function.
* @return A fresh Builder instance with no values set
**/
public static Builder newBuilder() {
return new Builder();
}
/**
* Provides a human-readable representation of this object. Useful for debugging.
* @return A string representation of the ListingSyncPro instance
**/
public String toString() {
String result = "ListingSyncPro\n";
result += "-> purchaseDate: (Date)"
+ StringUtils.join("\n ", Arrays.asList(String.valueOf(this.purchaseDate).split("\n"))) + "\n";
result += "-> billingFrequency: (ListingSyncPro.BillingFrequency)"
+ StringUtils.join("\n ", Arrays.asList(String.valueOf(this.billingFrequency).split("\n"))) + "\n";
result += "-> expiryDate: (Date)"
+ StringUtils.join("\n ", Arrays.asList(String.valueOf(this.expiryDate).split("\n"))) + "\n";
result += "-> country: (String)"
+ StringUtils.join("\n ", Arrays.asList(String.valueOf(this.country).split("\n"))) + "\n";
result += "-> discountFlag: (boolean)"
+ StringUtils.join("\n ", Arrays.asList(String.valueOf(this.discountFlag).split("\n"))) + "\n";
result += "-> serviceProvider: (ListingSyncPro.ServiceProviders)"
+ StringUtils.join("\n ", Arrays.asList(String.valueOf(this.serviceProvider).split("\n"))) + "\n";
return result;
}
/**
* Allows for simple conversion between the low-level generated protobuf object to
* ListingSyncPro, which is much more usable.
* @return An instance of ListingSyncPro representing the input proto object
**/
public static ListingSyncPro fromProto(ApiProto.ListingSyncPro proto) {
ListingSyncPro out = null;
if (proto != null) {
ListingSyncPro.Builder outBuilder = ListingSyncPro.newBuilder()
.setPurchaseDate(proto.hasPurchaseDate()?new Date(proto.getPurchaseDate().getSeconds() * 1000):null)
.setBillingFrequency(ListingSyncPro.BillingFrequency.fromProto(proto.getBillingFrequency()))
.setExpiryDate(proto.hasExpiryDate()?new Date(proto.getExpiryDate().getSeconds() * 1000):null)
.setCountry(proto.getCountry())
.setDiscountFlag(proto.getDiscountFlag())
.setServiceProvider(ListingSyncPro.ServiceProviders.fromProto(proto.getServiceProvider()));
out = outBuilder.build();
}
return out;
}
/**
* Convenience method for handling lists of proto objects. It calls .fromProto on each one
* and returns a list of the converted results.
* @return A list of ListingSyncPro instances representing the input proto objects
**/
public static List fromProtos(List protos) {
List out = new ArrayList();
for(ApiProto.ListingSyncPro proto : protos) {
out.add(ListingSyncPro.fromProto(proto));
}
return out;
}
/**
* Allows for simple conversion of an object to the low-level generated protobuf object.
* @return An instance of ApiProto.ListingSyncPro which is a proto object ready for wire transmission
**/
public ApiProto.ListingSyncPro toProto() {
ListingSyncPro obj = this;
ApiProto.ListingSyncPro.Builder outBuilder = ApiProto.ListingSyncPro.newBuilder();
if(obj.getPurchaseDate()!=null){outBuilder.setPurchaseDate(com.google.protobuf.Timestamp.newBuilder().setSeconds(obj.getPurchaseDate().getTime() / 1000).build());}
outBuilder.setBillingFrequency(obj.getBillingFrequency() != null?obj.getBillingFrequency().toProto():null);
if(obj.getExpiryDate()!=null){outBuilder.setExpiryDate(com.google.protobuf.Timestamp.newBuilder().setSeconds(obj.getExpiryDate().getTime() / 1000).build());}
outBuilder.setCountry(obj.getCountry());
outBuilder.setDiscountFlag(obj.getDiscountFlag());
outBuilder.setServiceProvider(obj.getServiceProvider() != null?obj.getServiceProvider().toProto():null);
return outBuilder.build();
}
/**
* Convenience method for handling lists of objects. It calls .toProto on each one and
* returns a list of the converted results.
* @return A list of ApiProto.ListingSyncPro instances representing the input objects.
*/
public static List toProtos(List objects) {
List out = new ArrayList();
if(objects != null) {
for (ListingSyncPro obj : objects) {
out.add(obj!=null?obj.toProto():null);
}
}
return out;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy