blob: 3bcf8475941062a05d39f6d5c64397c61ba2fa8b [file] [log] [blame]
package org.eclipse.e4.tools.emf.editor3x.templates;
import org.eclipse.e4.tools.emf.editor3x.wizard.NewPartClassWizard.PartClass;
public class PartTemplate
{
protected static String nl;
public static synchronized PartTemplate create(String lineSeparator)
{
nl = lineSeparator;
PartTemplate result = new PartTemplate();
nl = null;
return result;
}
public final String NL = nl == null ? (System.getProperties().getProperty("line.separator")) : nl;
protected final String TEXT_1 = " " + NL + "package ";
protected final String TEXT_2 = ";" + NL + "" + NL + "import javax.inject.Inject;";
protected final String TEXT_3 = NL + "import javax.annotation.PostConstruct;";
protected final String TEXT_4 = NL + "import javax.annotation.PreDestroy;";
protected final String TEXT_5 = NL + "import org.eclipse.e4.ui.di.Focus;";
protected final String TEXT_6 = NL + "import org.eclipse.e4.ui.di.Persist;";
protected final String TEXT_7 = NL + NL + "public class ";
protected final String TEXT_8 = " {" + NL + "\t@Inject" + NL + "\tpublic ";
protected final String TEXT_9 = "() {" + NL + "\t\t//TODO Your code here" + NL + "\t}" + NL + "\t";
protected final String TEXT_10 = NL + "\t@PostConstruct" + NL + "\tpublic void ";
protected final String TEXT_11 = "() {" + NL + "\t\t//TODO Your code here" + NL + "\t}" + NL + "\t";
protected final String TEXT_12 = NL + "\t";
protected final String TEXT_13 = NL + "\t@PreDestroy" + NL + "\tpublic void ";
protected final String TEXT_14 = "() {" + NL + "\t\t//TODO Your code here" + NL + "\t}" + NL + "\t";
protected final String TEXT_15 = NL + "\t";
protected final String TEXT_16 = NL + "\t@Focus" + NL + "\tpublic void ";
protected final String TEXT_17 = "() {" + NL + "\t\t//TODO Your code here" + NL + "\t}" + NL + "\t";
protected final String TEXT_18 = NL + "\t";
protected final String TEXT_19 = NL + "\t@Persist" + NL + "\tpublic void ";
protected final String TEXT_20 = "() {" + NL + "\t\t//TODO Your code here" + NL + "\t}" + NL + "\t";
protected final String TEXT_21 = NL + "}";
public String generate(Object argument)
{
final StringBuffer stringBuffer = new StringBuffer();
PartClass domainClass = (PartClass)argument;
stringBuffer.append(TEXT_1);
stringBuffer.append( domainClass.getPackageFragment().getElementName() );
stringBuffer.append(TEXT_2);
if( domainClass.isUsePostConstruct() ) {
stringBuffer.append(TEXT_3);
}
if( domainClass.isUsePredestroy() ) {
stringBuffer.append(TEXT_4);
}
if( domainClass.isUseFocus() ) {
stringBuffer.append(TEXT_5);
}
if( domainClass.isUsePersist() ) {
stringBuffer.append(TEXT_6);
}
stringBuffer.append(TEXT_7);
stringBuffer.append( domainClass.getName() );
stringBuffer.append(TEXT_8);
stringBuffer.append( domainClass.getName() );
stringBuffer.append(TEXT_9);
if( domainClass.isUsePostConstruct() ) {
stringBuffer.append(TEXT_10);
stringBuffer.append( domainClass.getPostConstructMethodName() );
stringBuffer.append(TEXT_11);
}
stringBuffer.append(TEXT_12);
if( domainClass.isUsePredestroy() ) {
stringBuffer.append(TEXT_13);
stringBuffer.append( domainClass.getPreDestroyMethodName() );
stringBuffer.append(TEXT_14);
}
stringBuffer.append(TEXT_15);
if( domainClass.isUseFocus() ) {
stringBuffer.append(TEXT_16);
stringBuffer.append( domainClass.getFocusMethodName() );
stringBuffer.append(TEXT_17);
}
stringBuffer.append(TEXT_18);
if( domainClass.isUsePersist() ) {
stringBuffer.append(TEXT_19);
stringBuffer.append( domainClass.getPersistMethodName() );
stringBuffer.append(TEXT_20);
}
stringBuffer.append(TEXT_21);
return stringBuffer.toString();
}
}