summaryrefslogtreecommitdiffstats
path: root/rba.tool.core/src/rba/tool/core/util/ModelUtil.java
blob: b6b34a7335fe5ecd910fe9300c5e4c7ad6dd7ff2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package rba.tool.core.util;

import org.eclipse.emf.ecore.EObject;

import rba.core.NamedElement;
import rba.core.Package;

public class ModelUtil {

	public static final String SEPARATOR = "/";
	
	public static String getRBAModelHierarchicalName(NamedElement target) {
		return getRBAModelHierarchicalName(target, SEPARATOR);
	}

	public static String getRBAModelHierarchicalName(NamedElement target, String separator) {
		EObject parent = target.eContainer();
		if (parent == null || !(parent instanceof NamedElement) || parent instanceof Package) {
			return target.getName();
		} else {
			return getRBAModelHierarchicalName((NamedElement) parent, separator) + separator + target.getName();
		}
	}
	
	public static String convertModelName2ArbitrateName(String modelName) {
		if (modelName == null) return modelName;
		return modelName.replace(".", "/");
	}
}