Search in sources :

Example 6 with IMavenPomCreator

use of org.talend.core.runtime.repository.build.IMavenPomCreator in project tdi-studio-se by Talend.

the class BigDataJavaProcessor method createMavenPomCreator.

@Override
protected IMavenPomCreator createMavenPomCreator() {
    IMavenPomCreator createMavenTemplatePom = super.createMavenPomCreator();
    if (createMavenTemplatePom instanceof CreateMavenJobPom) {
        CreateMavenJobPom createMavenJobPom = (CreateMavenJobPom) createMavenTemplatePom;
        if (!StringUtils.isBlank(this.windowsAddition)) {
            String windowsScriptAddition = createMavenJobPom.getWindowsScriptAddition();
            if (windowsScriptAddition != null && windowsScriptAddition.length() > 0) {
                // add one space to separate existed additions.
                windowsScriptAddition += ' ';
            } else {
                //$NON-NLS-1$
                windowsScriptAddition = "";
            }
            windowsScriptAddition += ProcessorConstants.CMD_KEY_WORD_LIBJAR + ' ' + this.windowsAddition;
            createMavenJobPom.setWindowsScriptAddition(windowsScriptAddition);
        }
        if (!StringUtils.isBlank(this.unixAddition)) {
            String unixScriptAddition = createMavenJobPom.getUnixScriptAddition();
            if (unixScriptAddition != null && unixScriptAddition.length() > 0) {
                // add one space to separate existed additions.
                unixScriptAddition += ' ';
            } else {
                //$NON-NLS-1$
                unixScriptAddition = "";
            }
            unixScriptAddition += ProcessorConstants.CMD_KEY_WORD_LIBJAR + ' ' + this.unixAddition;
            createMavenJobPom.setUnixCcriptAddition(unixScriptAddition);
        }
    }
    return createMavenTemplatePom;
}
Also used : CreateMavenJobPom(org.talend.designer.maven.tools.creator.CreateMavenJobPom) IMavenPomCreator(org.talend.core.runtime.repository.build.IMavenPomCreator)

Example 7 with IMavenPomCreator

use of org.talend.core.runtime.repository.build.IMavenPomCreator in project tdi-studio-se by Talend.

the class StandardJobOSGiBundleBuildProviderTest method test_createPomCreator.

@Test
public void test_createPomCreator() throws Exception {
    Map<String, Object> parameters = new HashMap<String, Object>();
    Item jobItem = createJobItem();
    final IDesignerCoreService designerCoreService = CorePlugin.getDefault().getDesignerCoreService();
    Assert.assertNotNull(designerCoreService);
    final IProcess processFromItem = designerCoreService.getProcessFromItem(jobItem);
    IProcessor processor = ProcessorUtilities.getProcessor(processFromItem, jobItem.getProperty());
    final Class<? extends IProcessor> processorClazz = processor.getClass();
    Assert.assertEquals("org.talend.designer.runprocess.maven.MavenJavaProcessor", processorClazz.getName());
    processor.setContext(processor.getProcess().getContextManager().getDefaultContext());
    parameters.put(IBuildPomCreatorParameters.PROCESSOR, processor);
    final Method getPomFileMethod = processorClazz.getDeclaredMethod("getPomFile");
    getPomFileMethod.setAccessible(true);
    final Object getPomFile = getPomFileMethod.invoke(processor);
    Assert.assertTrue(getPomFile instanceof IFile);
    IFile pomFile = (IFile) getPomFile;
    parameters.put(IBuildPomCreatorParameters.FILE_POM, pomFile);
    parameters.put(IBuildParametes.ITEM, processor.getProperty().getItem());
    final Map<String, Object> arguments = processor.getArguments();
    parameters.put(IBuildPomCreatorParameters.ARGUMENTS_MAP, arguments);
    parameters.put(IBuildPomCreatorParameters.OVERWRITE_POM, true);
    // create pom and assembly
    RepositoryObjectTypeBuildProvider provider = createTestBuildProvider();
    final IMavenPomCreator pomCreator = provider.createPomCreator(parameters);
    Assert.assertNotNull("Create the pom creator failure", pomCreator);
    Assert.assertEquals(CreateMavenStandardJobOSGiPom.class, pomCreator.getClass());
    pomCreator.create(null);
    pomFile.getParent().refreshLocal(IResource.DEPTH_ONE, null);
    Assert.assertTrue("the pom file " + pomFile.getName() + " is not created ", pomFile.exists());
}
Also used : IFile(org.eclipse.core.resources.IFile) HashMap(java.util.HashMap) IMavenPomCreator(org.talend.core.runtime.repository.build.IMavenPomCreator) IProcessor(org.talend.designer.runprocess.IProcessor) Method(java.lang.reflect.Method) Item(org.talend.core.model.properties.Item) RepositoryObjectTypeBuildProvider(org.talend.core.runtime.repository.build.RepositoryObjectTypeBuildProvider) IDesignerCoreService(org.talend.designer.core.IDesignerCoreService) IProcess(org.talend.core.model.process.IProcess) Test(org.junit.Test)

