001package de.deepamehta.core.migrations; 002 003import de.deepamehta.core.model.AssociationDefinitionModel; 004import de.deepamehta.core.service.Migration; 005 006 007 008/** 009 * Adds child type "Association Type" to "Composition Definition" and "Aggregation Definition" association types. 010 * Runs ALWAYS. 011 * <p> 012 * Part of DM 4.6 013 */ 014public class Migration5 extends Migration { 015 016 @Override 017 public void run() { 018 // Note: "Aggregation Definition" must be updated before "Composition Definition" as the child type 019 // is added via "Aggregation Definition" and this very definition is changed here. 020 dm4.getAssociationType("dm4.core.aggregation_def").addAssocDefBefore( 021 mf.newAssociationDefinitionModel("dm4.core.aggregation_def", "dm4.core.custom_assoc_type", 022 "dm4.core.aggregation_def", "dm4.core.assoc_type", "dm4.core.many", "dm4.core.one" 023 ), 024 "dm4.core.include_in_label" 025 ); 026 dm4.getAssociationType("dm4.core.composition_def").addAssocDefBefore( 027 mf.newAssociationDefinitionModel("dm4.core.aggregation_def", "dm4.core.custom_assoc_type", 028 "dm4.core.composition_def", "dm4.core.assoc_type", "dm4.core.many", "dm4.core.one" 029 ), 030 "dm4.core.include_in_label" 031 ); 032 } 033}