Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.osee.framework.core.dsl.ui.integration/src/org/eclipse/osee/framework/core/dsl/ui/integration/wizards/OseeTypesImportPage.java')
-rw-r--r--plugins/org.eclipse.osee.framework.core.dsl.ui.integration/src/org/eclipse/osee/framework/core/dsl/ui/integration/wizards/OseeTypesImportPage.java418
1 files changed, 209 insertions, 209 deletions
diff --git a/plugins/org.eclipse.osee.framework.core.dsl.ui.integration/src/org/eclipse/osee/framework/core/dsl/ui/integration/wizards/OseeTypesImportPage.java b/plugins/org.eclipse.osee.framework.core.dsl.ui.integration/src/org/eclipse/osee/framework/core/dsl/ui/integration/wizards/OseeTypesImportPage.java
index 7257dff1800..30c2ebc98ba 100644
--- a/plugins/org.eclipse.osee.framework.core.dsl.ui.integration/src/org/eclipse/osee/framework/core/dsl/ui/integration/wizards/OseeTypesImportPage.java
+++ b/plugins/org.eclipse.osee.framework.core.dsl.ui.integration/src/org/eclipse/osee/framework/core/dsl/ui/integration/wizards/OseeTypesImportPage.java
@@ -50,213 +50,213 @@ import org.eclipse.xtext.resource.ClassloaderClasspathUriResolver;
* @author Roberto E. Escobar
*/
public class OseeTypesImportPage extends WizardDataTransferPage {
- private static final String PAGE_NAME =
- "org.eclipse.osee.framework.core.dsl.ui.integration.wizards.OseeTypesImportPage";
-
- private final OseeTypesSetup oseeTypesSetup;
- private File compositeFile;
- private final IStructuredSelection selection;
- private TreeViewer linksViewer;
- private final SelectOseeTypesPanel oseeTypesPanel;
- private final List<LinkNode> messages;
- private Button reportChanges;
- private Button persistChanges;
- private Button useCompareEditor;
-
- protected OseeTypesImportPage(IStructuredSelection selection, String title) {
- super(PAGE_NAME);
- this.selection = selection;
- oseeTypesSetup = new OseeTypesSetup();
- oseeTypesPanel = new SelectOseeTypesPanel();
- oseeTypesPanel.setDefaultItem(getPreselected());
- setTitle(title);
- setDescription("Select *.osee files to import");
- messages = new ArrayList<LinkNode>();
- }
-
- private List<IFile> getPreselected() {
- List<IFile> resources = new ArrayList<IFile>();
- if (selection != null) {
- Iterator<?> iterator = selection.iterator();
- while (iterator.hasNext()) {
- Object object = iterator.next();
- if (object instanceof IFile) {
- IFile file = (IFile) object;
- if (file.getFileExtension().equals("osee")) {
- resources.add(file);
- }
- }
- }
- }
- return resources;
- }
-
- @Override
- protected boolean allowNewContainerName() {
- return false;
- }
-
- @Override
- public void handleEvent(Event event) {
- updateWidgetEnablements();
- updateExtractedElements();
- }
-
- @Override
- public void createControl(Composite parent) {
- initializeDialogUnits(parent);
-
- Composite composite = new Composite(parent, SWT.NULL);
- composite.setLayout(new GridLayout(1, false));
- composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
- composite.setFont(parent.getFont());
-
- oseeTypesPanel.createControl(composite);
- oseeTypesPanel.addListener(this);
-
- Label sectionTitle = new Label(composite, SWT.NONE);
- sectionTitle.setText("Resolved dependencies:");
- sectionTitle.setLayoutData(new GridData(SWT.BEGINNING, SWT.TOP, true, false));
-
- linksViewer = new TreeViewer(composite, SWT.BORDER);
- linksViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
- linksViewer.setContentProvider(new LinkNodeContentProvider());
- linksViewer.setLabelProvider(new LinkNodeLabelProvider());
- linksViewer.setInput(messages);
-
- createOptions(composite);
-
- restoreWidgetValues();
- updateWidgetEnablements();
- updateExtractedElements();
- setPageComplete(determinePageCompletion());
- setControl(composite);
- }
-
- private void createOptions(Composite parent) {
- Group composite = new Group(parent, SWT.NULL);
- composite.setLayout(new GridLayout(1, false));
- composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
- composite.setFont(parent.getFont());
- composite.setText("Options");
-
- reportChanges = new Button(composite, SWT.CHECK);
- reportChanges.setText("Report Changes");
- reportChanges.setSelection(true);
-
- useCompareEditor = new Button(composite, SWT.CHECK);
- useCompareEditor.setText("Use Compare Editor");
- useCompareEditor.setSelection(false);
-
- persistChanges = new Button(composite, SWT.CHECK);
- persistChanges.setText("Persist Changes");
- persistChanges.setSelection(false);
- }
-
- public boolean isPersistAllowed() {
- return persistChanges.getSelection();
- }
-
- public boolean isReportChanges() {
- return reportChanges.getSelection();
- }
-
- public boolean useCompareEditor() {
- return useCompareEditor.getSelection();
- }
-
- public File getTypesToImport() {
- return compositeFile != null ? compositeFile : null;
- }
-
- private void setCompositeFile(File compositeFile) {
- this.compositeFile = compositeFile;
- }
-
- @Override
- protected boolean validateSourceGroup() {
- return oseeTypesPanel.getSelected() != null;
- }
-
- @Override
- protected boolean validateDestinationGroup() {
- return getTypesToImport() != null;
- }
-
- private synchronized void updateExtractedElements() {
- if (oseeTypesPanel.getSelected() != null) {
- setErrorMessage(null);
- File file = getTypesToImport();
- if (file != null) {
- file.delete();
- setCompositeFile(null);
- }
- OseeLog.log(Activator.class, Level.INFO, "Resolving imports");
-
- final List<IFile> selectedFiles = new ArrayList<IFile>(oseeTypesPanel.getSelected());
- final List<LinkNode> dependencyData = new ArrayList<LinkNode>();
-
- Collection<IOperation> ops = new ArrayList<IOperation>();
- ops.add(new ResolveImportsOperation(new ClassloaderClasspathUriResolver(), selectedFiles, dependencyData));
- ops.add(new CreateCombinedFile(dependencyData));
- if (executeOperation(new CompositeOperation("Resolving imports", Activator.PLUGIN_ID, ops))) {
- messages.clear();
- messages.addAll(dependencyData);
- linksViewer.refresh();
- setPageComplete(determinePageCompletion());
- }
- }
- }
-
- protected boolean executeOperation(final IOperation operation) {
- try {
- getContainer().run(true, true, new IRunnableWithProgress() {
-
- @Override
- public void run(IProgressMonitor monitor) {
- Operations.executeWork(operation, monitor, -1);
- }
- });
- } catch (InterruptedException e) {
- return false;
- } catch (InvocationTargetException e) {
- displayErrorDialog(e.getTargetException());
- return false;
- }
-
- IStatus status = operation.getStatus();
- if (status.isOK()) {
- setErrorMessage(null);
- } else {
- setErrorMessage(status.getChildren()[0].getMessage());
- }
- return true;
- }
-
- private final class CreateCombinedFile extends AbstractOperation {
- private final List<LinkNode> dependencyData;
-
- public CreateCombinedFile(List<LinkNode> dependencyData) {
- super("Create combined file", Activator.PLUGIN_ID);
- this.dependencyData = dependencyData;
- }
-
- private void loadMap(LinkNode node, Map<String, URL> map) throws MalformedURLException {
- for (LinkNode child : node.getChildren()) {
- loadMap(child, map);
- }
- String path = node.getUri().toString();
- map.put(path, new URL(node.getUri().toString()));
- }
-
- @Override
- protected void doWork(IProgressMonitor monitor) throws Exception {
- Map<String, URL> resolvedEntries = new LinkedHashMap<String, URL>();
- for (LinkNode node : dependencyData) {
- loadMap(node, resolvedEntries);
- }
- File file = oseeTypesSetup.createCombinedFile(resolvedEntries);
- setCompositeFile(file);
- }
- }
+ private static final String PAGE_NAME =
+ "org.eclipse.osee.framework.core.dsl.ui.integration.wizards.OseeTypesImportPage";
+
+ private final OseeTypesSetup oseeTypesSetup;
+ private File compositeFile;
+ private final IStructuredSelection selection;
+ private TreeViewer linksViewer;
+ private final SelectOseeTypesPanel oseeTypesPanel;
+ private final List<LinkNode> messages;
+ private Button reportChanges;
+ private Button persistChanges;
+ private Button useCompareEditor;
+
+ protected OseeTypesImportPage(IStructuredSelection selection, String title) {
+ super(PAGE_NAME);
+ this.selection = selection;
+ oseeTypesSetup = new OseeTypesSetup();
+ oseeTypesPanel = new SelectOseeTypesPanel();
+ oseeTypesPanel.setDefaultItem(getPreselected());
+ setTitle(title);
+ setDescription("Select *.osee files to import");
+ messages = new ArrayList<LinkNode>();
+ }
+
+ private List<IFile> getPreselected() {
+ List<IFile> resources = new ArrayList<IFile>();
+ if (selection != null) {
+ Iterator<?> iterator = selection.iterator();
+ while (iterator.hasNext()) {
+ Object object = iterator.next();
+ if (object instanceof IFile) {
+ IFile file = (IFile) object;
+ if (file.getFileExtension().equals("osee")) {
+ resources.add(file);
+ }
+ }
+ }
+ }
+ return resources;
+ }
+
+ @Override
+ protected boolean allowNewContainerName() {
+ return false;
+ }
+
+ @Override
+ public void handleEvent(Event event) {
+ updateWidgetEnablements();
+ updateExtractedElements();
+ }
+
+ @Override
+ public void createControl(Composite parent) {
+ initializeDialogUnits(parent);
+
+ Composite composite = new Composite(parent, SWT.NULL);
+ composite.setLayout(new GridLayout(1, false));
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ composite.setFont(parent.getFont());
+
+ oseeTypesPanel.createControl(composite);
+ oseeTypesPanel.addListener(this);
+
+ Label sectionTitle = new Label(composite, SWT.NONE);
+ sectionTitle.setText("Resolved dependencies:");
+ sectionTitle.setLayoutData(new GridData(SWT.BEGINNING, SWT.TOP, true, false));
+
+ linksViewer = new TreeViewer(composite, SWT.BORDER);
+ linksViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ linksViewer.setContentProvider(new LinkNodeContentProvider());
+ linksViewer.setLabelProvider(new LinkNodeLabelProvider());
+ linksViewer.setInput(messages);
+
+ createOptions(composite);
+
+ restoreWidgetValues();
+ updateWidgetEnablements();
+ updateExtractedElements();
+ setPageComplete(determinePageCompletion());
+ setControl(composite);
+ }
+
+ private void createOptions(Composite parent) {
+ Group composite = new Group(parent, SWT.NULL);
+ composite.setLayout(new GridLayout(1, false));
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ composite.setFont(parent.getFont());
+ composite.setText("Options");
+
+ reportChanges = new Button(composite, SWT.CHECK);
+ reportChanges.setText("Report Changes");
+ reportChanges.setSelection(true);
+
+ useCompareEditor = new Button(composite, SWT.CHECK);
+ useCompareEditor.setText("Use Compare Editor");
+ useCompareEditor.setSelection(false);
+
+ persistChanges = new Button(composite, SWT.CHECK);
+ persistChanges.setText("Persist Changes");
+ persistChanges.setSelection(false);
+ }
+
+ public boolean isPersistAllowed() {
+ return persistChanges.getSelection();
+ }
+
+ public boolean isReportChanges() {
+ return reportChanges.getSelection();
+ }
+
+ public boolean useCompareEditor() {
+ return useCompareEditor.getSelection();
+ }
+
+ public File getTypesToImport() {
+ return compositeFile != null ? compositeFile : null;
+ }
+
+ private void setCompositeFile(File compositeFile) {
+ this.compositeFile = compositeFile;
+ }
+
+ @Override
+ protected boolean validateSourceGroup() {
+ return oseeTypesPanel.getSelected() != null;
+ }
+
+ @Override
+ protected boolean validateDestinationGroup() {
+ return getTypesToImport() != null;
+ }
+
+ private synchronized void updateExtractedElements() {
+ if (oseeTypesPanel.getSelected() != null) {
+ setErrorMessage(null);
+ File file = getTypesToImport();
+ if (file != null) {
+ file.delete();
+ setCompositeFile(null);
+ }
+ OseeLog.log(Activator.class, Level.INFO, "Resolving imports");
+
+ final List<IFile> selectedFiles = new ArrayList<IFile>(oseeTypesPanel.getSelected());
+ final List<LinkNode> dependencyData = new ArrayList<LinkNode>();
+
+ Collection<IOperation> ops = new ArrayList<IOperation>();
+ ops.add(new ResolveImportsOperation(new ClassloaderClasspathUriResolver(), selectedFiles, dependencyData));
+ ops.add(new CreateCombinedFile(dependencyData));
+ if (executeOperation(new CompositeOperation("Resolving imports", Activator.PLUGIN_ID, ops))) {
+ messages.clear();
+ messages.addAll(dependencyData);
+ linksViewer.refresh();
+ setPageComplete(determinePageCompletion());
+ }
+ }
+ }
+
+ protected boolean executeOperation(final IOperation operation) {
+ try {
+ getContainer().run(true, true, new IRunnableWithProgress() {
+
+ @Override
+ public void run(IProgressMonitor monitor) {
+ Operations.executeWork(operation, monitor, -1);
+ }
+ });
+ } catch (InterruptedException e) {
+ return false;
+ } catch (InvocationTargetException e) {
+ displayErrorDialog(e.getTargetException());
+ return false;
+ }
+
+ IStatus status = operation.getStatus();
+ if (status.isOK()) {
+ setErrorMessage(null);
+ } else {
+ setErrorMessage(status.getChildren()[0].getMessage());
+ }
+ return true;
+ }
+
+ private final class CreateCombinedFile extends AbstractOperation {
+ private final List<LinkNode> dependencyData;
+
+ public CreateCombinedFile(List<LinkNode> dependencyData) {
+ super("Create combined file", Activator.PLUGIN_ID);
+ this.dependencyData = dependencyData;
+ }
+
+ private void loadMap(LinkNode node, Map<String, URL> map) throws MalformedURLException {
+ for (LinkNode child : node.getChildren()) {
+ loadMap(child, map);
+ }
+ String path = node.getUri().toString();
+ map.put(path, new URL(node.getUri().toString()));
+ }
+
+ @Override
+ protected void doWork(IProgressMonitor monitor) throws Exception {
+ Map<String, URL> resolvedEntries = new LinkedHashMap<String, URL>();
+ for (LinkNode node : dependencyData) {
+ loadMap(node, resolvedEntries);
+ }
+ File file = oseeTypesSetup.createCombinedFile(resolvedEntries);
+ setCompositeFile(file);
+ }
+ }
} \ No newline at end of file

Back to the top