Example 8 with IMavenPomCreator

use of org.talend.core.runtime.repository.build.IMavenPomCreator in project tesb-studio-se by Talend.

the class CreateRouteAsOSGIPomTest method initializeAndCompare.

private void initializeAndCompare(String testCaseName) throws PersistenceException, IOException, CoreException {
    IProcessor processor = getProcessor(testCaseName);
    Project project = ProjectManager.getInstance().getCurrentProject();
    IProject fsProject = ResourceUtils.getProject(project);
    IPath path = getPomPathForTest(testCaseName);
    IMavenPomCreator pomCreator = createPomCreator(processor, fsProject.getFile(path));
    try {
        pomCreator.create(new NullProgressMonitor());
    } catch (Exception e) {
        e.printStackTrace();
        ExceptionHandler.process(e);
        fail(e.getMessage());
    }
    compareGeneratedFilesWithReference(processor.getCodeProject(), testCaseName.toLowerCase() + UNDERSCORE + TEST_ITEM_VERSION);
}
Also used : IProject(org.eclipse.core.resources.IProject) Project(org.talend.core.model.general.Project) NullProgressMonitor(org.eclipse.core.runtime.NullProgressMonitor) IPath(org.eclipse.core.runtime.IPath) IMavenPomCreator(org.talend.core.runtime.repository.build.IMavenPomCreator) IProcessor(org.talend.designer.runprocess.IProcessor) IProject(org.eclipse.core.resources.IProject) CoreException(org.eclipse.core.runtime.CoreException) IOException(java.io.IOException) PersistenceException(org.talend.commons.exception.PersistenceException)

Aggregations

IMavenPomCreator (org.talend.core.runtime.repository.build.IMavenPomCreator)8 HashMap (java.util.HashMap)5 IPath (org.eclipse.core.runtime.IPath)4 IFile (org.eclipse.core.resources.IFile)3 Test (org.junit.Test)3 Property (org.talend.core.model.properties.Property)3 IProcessor (org.talend.designer.runprocess.IProcessor)3 Method (java.lang.reflect.Method)2 IFolder (org.eclipse.core.resources.IFolder)2 IProject (org.eclipse.core.resources.IProject)2 NullProgressMonitor (org.eclipse.core.runtime.NullProgressMonitor)2 Project (org.talend.core.model.general.Project)2 IProcess (org.talend.core.model.process.IProcess)2 Item (org.talend.core.model.properties.Item)2 ProcessItem (org.talend.core.model.properties.ProcessItem)2 AbstractBuildProvider (org.talend.core.runtime.repository.build.AbstractBuildProvider)2 RepositoryObjectTypeBuildProvider (org.talend.core.runtime.repository.build.RepositoryObjectTypeBuildProvider)2 IDesignerCoreService (org.talend.designer.core.IDesignerCoreService)2 CreateMavenJobPom (org.talend.designer.maven.tools.creator.CreateMavenJobPom)2 ByteArrayInputStream (java.io.ByteArrayInputStream)1