|
8 | 8 | */ |
9 | 9 | package org.elasticsearch.logstashbridge.script; |
10 | 10 |
|
11 | | -import org.elasticsearch.cluster.project.DefaultProjectResolver; |
| 11 | +import org.elasticsearch.cluster.metadata.ProjectId; |
12 | 12 | import org.elasticsearch.cluster.project.ProjectResolver; |
13 | 13 | import org.elasticsearch.common.settings.Settings; |
| 14 | +import org.elasticsearch.core.CheckedRunnable; |
14 | 15 | import org.elasticsearch.core.FixForMultiProject; |
15 | 16 | import org.elasticsearch.ingest.common.ProcessorsWhitelistExtension; |
16 | 17 | import org.elasticsearch.logstashbridge.StableBridgeAPI; |
@@ -69,8 +70,8 @@ private static ScriptService getScriptService(final Settings settings, final Lon |
69 | 70 | MustacheScriptEngine.NAME, |
70 | 71 | new MustacheScriptEngine(settings) |
71 | 72 | ); |
72 | | - @FixForMultiProject // Should this be non-DefaultProjectResolver? |
73 | | - final ProjectResolver projectResolver = DefaultProjectResolver.INSTANCE; |
| 73 | + @FixForMultiProject // Should this be non-BridgeProjectIdResolver? |
| 74 | + final ProjectResolver projectResolver = new BridgeProjectIdResolver(); |
74 | 75 | return new ScriptService(settings, scriptEngines, ScriptModule.CORE_CONTEXTS, timeProvider, projectResolver); |
75 | 76 | } |
76 | 77 |
|
@@ -113,4 +114,21 @@ public <T> List<T> loadExtensions(Class<T> extensionPointType) { |
113 | 114 | public void close() throws IOException { |
114 | 115 | this.internalDelegate.close(); |
115 | 116 | } |
| 117 | + |
| 118 | + static class BridgeProjectIdResolver implements ProjectResolver { |
| 119 | + |
| 120 | + @Override |
| 121 | + public ProjectId getProjectId() { |
| 122 | + return ProjectId.DEFAULT; |
| 123 | + } |
| 124 | + |
| 125 | + @Override |
| 126 | + public <E extends Exception> void executeOnProject(ProjectId projectId, CheckedRunnable<E> body) throws E { |
| 127 | + if (projectId.equals(ProjectId.DEFAULT)) { |
| 128 | + body.run(); |
| 129 | + } else { |
| 130 | + throw new IllegalArgumentException("Cannot execute on a project other than [" + ProjectId.DEFAULT + "]"); |
| 131 | + } |
| 132 | + } |
| 133 | + } |
116 | 134 | } |
0 commit comments