Ejemplo n.º 1
0
    def downgradeFields(cls, serialized, wanted_version):
        if wanted_version < 4 and serialized['DATASTRUCTURE_VERSION'] >= 4:
            #4 -> 3:
            CertConf.downgradeFieldsA(serialized)
            serialized['DATASTRUCTURE_VERSION'] = 3

        if wanted_version < 3 and serialized['DATASTRUCTURE_VERSION'] >= 3:
            #3 -> 2:
            CertConf.downgradeFieldsA(serialized)
            serialized['DATASTRUCTURE_VERSION'] = 2

        if wanted_version < 2 and serialized['DATASTRUCTURE_VERSION'] >= 2:
            #2 -> 1: remove manual_pushed_routes
            del serialized['manual_pushed_routes']
            serialized['DATASTRUCTURE_VERSION'] = 1

        if wanted_version != serialized['DATASTRUCTURE_VERSION']:
            raise NotImplementedError()

        return serialized