/** * This method only returns true if: * * - The major version of addonApiVersion is equal to the major version of runtimeVersion AND * * - The minor version of addonApiVersion is less or equal to the minor version of runtimeVersion * * - The addonApiVersion is null * * @param runtimeVersion a version in the format x.x.x * @param addonApiVersion a version in the format x.x.x */ public static boolean isApiCompatible(Version runtimeVersion, Version addonApiVersion) { if (addonApiVersion == null || addonApiVersion.toString().length() == 0 || runtimeVersion == null || runtimeVersion.toString().length() == 0) return true; int runtimeMajorVersion = runtimeVersion.getMajorVersion(); int runtimeMinorVersion = runtimeVersion.getMinorVersion(); int addonApiMajorVersion = addonApiVersion.getMajorVersion(); int addonApiMinorVersion = addonApiVersion.getMinorVersion(); return (addonApiMajorVersion == runtimeMajorVersion && addonApiMinorVersion <= runtimeMinorVersion); }