// Given a map of what our host provides, determine if this element's requirements are satisfied. public bool MeetsRequirements(AdaptiveFeatureRegistration featureRegistration) { if (Requires != null) { foreach (var requirement in Requires) { // special case for adaptive cards version var requirementName = requirement.Key; var requirementVersion = requirement.Value; string provides = featureRegistration.Get(requirementName); if (provides.Length == 0) { return(false); } if (requirementVersion == "*") { // any version is sufficient to satisfy the requirement return(true); } // host provides this requirement, but does it provide an acceptible version? var providesVersion = new AdaptiveSchemaVersion(provides); if (providesVersion < requirementVersion) { // host's provided version is too low return(false); } } } return(true); }
/// <summary> /// Creates an AdaptiveCard using a specific schema version /// </summary> /// <param name="schemaVersion">The schema version to use</param> public AdaptiveCard(AdaptiveSchemaVersion schemaVersion) { Version = schemaVersion; }
public AdaptiveCard() { Type = TYPE; Version = new AdaptiveSchemaVersion(1, 0); }