package com.telecomsys.cmc.model;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonRootName;

/**
 * The schedule message model. This encapsulates the request and response sent when the client requests details about a
 * scheduled message.
 */
@JsonRootName("schedulemessage")
@JsonIgnoreProperties(ignoreUnknown = true)
public class ScheduleMessage {

    /**
     * Message id of the scheduled message.
     */
    @JsonProperty("messageID")
    private Long messageId;

    /**
     * Schedule data.
     */
    private Schedule schedule;

    /**
     * Message data.
     */
    private Message message;

    /**
     * @return the messageId
     */
    public Long getMessageId() {
        return messageId;
    }

    /**
     * @param messageId the messageId to set
     */
    public void setMessageId(Long messageId) {
        this.messageId = messageId;
    }

    /**
     * @return the schedule
     */
    public Schedule getSchedule() {
        return schedule;
    }

    /**
     * @param schedule the schedule to set
     */
    public void setSchedule(Schedule schedule) {
        this.schedule = schedule;
    }

    /**
     * @return the message
     */
    public Message getMessage() {
        return message;
    }

    /**
     * @param message the message to set
     */
    public void setMessage(Message message) {
        this.message = message;
    }
}

@@ -197,16 +197,75 @@
 ootName;
+%0Aimport com.fasterxml.jackson.annotation.JsonPropertyOrder;
 %0A%0A/**%0A *
@@ -441,16 +441,58 @@
 ssage%22)%0A
+@JsonPropertyOrder(%22schedule%22, %22message%22)%0A
 @JsonIgn

Update ScheduleMessage.java