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

com.stripe.model.SubscriptionItem Maven / Gradle / Ivy

There is a newer version: 28.3.0-beta.1
Show newest version
package com.stripe.model;

import com.stripe.exception.APIConnectionException;
import com.stripe.exception.APIException;
import com.stripe.exception.AuthenticationException;
import com.stripe.exception.CardException;
import com.stripe.exception.InvalidRequestException;
import com.stripe.net.APIResource;
import com.stripe.net.RequestOptions;

import java.util.Map;

import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@EqualsAndHashCode(callSuper = false)
public class SubscriptionItem extends APIResource implements HasId {
  @Getter(onMethod = @__({@Override})) String id;
  String object;
  Long created;
  Plan plan;
  Integer quantity;

  // 
  /**
   * Create a subscription item.
   */
  public static SubscriptionItem create(Map params)
      throws AuthenticationException, InvalidRequestException,
      APIConnectionException, CardException, APIException {
    return create(params, null);
  }

  /**
   * Create a subscription item.
   */
  public static SubscriptionItem create(Map params, RequestOptions options)
      throws AuthenticationException, InvalidRequestException,
      APIConnectionException, CardException, APIException {
    return request(RequestMethod.POST, classURL(SubscriptionItem.class), params,
        SubscriptionItem.class, options);
  }
  // 

  // 
  /**
   * Delete a subscription item.
   */
  public DeletedSubscriptionItem delete() throws AuthenticationException,
      InvalidRequestException, APIConnectionException, CardException,
      APIException {
    return delete(null, null);
  }

  /**
   * Delete a subscription item.
   */
  public DeletedSubscriptionItem delete(RequestOptions options) throws AuthenticationException,
      InvalidRequestException, APIConnectionException, CardException,
      APIException {
    return delete(null, options);
  }

  /**
   * Delete a subscription item.
   */
  public DeletedSubscriptionItem delete(Map params) throws AuthenticationException,
      InvalidRequestException, APIConnectionException, CardException,
      APIException {
    return delete(params, null);
  }

  /**
   * Delete a subscription item.
   */
  public DeletedSubscriptionItem delete(Map params, RequestOptions options)
      throws AuthenticationException, InvalidRequestException, APIConnectionException,
      CardException, APIException {
    return request(RequestMethod.DELETE, instanceURL(SubscriptionItem.class, id), params,
        DeletedSubscriptionItem.class, options);
  }
  // 

  // 
  /**
   * List all subscription items.
   */
  public static SubscriptionItemCollection list(Map params)
      throws AuthenticationException,
      InvalidRequestException, APIConnectionException, CardException,
      APIException {
    return list(params, null);
  }

  /**
   * List all subscription items.
   */
  public static SubscriptionItemCollection list(Map params,
                          RequestOptions options) throws AuthenticationException,
      InvalidRequestException, APIConnectionException, CardException,
      APIException {
    return requestCollection(classURL(SubscriptionItem.class), params,
        SubscriptionItemCollection.class, options);
  }
  // 

  // 
  /**
   * Retrieve a subscription item.
   */
  public static SubscriptionItem retrieve(String id) throws AuthenticationException,
      InvalidRequestException, APIConnectionException, CardException,
      APIException {
    return retrieve(id, null);
  }

  /**
   * Retrieve a subscription item.
   */
  public static SubscriptionItem retrieve(String id, RequestOptions options)
      throws AuthenticationException, InvalidRequestException,
      APIConnectionException, CardException, APIException {
    return request(RequestMethod.GET, instanceURL(SubscriptionItem.class, id), null,
        SubscriptionItem.class, options);
  }
  // 

  // 
  /**
   * Update a subscription item.
   */
  public SubscriptionItem update(Map params)
      throws AuthenticationException, InvalidRequestException,
      APIConnectionException, CardException, APIException {
    return update(params, null);
  }

  /**
   * Update a subscription item.
   */
  public SubscriptionItem update(Map params, RequestOptions options)
      throws AuthenticationException, InvalidRequestException,
      APIConnectionException, CardException, APIException {
    return request(RequestMethod.POST, instanceURL(SubscriptionItem.class, id), params,
        SubscriptionItem.class, options);
  }
  // 
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy