BulkInventoryUpdateRequest.java

package org.oxerr.stubhub.client.model;

import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;

public class BulkInventoryUpdateRequest extends InventoryUpdateRequest {

	private static final long serialVersionUID = 2026051801L;

	private Long inventoryId;

	public BulkInventoryUpdateRequest() {
	}

	public BulkInventoryUpdateRequest(Long inventoryId) {
		this.inventoryId = inventoryId;
	}

	public static BulkInventoryUpdateRequest from(InventoryUpdateRequest request) {
		if (request == null) {
			return null;
		}

		BulkInventoryUpdateRequest bulkInventoryUpdateRequest = new BulkInventoryUpdateRequest();

		if (request instanceof BulkInventoryUpdateRequest r) {
			bulkInventoryUpdateRequest.setInventoryId(r.getInventoryId());
		}

		bulkInventoryUpdateRequest.setPrices(request.getPrices());
		bulkInventoryUpdateRequest.setBroadcastStatuses(request.getBroadcastStatuses());
		bulkInventoryUpdateRequest.setPricerUserId(request.getPricerUserId());
		bulkInventoryUpdateRequest.setBarcodes(request.getBarcodes());
		bulkInventoryUpdateRequest.setTicketExternalIds(request.getTicketExternalIds());
		bulkInventoryUpdateRequest.setTicketUrls(request.getTicketUrls());
		bulkInventoryUpdateRequest.setPricingSetting(request.getPricingSetting());
		bulkInventoryUpdateRequest.seteTickets(request.geteTickets());
		bulkInventoryUpdateRequest.setTags(request.getTags());
		bulkInventoryUpdateRequest.setInternalNotes(request.getInternalNotes());
		bulkInventoryUpdateRequest.setMarketplaceSeatingOverrides(request.getMarketplaceSeatingOverrides());
		bulkInventoryUpdateRequest.setProofOfOwnership(request.getProofOfOwnership());
		bulkInventoryUpdateRequest.setInHandAt(request.getInHandAt());
		bulkInventoryUpdateRequest.setSplitType(request.getSplitType());
		bulkInventoryUpdateRequest.setDeliveryType(request.getDeliveryType());
		bulkInventoryUpdateRequest.setTicketTypeOverrides(request.getTicketTypeOverrides());
		bulkInventoryUpdateRequest.setAdminHold(request.getAdminHold());
		bulkInventoryUpdateRequest.setListingNotes(request.getListingNotes());
		bulkInventoryUpdateRequest.setMaxDisplayQuantity(request.getMaxDisplayQuantity());
		bulkInventoryUpdateRequest.setHideSeats(request.getHideSeats());
		bulkInventoryUpdateRequest.setAutoFulfill(request.getAutoFulfill());
		bulkInventoryUpdateRequest.setExternalId(request.getExternalId());
		bulkInventoryUpdateRequest.setUnitCost(request.getUnitCost());
		bulkInventoryUpdateRequest.setFaceValueCost(request.getFaceValueCost());
		bulkInventoryUpdateRequest.setZoneFill(request.getZoneFill());

		return bulkInventoryUpdateRequest;
	}

	public Long getInventoryId() {
		return inventoryId;
	}

	public void setInventoryId(Long inventoryId) {
		this.inventoryId = inventoryId;
	}

	@Override
	public int hashCode() {
		return HashCodeBuilder.reflectionHashCode(this);
	}

	@Override
	public boolean equals(Object obj) {
		return EqualsBuilder.reflectionEquals(this, obj);
	}

	@Override
	public String toString() {
		return ToStringBuilder.reflectionToString(this);
	}
}