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

org.tsugi.lti13.objects.LTILaunchMessage Maven / Gradle / Ivy

The newest version!
package org.tsugi.lti13.objects;

import java.util.ArrayList;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;

@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)

// This is used to populate both "messages_supported" and "messages"
// For messages supported - we only define type

/*
     "https://purl.imsglobal.org/spec/lti-platform-configuration": {
        "product_family_code": "ExampleLMS",
        "messages_supported": [
            {"type": "LtiResourceLinkRequest"},
            {"type": "LtiDeepLinkingRequest"}],
        "variables": ["CourseSection.timeFrame.end", "CourseSection.timeFrame.begin", "Context.id.history", "ResourceLink.id.history"]
    }

	"messages": [
            {
                "type": "LtiDeepLinkingRequest",
                "target_link_uri": "https://client.example.org/lti/dl",
                "label": "Add a virtual garden",
				"placements": ["resourceLink", ... (TBD)]
            }
        ]
 */

public class LTILaunchMessage extends org.tsugi.jackson.objects.JacksonBase {
	// Defined values in org.tsugi.lti13.objects.LaunchJWT.MESSAGE_TYPE_LAUNCH;
	@JsonProperty("type")
	public String type;
	@JsonProperty("target_link_uri")
	public String target_link_uri;
	@JsonProperty("label")
	public String label;

	// Array of placements indicating where the platform support this link type to be added when the tool is made available.
	// TODO: Define the constants that belong here
	@JsonProperty("placements")
    public List placements = new ArrayList();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy