| /******************************************************************************* |
| * Copyright (c) 2007,2008 Tata Consultancy Services and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v2.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v20.html |
| * |
| * Contributors: |
| * TCS - initial implementation for ModelMorf |
| * E.D.Willink - alignment with evolved specification |
| *******************************************************************************/ |
| import UMLMM : 'ClassMM_IN.emof'::ClassMM; |
| |
| transformation AbstractToConcrete(uml1:UMLMM, uml2:UMLMM) |
| { |
| key UMLMM::Type {name}; |
| key UMLMM::Operation {name, _'class'}; |
| key UMLMM::Parameter {name, _'operation', type}; |
| |
| top relation AbstractClassToConcreteClass |
| { |
| t:UMLMM::Type; |
| acon, acopn:String; |
| |
| domain uml1 |
| cc:Class |
| { |
| inheritsFrom = ac:Class |
| { |
| isAbstract = true, |
| _'operation' = aco:Operation |
| { |
| name = acon, |
| parameter = acop:Parameter |
| { |
| name = acopn, |
| type = t |
| } |
| } |
| } |
| }; |
| |
| enforce domain uml2 |
| cc:Class |
| { |
| _'operation' = cco:Operation |
| { |
| name = acon, |
| parameter = ccop:Parameter |
| { |
| name = acopn, |
| type = t |
| } |
| } |
| }; |
| } |
| } |