| package org.eclipse.egf.usecase.jet.template; |
| |
| import java.util.*; |
| import org.eclipse.emf.ecore.*; |
| import org.eclipse.emf.ecore.resource.*; |
| import org.eclipse.emf.common.util.*; |
| import org.eclipse.emf.ecore.resource.impl.*; |
| |
| public class genClassesListTemplate |
| { |
| protected static String nl; |
| public static synchronized genClassesListTemplate create(String lineSeparator) |
| { |
| nl = lineSeparator; |
| genClassesListTemplate result = new genClassesListTemplate(); |
| nl = null; |
| return result; |
| } |
| |
| public final String NL = nl == null ? (System.getProperties().getProperty("line.separator")) : nl; |
| protected final String TEXT_1 = ""; |
| protected final String TEXT_2 = " package Classes :" + NL + "-------------------------------"; |
| protected final String TEXT_3 = "\t\t\t"; |
| protected final String TEXT_4 = NL; |
| protected final String TEXT_5 = NL; |
| |
| public String generate(Object argument) |
| { |
| final StringBuffer stringBuffer = new StringBuffer(); |
| URI modelUri = (URI) argument; |
| ResourceSet resourceSet = new ResourceSetImpl(); |
| Resource resource = resourceSet.getResource(modelUri, true); |
| EObject eObject = resource.getContents().get(0); |
| if(eObject instanceof EPackage) { |
| |
| stringBuffer.append(TEXT_1); |
| stringBuffer.append(((EPackage)eObject).getName()); |
| stringBuffer.append(TEXT_2); |
| |
| for(EObject object : eObject.eContents()) { |
| if(object instanceof EClass) { |
| |
| stringBuffer.append(TEXT_3); |
| stringBuffer.append(TEXT_4); |
| stringBuffer.append(((EClass) object).getName()); |
| |
| } |
| } |
| } |
| |
| stringBuffer.append(TEXT_5); |
| return stringBuffer.toString(); |
| } |
| } |