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

com.zuora.model.TriggerEvent Maven / Gradle / Ivy

There is a newer version: 3.2.1
Show newest version
/*
 * Zuora API Reference
 * REST API reference for the Zuora Billing, Payments, and Central Platform! Check out the [REST API Overview](https://www.zuora.com/developer/api-references/api/overview/).
 *
 * The version of the OpenAPI document: 2024-05-20
 * Contact: [email protected]
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */


package com.zuora.model;

import java.util.Objects;
import com.google.gson.annotations.SerializedName;

import java.io.IOException;
import com.google.gson.TypeAdapter;
import com.google.gson.JsonElement;
import com.google.gson.annotations.JsonAdapter;
import com.google.gson.stream.JsonReader;
import com.google.gson.stream.JsonWriter;

/**
 * Condition for the charge to become active. If this field is not specified, the value of the field will be defaulted to the trigger event value defined in the product catalog.  If the value of this field is `SpecificDate`, use the `specificTriggerDate` field to specify the date when the charge becomes active. 
 */
@JsonAdapter(TriggerEvent.Adapter.class)
public enum TriggerEvent {
  
  CONTRACTEFFECTIVE("ContractEffective"),
  
  SERVICEACTIVATION("ServiceActivation"),
  
  CUSTOMERACCEPTANCE("CustomerAcceptance"),
  
  SPECIFICDATE("SpecificDate");

  private String value;

  TriggerEvent(String value) {
    this.value = value;
  }

  public String getValue() {
    return value;
  }

  @Override
  public String toString() {
    return String.valueOf(value);
  }

  public static TriggerEvent fromValue(String value) {
    for (TriggerEvent b : TriggerEvent.values()) {
      if (b.value.equals(value)) {
        return b;
      }
    }
    throw new IllegalArgumentException("Unexpected value '" + value + "'");
  }

  public static class Adapter extends TypeAdapter {
    @Override
    public void write(final JsonWriter jsonWriter, final TriggerEvent enumeration) throws IOException {
      jsonWriter.value(enumeration.getValue());
    }

    @Override
    public TriggerEvent read(final JsonReader jsonReader) throws IOException {
      String value = jsonReader.nextString();
      return TriggerEvent.fromValue(value);
    }
  }

  public static void validateJsonElement(JsonElement jsonElement) throws IOException {
    String value = jsonElement.getAsString();
    TriggerEvent.fromValue(value);
  }
}





© 2015 - 2025 Weber Informatics LLC | Privacy Policy