From: Tuukka Lehtonen Date: Thu, 19 Dec 2019 11:28:07 +0000 (+0000) Subject: Merge "Catch Throwable instead of Exception in SCL AsyncUtils" X-Git-Tag: v1.43.0~136^2~15 X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=commitdiff_plain;h=3429953fc33fa37fe9f03d01f66dbe66fa97e567;hp=f88bdec494a4d5dd8e7ba5045f225b4322070077 Merge "Catch Throwable instead of Exception in SCL AsyncUtils" --- diff --git a/bundles/org.simantics.browsing.ui.common/src/org/simantics/browsing/ui/common/internal/GECache.java b/bundles/org.simantics.browsing.ui.common/src/org/simantics/browsing/ui/common/internal/GECache.java index 014a5c0d5..bdc0e16a0 100644 --- a/bundles/org.simantics.browsing.ui.common/src/org/simantics/browsing/ui/common/internal/GECache.java +++ b/bundles/org.simantics.browsing.ui.common/src/org/simantics/browsing/ui/common/internal/GECache.java @@ -24,38 +24,38 @@ import org.simantics.browsing.ui.NodeContext.CacheKey; public class GECache implements IGECache { - final Map entries = new THashMap(); - final Map> treeReferences = new THashMap>(); + final Map entries = new THashMap<>(); + final Map> treeReferences = new THashMap<>(); final private static class GECacheKey { private NodeContext context; private CacheKey key; + private int hash; GECacheKey(NodeContext context, CacheKey key) { - this.context = context; - this.key = key; - if (context == null || key == null) - throw new IllegalArgumentException("Null context or key is not accepted"); + setValues(context, key); } GECacheKey(GECacheKey other) { - this.context = other.context; - this.key = other.key; - if (context == null || key == null) - throw new IllegalArgumentException("Null context or key is not accepted"); + setValues(other.context, other.key); } void setValues(NodeContext context, CacheKey key) { + if (context == null || key == null) + throw new IllegalArgumentException("Null context or key is not accepted"); this.context = context; this.key = key; - if (context == null || key == null) - throw new IllegalArgumentException("Null context or key is not accepted"); + this.hash = calcHash(); + } + + private int calcHash() { + return (31 * context.hashCode()) + key.hashCode(); } @Override public int hashCode() { - return context.hashCode() | key.hashCode(); + return hash; } @Override @@ -74,6 +74,11 @@ public class GECache implements IGECache { } + @Override + public String toString() { + return String.format("%s@%d [key=%s, context=%s]", getClass().getSimpleName(), System.identityHashCode(this), key, context); //$NON-NLS-1$ + } + }; /** @@ -116,9 +121,7 @@ public class GECache implements IGECache { public T get(NodeContext context, CacheKey key) { getKey.setValues(context, key); IGECacheEntry entry = entries.get(getKey); - if (entry == null) - return null; - return (T) entry.getValue(); + return entry != null ? (T) entry.getValue() : null; } @Override @@ -171,7 +174,7 @@ public class GECache implements IGECache { return references.get(context) > 0; } - private TObjectIntHashMap references = new TObjectIntHashMap(); + private TObjectIntHashMap references = new TObjectIntHashMap<>(); @Override synchronized public void incRef(NodeContext context) { diff --git a/bundles/org.simantics.charts/src/org/simantics/charts/internal/JsonUtils.java b/bundles/org.simantics.charts/src/org/simantics/charts/internal/JsonUtils.java index 19d9d4843..49bc6f08d 100644 --- a/bundles/org.simantics.charts/src/org/simantics/charts/internal/JsonUtils.java +++ b/bundles/org.simantics.charts/src/org/simantics/charts/internal/JsonUtils.java @@ -54,6 +54,9 @@ public class JsonUtils { while (jp.nextToken() != JsonToken.END_OBJECT) { String fieldName = jp.getCurrentName(); jp.nextToken(); + if (fieldName == null) + continue; + if (fieldName.equals("uri")) { uri = jp.getValueAsString(); } else if (fieldName.equals("type")) { diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/AssignSymbolGroupsDialog.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/AssignSymbolGroupsDialog.java index b768a05ab..a85c35628 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/AssignSymbolGroupsDialog.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/AssignSymbolGroupsDialog.java @@ -38,10 +38,6 @@ public abstract class AssignSymbolGroupsDialog extends SelectionDialog { private static final String DIALOG = "AssignSymbolGroupsDialog"; //$NON-NLS-1$ - static String SELECT_ALL_TITLE = ""; //$NON-NLS-1$ - - static String DESELECT_ALL_TITLE = ""; //$NON-NLS-1$ - // the root element to populate the viewer with protected Object inputElement; @@ -86,7 +82,7 @@ public abstract class AssignSymbolGroupsDialog extends SelectionDialog { if (message != null) { setMessage(message); } else { - setMessage(""); //$NON-NLS-1$ + setMessage(WorkbenchMessages.ListSelection_message); } IDialogSettings settings = Activator.getDefault().getDialogSettings(); @@ -114,7 +110,7 @@ public abstract class AssignSymbolGroupsDialog extends SelectionDialog { buttonComposite.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, true)); Button selectButton = createButton(buttonComposite, - IDialogConstants.SELECT_ALL_ID, SELECT_ALL_TITLE, false); + IDialogConstants.SELECT_ALL_ID, WorkbenchMessages.SelectionDialog_selectLabel, false); SelectionListener listener = new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { @@ -125,7 +121,7 @@ public abstract class AssignSymbolGroupsDialog extends SelectionDialog { selectButton.addSelectionListener(listener); Button deselectButton = createButton(buttonComposite, - IDialogConstants.DESELECT_ALL_ID, DESELECT_ALL_TITLE, false); + IDialogConstants.DESELECT_ALL_ID, WorkbenchMessages.SelectionDialog_deselectLabel, false); listener = new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { @@ -139,7 +135,7 @@ public abstract class AssignSymbolGroupsDialog extends SelectionDialog { Label label = new Label(buttonComposite, SWT.NONE); Button newButton = createButton(buttonComposite, - IDialogConstants.INTERNAL_ID-1, org.simantics.modeling.ui.actions.WorkbenchMessages.AssignSymbolGroupsDialog_NewDots, false); + IDialogConstants.INTERNAL_ID-1, org.simantics.modeling.ui.actions.WorkbenchMessages.AssignSymbolGroupsDialog_New, false); listener = new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { @@ -149,7 +145,7 @@ public abstract class AssignSymbolGroupsDialog extends SelectionDialog { newButton.addSelectionListener(listener); Button removeButton = createButton(buttonComposite, - IDialogConstants.INTERNAL_ID-2, org.simantics.modeling.ui.actions.WorkbenchMessages.AssignSymbolGroupsDialog_RemoveAnd, false); + IDialogConstants.INTERNAL_ID-2, org.simantics.modeling.ui.actions.WorkbenchMessages.AssignSymbolGroupsDialog_Remove, false); listener = new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/WorkbenchMessages.java b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/WorkbenchMessages.java index 36ed5b8fb..24e7b8af4 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/WorkbenchMessages.java +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/WorkbenchMessages.java @@ -4,8 +4,8 @@ import org.eclipse.osgi.util.NLS; public class WorkbenchMessages extends NLS { private static final String BUNDLE_NAME = "org.simantics.modeling.ui.actions.messages"; //$NON-NLS-1$ - public static String AssignSymbolGroupsDialog_NewDots; - public static String AssignSymbolGroupsDialog_RemoveAnd; + public static String AssignSymbolGroupsDialog_New; + public static String AssignSymbolGroupsDialog_Remove; static { // initialize resource bundle NLS.initializeMessages(BUNDLE_NAME, WorkbenchMessages.class); diff --git a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/messages.properties b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/messages.properties index 57f9e15cb..0020e272b 100644 --- a/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/messages.properties +++ b/bundles/org.simantics.modeling.ui/src/org/simantics/modeling/ui/actions/messages.properties @@ -10,8 +10,8 @@ AssignSymbolGroup_SelectSymbolGroupsTheSelectedSymbolIsShownIn=Select symbol gro AssignSymbolGroup_SelectSymbolGroupsTheSelectedSymbolsAreShownIn=Select symbol groups the selected {0} symbols are shown in. AssignSymbolGroup_SymbolGroupAssignments=Symbol Group Assignments AssignSymbolGroup_WriteSymbolGroupName=Write the name of the new symbol group. -AssignSymbolGroupsDialog_NewDots=&New... -AssignSymbolGroupsDialog_RemoveAnd=&Remove +AssignSymbolGroupsDialog_New=&New... +AssignSymbolGroupsDialog_Remove=&Remove CompilePGraphsAction_CompilePGraphs=Compile PGraphs CompilePGraphsAction_Continue=Continue CompilePGraphsAction_FollowingIssuesFound=The following issues were found: