Update pattern format version. Reservation fields for future use.

--HG--
branch : develop
This commit is contained in:
Roman Telezhynskyi 2018-11-30 17:47:29 +02:00
parent 4e8ceb6c1e
commit 33b780f3c4
4 changed files with 1105 additions and 5 deletions

View File

@ -50,6 +50,7 @@
<file>schema/pattern/v0.7.10.xsd</file> <file>schema/pattern/v0.7.10.xsd</file>
<file>schema/pattern/v0.7.11.xsd</file> <file>schema/pattern/v0.7.11.xsd</file>
<file>schema/pattern/v0.7.12.xsd</file> <file>schema/pattern/v0.7.12.xsd</file>
<file>schema/pattern/v0.7.13.xsd</file>
<file>schema/standard_measurements/v0.3.0.xsd</file> <file>schema/standard_measurements/v0.3.0.xsd</file>
<file>schema/standard_measurements/v0.4.0.xsd</file> <file>schema/standard_measurements/v0.4.0.xsd</file>
<file>schema/standard_measurements/v0.4.1.xsd</file> <file>schema/standard_measurements/v0.4.1.xsd</file>

File diff suppressed because it is too large Load Diff

View File

@ -59,8 +59,8 @@ class QDomElement;
*/ */
const QString VPatternConverter::PatternMinVerStr = QStringLiteral("0.1.4"); const QString VPatternConverter::PatternMinVerStr = QStringLiteral("0.1.4");
const QString VPatternConverter::PatternMaxVerStr = QStringLiteral("0.7.12"); const QString VPatternConverter::PatternMaxVerStr = QStringLiteral("0.7.13");
const QString VPatternConverter::CurrentSchema = QStringLiteral("://schema/pattern/v0.7.12.xsd"); const QString VPatternConverter::CurrentSchema = QStringLiteral("://schema/pattern/v0.7.13.xsd");
//VPatternConverter::PatternMinVer; // <== DON'T FORGET TO UPDATE TOO!!!! //VPatternConverter::PatternMinVer; // <== DON'T FORGET TO UPDATE TOO!!!!
//VPatternConverter::PatternMaxVer; // <== DON'T FORGET TO UPDATE TOO!!!! //VPatternConverter::PatternMaxVer; // <== DON'T FORGET TO UPDATE TOO!!!!
@ -228,7 +228,8 @@ QString VPatternConverter::XSDSchema(int ver) const
std::make_pair(FORMAT_VERSION(0, 7, 9), QStringLiteral("://schema/pattern/v0.7.9.xsd")), std::make_pair(FORMAT_VERSION(0, 7, 9), QStringLiteral("://schema/pattern/v0.7.9.xsd")),
std::make_pair(FORMAT_VERSION(0, 7, 10), QStringLiteral("://schema/pattern/v0.7.10.xsd")), std::make_pair(FORMAT_VERSION(0, 7, 10), QStringLiteral("://schema/pattern/v0.7.10.xsd")),
std::make_pair(FORMAT_VERSION(0, 7, 11), QStringLiteral("://schema/pattern/v0.7.11.xsd")), std::make_pair(FORMAT_VERSION(0, 7, 11), QStringLiteral("://schema/pattern/v0.7.11.xsd")),
std::make_pair(FORMAT_VERSION(0, 7, 12), CurrentSchema) std::make_pair(FORMAT_VERSION(0, 7, 12), QStringLiteral("://schema/pattern/v0.7.12.xsd")),
std::make_pair(FORMAT_VERSION(0, 7, 13), CurrentSchema)
}; };
if (schemas.contains(ver)) if (schemas.contains(ver))
@ -443,6 +444,10 @@ void VPatternConverter::ApplyPatches()
ValidateXML(XSDSchema(FORMAT_VERSION(0, 7, 12)), m_convertedFileName); ValidateXML(XSDSchema(FORMAT_VERSION(0, 7, 12)), m_convertedFileName);
V_FALLTHROUGH V_FALLTHROUGH
case (FORMAT_VERSION(0, 7, 12)): case (FORMAT_VERSION(0, 7, 12)):
ToV0_7_13();
ValidateXML(XSDSchema(FORMAT_VERSION(0, 7, 13)), m_convertedFileName);
V_FALLTHROUGH
case (FORMAT_VERSION(0, 7, 13)):
break; break;
default: default:
InvalidVersion(m_ver); InvalidVersion(m_ver);
@ -460,7 +465,7 @@ void VPatternConverter::DowngradeToCurrentMaxVersion()
bool VPatternConverter::IsReadOnly() const bool VPatternConverter::IsReadOnly() const
{ {
// Check if attribute readOnly was not changed in file format // Check if attribute readOnly was not changed in file format
Q_STATIC_ASSERT_X(VPatternConverter::PatternMaxVer == FORMAT_VERSION(0, 7, 12), Q_STATIC_ASSERT_X(VPatternConverter::PatternMaxVer == FORMAT_VERSION(0, 7, 13),
"Check attribute readOnly."); "Check attribute readOnly.");
// Possibly in future attribute readOnly will change position etc. // Possibly in future attribute readOnly will change position etc.
@ -1010,6 +1015,16 @@ void VPatternConverter::ToV0_7_12()
Save(); Save();
} }
//---------------------------------------------------------------------------------------------------------------------
void VPatternConverter::ToV0_7_13()
{
// TODO. Delete if minimal supported version is 0.7.13
Q_STATIC_ASSERT_X(VPatternConverter::PatternMinVer < FORMAT_VERSION(0, 7, 13),
"Time to refactor the code.");
SetVersion(QStringLiteral("0.7.13"));
Save();
}
//--------------------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------------------
void VPatternConverter::TagUnitToV0_2_0() void VPatternConverter::TagUnitToV0_2_0()
{ {

View File

@ -53,7 +53,7 @@ public:
static const QString PatternMaxVerStr; static const QString PatternMaxVerStr;
static const QString CurrentSchema; static const QString CurrentSchema;
static Q_DECL_CONSTEXPR const int PatternMinVer = FORMAT_VERSION(0, 1, 4); static Q_DECL_CONSTEXPR const int PatternMinVer = FORMAT_VERSION(0, 1, 4);
static Q_DECL_CONSTEXPR const int PatternMaxVer = FORMAT_VERSION(0, 7, 12); static Q_DECL_CONSTEXPR const int PatternMaxVer = FORMAT_VERSION(0, 7, 13);
protected: protected:
virtual int MinVer() const override; virtual int MinVer() const override;
@ -121,6 +121,7 @@ private:
void ToV0_7_10(); void ToV0_7_10();
void ToV0_7_11(); void ToV0_7_11();
void ToV0_7_12(); void ToV0_7_12();
void ToV0_7_13();
void TagUnitToV0_2_0(); void TagUnitToV0_2_0();
void TagIncrementToV0_2_0(); void TagIncrementToV0_2_0();