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

io.mosip.kernel.websub.api.model.SubscriptionChangeRequest Maven / Gradle / Ivy

package io.mosip.kernel.websub.api.model;

import lombok.Data;

/**
 * Basic metadata model used in request subscribe and unsubscribe operations.
 * 
 * @author Urvil Joshi
 *
 */
@Data
public class SubscriptionChangeRequest {
	/**
	 * Url of subscribe endpoint of hub.
	 */
	private String hubURL;
	/**
	 * REQUIRED. The topic URL that the subscriber wishes to subscribe to or
	 * unsubscribe from. Note that this MUST be the "self" URL found during the
	 * discovery step, which may be different from the URL that was used to make the
	 * discovery request.
	 */
	private String topic;
	/**
	 * REQUIRED. The subscriber's callback URL where content distribution
	 * notifications should be delivered. The callback URL SHOULD be an unguessable
	 * URL that is unique per subscription.
	 */
	private String callbackURL;
	/**
	 * OPTIONAL. Number of seconds for which the subscriber would like to have the
	 * subscription active, given as a positive decimal integer. Hubs MAY choose to
	 * respect this value or not, depending on their own policies, and MAY set a
	 * default value if the subscriber omits the parameter. This parameter MAY be
	 * present for unsubscription requests and MUST be ignored by the hub in that
	 * case.
	 */
	private int leaseSeconds;
	/**
	 * REQUIRED. A subscriber-provided cryptographically random unique secret string
	 * that will be used to compute an HMAC digest for authorized content
	 * distribution. If not supplied, the HMAC digest will not be present for
	 * content distribution requests. This parameter SHOULD only be specified when
	 * the request was made over HTTPS [RFC2818]. This parameter MUST be less than
	 * 200 bytes in length.
	 */
	private String secret;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy