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

io.sphere.sdk.customers.messages.CustomerCreatedMessage Maven / Gradle / Ivy

There is a newer version: 2.16.0
Show newest version
package io.sphere.sdk.customers.messages;

import java.time.ZonedDateTime;

import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;

import io.sphere.sdk.customers.Customer;
import io.sphere.sdk.messages.GenericMessageImpl;
import io.sphere.sdk.messages.MessageDerivateHint;

@JsonDeserialize(as = CustomerCreatedMessage.class)//important to override annotation in Message class
public final class CustomerCreatedMessage extends GenericMessageImpl {
    public static final String MESSAGE_TYPE = "CustomerCreated";
    public static final MessageDerivateHint MESSAGE_HINT =
            MessageDerivateHint.ofSingleMessageType(MESSAGE_TYPE, CustomerCreatedMessage.class, Customer.referenceTypeId());

    private final Customer customer;

    @JsonCreator
    private CustomerCreatedMessage(final String id, final Long version, final ZonedDateTime createdAt, final ZonedDateTime lastModifiedAt, final JsonNode resource, final Long sequenceNumber, final Long resourceVersion, final String type, final Customer customer) {
        super(id, version, createdAt, lastModifiedAt, resource, sequenceNumber, resourceVersion, type, Customer.class);
        this.customer = customer;
    }
    
    /**
     * Gets the Customer at creation time
     * 
     * @return the created Customer at creation time
     */
    public Customer getCustomer() {
        return customer;
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy