public static void logDiagnostic(Diagnostic diagnostic) { if (getPlugin() != null) { getPlugin().log(BasicDiagnostic.toIStatus(diagnostic)); } else { getDefault().log(diagnostic); } }
public static void convertEcore2UML(Resource ecoreResource, Resource umlResource) { TransformationExecutor executor = new TransformationExecutor(transformationURI); ModelExtent input = new BasicModelExtent(ecoreResource.getContents()); ModelExtent output = new BasicModelExtent(); ExecutionContextImpl context = new ExecutionContextImpl(); ExecutionDiagnostic diagnostic = executor.execute(context, input, output); if (diagnostic.getSeverity() == Diagnostic.OK) { umlResource.getContents().addAll(output.getContents()); } else { IStatus status = BasicDiagnostic.toIStatus(diagnostic); InvokeActivator.getDefault().getLog().log(status); } }
@Override protected IStatus run(IProgressMonitor monitor) { IStatus ret = Status.OK_STATUS; SubMonitor subMonitor = SubMonitor.convert(monitor, 100); Injector injector = TargetPlatformActivator.getInstance() .getInjector(TargetPlatformActivator.FR_OBEO_RELENG_TARGETPLATFORM_TARGETPLATFORM); Converter converter = new Converter(); injector.injectMembers(converter); Diagnostic diagnostic = null; final String path = selectedElement.getLocation().toFile().getAbsolutePath(); URI targetplatformFileURI = URI.createFileURI(path); try { diagnostic = converter.generateTargetDefinitionFile(targetplatformFileURI, subMonitor.newChild(95)); } catch (OperationCanceledException cancel) { ret = new Status( IStatus.CANCEL, TargetPlatformActivator.FR_OBEO_RELENG_TARGETPLATFORM_TARGETPLATFORM, cancel.getMessage(), cancel); } catch (Exception e) { ret = new Status( IStatus.ERROR, TargetPlatformActivator.FR_OBEO_RELENG_TARGETPLATFORM_TARGETPLATFORM, e.getMessage(), e); } IContainer container = selectedElement.getParent(); if (container != null) { try { container.refreshLocal(IResource.DEPTH_ONE, subMonitor.newChild(5)); } catch (CoreException e) { return new Status( IStatus.ERROR, TargetPlatformActivator.getInstance().getBundle().getSymbolicName(), e.getMessage(), e); } } if (setTargetPlatform) { PDEIntegration pdeIntegration = new PDEIntegration(); final URI targetFileURI = targetplatformFileURI.trimFileExtension().appendFileExtension("target"); try { pdeIntegration.setTargetPlatform(targetFileURI, monitor); } catch (CoreException e) { ret = new Status( IStatus.ERROR, TargetPlatformActivator.FR_OBEO_RELENG_TARGETPLATFORM_TARGETPLATFORM, e.getMessage(), e); } } if (diagnostic != null) { return BasicDiagnostic.toIStatus(diagnostic); } else { return ret; } }