Skip to content

Commit 92b2afd

Browse files
committed
Extract another convenience method
1 parent 6cfe53a commit 92b2afd

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

org.eclipse.tm4e.ui/src/main/java/org/eclipse/tm4e/ui/internal/preferences/CustomCodeTemplatePreferencePage.java

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@
1111
*******************************************************************************/
1212
package org.eclipse.tm4e.ui.internal.preferences;
1313

14-
import java.util.Arrays;
15-
1614
import org.eclipse.jdt.annotation.Nullable;
1715
import org.eclipse.jface.text.Document;
1816
import org.eclipse.jface.text.IDocument;
@@ -28,7 +26,6 @@
2826
import org.eclipse.swt.widgets.Shell;
2927
import org.eclipse.text.templates.TemplatePersistenceData;
3028
import org.eclipse.tm4e.core.grammar.IGrammar;
31-
import org.eclipse.tm4e.registry.IGrammarDefinition;
3229
import org.eclipse.tm4e.registry.ITMScope;
3330
import org.eclipse.tm4e.registry.TMEclipseRegistryPlugin;
3431
import org.eclipse.tm4e.ui.TMUIPlugin;
@@ -108,12 +105,7 @@ private void selectedCodeTemplateChanged() {
108105
if (selectedTemplate != null) {
109106

110107
final String id = selectedTemplate.getContextTypeId();
111-
112-
final IGrammarDefinition[] grammarDefinitions = TMEclipseRegistryPlugin.getGrammarRegistryManager().getDefinitions();
113-
final ITMScope scope = Arrays.stream(grammarDefinitions)
114-
.map(IGrammarDefinition::getScope)
115-
.filter(s -> id.equals(CodeTemplateContextTypeUtils.toContextTypeId(s)))
116-
.findFirst().orElse(null);
108+
final ITMScope scope = CodeTemplateContextTypeUtils.findScopeFor(id);
117109

118110
if (scope != null) {
119111
final IGrammar languageGrammar = TMEclipseRegistryPlugin.getGrammarRegistryManager().getGrammarForScope(scope);

org.eclipse.tm4e.ui/src/main/java/org/eclipse/tm4e/ui/internal/utils/CodeTemplateContextTypeUtils.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,12 @@
1111
*******************************************************************************/
1212
package org.eclipse.tm4e.ui.internal.utils;
1313

14+
import java.util.Arrays;
15+
16+
import org.eclipse.jdt.annotation.Nullable;
17+
import org.eclipse.tm4e.registry.IGrammarDefinition;
1418
import org.eclipse.tm4e.registry.ITMScope;
19+
import org.eclipse.tm4e.registry.TMEclipseRegistryPlugin;
1520
import org.eclipse.tm4e.ui.TMUIPlugin;
1621

1722
public class CodeTemplateContextTypeUtils {
@@ -28,4 +33,13 @@ public static String toContextTypeId(final ITMScope languageScope) {
2833
return CONTEXT_TYPE_ID_PREFIX + contextTypeIdSuffix;
2934
}
3035

36+
public static @Nullable ITMScope findScopeFor(final String contextTypeId) {
37+
final IGrammarDefinition[] grammarDefinitions = TMEclipseRegistryPlugin.getGrammarRegistryManager().getDefinitions();
38+
39+
return Arrays.stream(grammarDefinitions)
40+
.map(IGrammarDefinition::getScope)
41+
.filter(scope -> contextTypeId.equals(CodeTemplateContextTypeUtils.toContextTypeId(scope)))
42+
.findFirst().orElse(null);
43+
}
44+
3145
}

0 commit comments

Comments
 (0)