use of org.eclipse.debug.core.ILaunchConfiguration in project jbosstools-hibernate by jbosstools.
the class CodeGenerationConsoleNameChange method perform.
/* (non-Javadoc)
* @see org.eclipse.ltk.core.refactoring.Change#perform(org.eclipse.core.runtime.IProgressMonitor)
*/
@Override
public Change perform(IProgressMonitor pm) throws CoreException {
String oldName = fLaunchConfiguration.getAttribute(HibernateLaunchConstants.ATTR_CONSOLE_CONFIGURATION_NAME, new String());
ILaunchConfigurationWorkingCopy wc = fLaunchConfiguration.getWorkingCopy();
wc.setAttribute(HibernateLaunchConstants.ATTR_CONSOLE_CONFIGURATION_NAME, newCCName);
ILaunchConfiguration newLaunchConfig = wc.doSave();
return new CodeGenerationConsoleNameChange(newLaunchConfig, oldName);
}
use of org.eclipse.debug.core.ILaunchConfiguration in project jbosstools-hibernate by jbosstools.
the class ExporterAttributesTest method checkCorrectLaunchConfigurationFile.
private void checkCorrectLaunchConfigurationFile(final String fileName) {
// IWorkspace ws = ResourcesPlugin.getWorkspace();
String str1, str2;
ILaunchConfiguration launchConfig = loadLaunchConfigFromFile(fileName);
Map<String, Object> attrMap = null;
try {
attrMap = launchConfig.getAttributes();
} catch (CoreException e) {
e.printStackTrace();
}
Assert.assertNotNull(attrMap);
ExporterAttributes exporterAttributes = null;
try {
exporterAttributes = new ExporterAttributes(launchConfig);
} catch (CoreException e) {
e.printStackTrace();
}
Assert.assertNotNull(exporterAttributes);
// check is configuration correct
Assert.assertNull(exporterAttributes.checkExporterAttributes());
List<ExporterFactory> exporterFactories = exporterAttributes.getExporterFactories();
Set<ExporterFactory> selectedExporters = new HashSet<ExporterFactory>();
selectedExporters.addAll(exporterFactories);
Set<String> deletedExporterIds = new HashSet<String>();
ILaunchConfigurationWorkingCopy launchConfigWC = null;
try {
launchConfigWC = launchConfig.getWorkingCopy();
} catch (CoreException e) {
e.printStackTrace();
}
Assert.assertNotNull(launchConfigWC);
//
str1 = project.getSample(fileName);
str1 = ResourceReadUtils.adjustXmlText(str1);
//
Assert.assertNotNull(project);
Assert.assertNotNull(project.getIProject());
Assert.assertNotNull(project.getIProject().getFile(fileName));
//
InputStream is = null;
try {
is = project.getIProject().getFile(fileName).getContents();
} catch (CoreException e) {
e.printStackTrace();
}
Assert.assertNotNull(is);
str2 = ResourceReadUtils.readStream(is);
str2 = ResourceReadUtils.adjustXmlText(str2);
Assert.assertEquals(str1, str2);
// update and save lc - so fileName from the project updated
try {
ExporterAttributes.saveExporterFactories(launchConfigWC, exporterFactories, selectedExporters, deletedExporterIds);
launchConfigWC.doSave();
} catch (CoreException e) {
Assert.fail(e.getMessage());
}
//
is = null;
try {
is = project.getIProject().getFile(fileName).getContents();
} catch (CoreException e) {
e.printStackTrace();
}
Assert.assertNotNull(is);
str2 = ResourceReadUtils.readStream(is);
str2 = ResourceReadUtils.adjustXmlText(str2);
Assert.assertEquals(str1, str2);
//
IArtifactCollector artifactCollector = service.newArtifactCollector();
ExporterAttributes expAttr = exporterAttributes;
// Global properties
Properties props = new Properties();
// $NON-NLS-1$
props.put(CodeGenerationStrings.EJB3, "" + expAttr.isEJB3Enabled());
// $NON-NLS-1$
props.put(CodeGenerationStrings.JDK5, "" + expAttr.isJDK5Enabled());
consoleCfg.build();
IConfiguration cfg = consoleCfg.getConfiguration();
Assert.assertNotNull(cfg);
Set<String> outputDirectories = new HashSet<String>();
for (int i = 0; i < exporterFactories.size(); i++) {
Properties globalProperties = new Properties();
globalProperties.putAll(props);
ExporterFactory ef = exporterFactories.get(i);
//
Properties propsForTesting = new Properties();
propsForTesting.putAll(globalProperties);
propsForTesting.putAll(ef.getProperties());
//
IExporter exporter = null;
outputDirectories.clear();
try {
exporter = ef.createConfiguredExporter(cfg, expAttr.getOutputPath(), expAttr.getTemplatePath(), globalProperties, outputDirectories, artifactCollector, service);
} catch (CoreException e) {
e.printStackTrace();
}
Assert.assertNotNull(exporter);
Assert.assertTrue(outputDirectories.size() > 0);
Properties propsFromExporter = exporter.getProperties();
String exporterDefinitionId = ef.getExporterDefinitionId();
// test special handling for GenericExporter
if (exporterDefinitionId.equals("org.hibernate.tools.hbmtemplate")) {
// $NON-NLS-1$
Assert.assertNull(propsFromExporter.getProperty(ExporterFactoryStrings.FILE_PATTERN));
Assert.assertNull(propsFromExporter.getProperty(ExporterFactoryStrings.TEMPLATE_NAME));
Assert.assertNull(propsFromExporter.getProperty(ExporterFactoryStrings.FOR_EACH));
IGenericExporter ge = exporter.getGenericExporter();
Assert.assertNotNull(ge);
Assert.assertEquals(propsForTesting.getProperty(ExporterFactoryStrings.FILE_PATTERN), ge.getFilePattern());
Assert.assertEquals(propsForTesting.getProperty(ExporterFactoryStrings.TEMPLATE_NAME), ge.getTemplateName());
// to test GenericExporter should provide public getter but it doesn't
// assertEquals(propsForTesting.getProperty(ExporterFactoryStrings.FOR_EACH), ge.getForEach());
}
// test special handling for Hbm2DDLExporter
if (exporterDefinitionId.equals("org.hibernate.tools.hbm2ddl")) {
// $NON-NLS-1$
Assert.assertNull(propsFromExporter.getProperty(ExporterFactoryStrings.EXPORTTODATABASE));
IHbm2DDLExporter ddlExporter = exporter.getHbm2DDLExporter();
Assert.assertNotNull(ddlExporter);
// to test Hbm2DDLExporter should provide public getter but it doesn't
// assertEquals(propsForTesting.getProperty(ExporterFactoryStrings.EXPORTTODATABASE), ddlExporter.getExport());
}
// test special handling for QueryExporter
if (exporterDefinitionId.equals("org.hibernate.tools.query")) {
// $NON-NLS-1$
Assert.assertNull(propsFromExporter.getProperty(ExporterFactoryStrings.QUERY_STRING));
Assert.assertNull(propsFromExporter.getProperty(ExporterFactoryStrings.OUTPUTFILENAME));
// IQueryExporter queryExporter = exporter.getQueryExporter();
// to test QueryExporter should provide public getter but it doesn't
// List<String> queryStrings = queryExporter.getQueries();
// assertEquals(1, queryStrings.size());
// assertEquals(propsForTesting.getProperty(ExporterFactoryStrings.QUERY_STRING), queryStrings.get(0));
// assertEquals(propsForTesting.getProperty(ExporterFactoryStrings.OUTPUTFILENAME), queryExporter.getFileName());
}
// try {
// exporter.start();
// } catch (HibernateException he) {
// he.printStackTrace();
// }
}
Assert.assertTrue(artifactCollector.getFileTypes().size() == 0);
}
use of org.eclipse.debug.core.ILaunchConfiguration in project jbosstools-hibernate by jbosstools.
the class ExporterAttributesTest method loadLaunchConfigFromFile.
private ILaunchConfiguration loadLaunchConfigFromFile(String fileName) {
IPath path = new Path(fileName);
IFile ifile = project.getIProject().getFile(path);
ILaunchConfiguration launchConfig = launchManager.getLaunchConfiguration((IFile) ifile);
return launchConfig;
}
use of org.eclipse.debug.core.ILaunchConfiguration in project jbosstools-hibernate by jbosstools.
the class AnalyzersCombo method populateComboBox.
protected void populateComboBox() {
String projName = null;
try {
ILaunchConfiguration launchConfiguration = LaunchHelper.findHibernateLaunchConfig(this.consoleConfigName);
// $NON-NLS-1$
projName = launchConfiguration.getAttribute(IConsoleConfigurationLaunchConstants.PROJECT_NAME, "");
} catch (CoreException e) {
HibernateSearchConsolePlugin.getDefault().logError(e);
}
IJavaProject project = ProjectUtils.findJavaProject(projName);
final IType analyzersType = ProjectUtils.findType(project, "org.apache.lucene.analysis.Analyzer");
comboControl.getDisplay().syncExec(new Runnable() {
public void run() {
try {
IType[] types = analyzersType.newTypeHierarchy(new NullProgressMonitor()).getAllSubtypes(analyzersType);
List<String> typesList = new LinkedList<String>();
for (IType type : types) {
try {
if (type.getMethod(type.getElementName(), new String[0]).isConstructor()) {
typesList.add(type.getFullyQualifiedName());
continue;
}
} catch (JavaModelException e) {
HibernateSearchConsolePlugin.getDefault().logInfo("Analuzer " + type.getFullyQualifiedName() + " doesn't have constrcutor with no parameters", e);
}
try {
if (type.getMethod(type.getElementName(), new String[] { "Lorg.apache.lucene.util.Version;" }).isConstructor()) {
typesList.add(type.getFullyQualifiedName());
continue;
}
} catch (JavaModelException e) {
HibernateSearchConsolePlugin.getDefault().logWarning("Analuzer " + type.getFullyQualifiedName() + " doesn't have constrcutor with Version as a parameter", e);
}
}
comboControl.setItems(typesList.toArray(new String[0]));
comboControl.setText(DEFAULT_ANALYZER);
} catch (JavaModelException e) {
HibernateConsolePlugin.getDefault().log(e);
}
}
});
}
use of org.eclipse.debug.core.ILaunchConfiguration in project jbosstools-hibernate by jbosstools.
the class LaunchHelper method findFilteredHibernateLaunchConfigs.
/**
* UI elements should use this method as it does filtering of launch configuration related
* to deleted or closed projects if the settings are set.
* @return
* @throws CoreException
*/
public static ILaunchConfiguration[] findFilteredHibernateLaunchConfigs() throws CoreException {
ILaunchConfiguration[] allHibernateLaunchConfigurations = findHibernateLaunchConfigs();
List<ILaunchConfiguration> launchConfigurations = new ArrayList<ILaunchConfiguration>();
for (ILaunchConfiguration config : allHibernateLaunchConfigurations) {
if (DebugUIPlugin.doLaunchConfigurationFiltering(config))
launchConfigurations.add(config);
}
return launchConfigurations.toArray(new ILaunchConfiguration[launchConfigurations.size()]);
}
Aggregations