Skip to content

Commit ab441dd

Browse files
committed
refactor as per lib changes
Signed-off-by: Kaushal Kumar <[email protected]>
1 parent 5c6c4b2 commit ab441dd

File tree

6 files changed

+55
-268
lines changed

6 files changed

+55
-268
lines changed

plugins/workload-management/src/main/java/org/opensearch/plugin/wlm/AutoTaggingActionFilter.java

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@
1616
import org.opensearch.action.support.ActionFilterChain;
1717
import org.opensearch.core.action.ActionListener;
1818
import org.opensearch.core.action.ActionResponse;
19-
import org.opensearch.plugin.wlm.rule.InMemoryRuleProcessingService;
2019
import org.opensearch.plugin.wlm.rule.attribute_extractor.IndicesExtractor;
20+
import org.opensearch.rule.InMemoryRuleProcessingService;
2121
import org.opensearch.tasks.Task;
2222
import org.opensearch.threadpool.ThreadPool;
2323
import org.opensearch.wlm.QueryGroupTask;
@@ -29,13 +29,14 @@
2929
* This class is responsible to evaluate and assign the QUERY_GROUP_ID header in ThreadContext
3030
*/
3131
public class AutoTaggingActionFilter implements ActionFilter {
32-
private InMemoryRuleProcessingService ruleProcessingService;
32+
public static final int LARGE_NUMBER_TO_ENSURE_IT_IS_NOT_FIRST = Integer.MAX_VALUE;
33+
private final InMemoryRuleProcessingService ruleProcessingService;
3334
ThreadPool threadPool;
3435

3536
/**
3637
* Main constructor
37-
* @param ruleProcessingService
38-
* @param threadPool
38+
* @param ruleProcessingService provides access to in memory view of rules
39+
* @param threadPool to access assign the label
3940
*/
4041
public AutoTaggingActionFilter(InMemoryRuleProcessingService ruleProcessingService, ThreadPool threadPool) {
4142
this.ruleProcessingService = ruleProcessingService;
@@ -44,7 +45,7 @@ public AutoTaggingActionFilter(InMemoryRuleProcessingService ruleProcessingServi
4445

4546
@Override
4647
public int order() {
47-
return 101;
48+
return LARGE_NUMBER_TO_ENSURE_IT_IS_NOT_FIRST;
4849
}
4950

5051
@Override

plugins/workload-management/src/main/java/org/opensearch/plugin/wlm/WorkloadManagementPlugin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,13 @@
3636
import org.opensearch.plugin.wlm.rest.RestDeleteQueryGroupAction;
3737
import org.opensearch.plugin.wlm.rest.RestGetQueryGroupAction;
3838
import org.opensearch.plugin.wlm.rest.RestUpdateQueryGroupAction;
39-
import org.opensearch.plugin.wlm.rule.InMemoryRuleProcessingService;
4039
import org.opensearch.plugin.wlm.service.QueryGroupPersistenceService;
4140
import org.opensearch.plugins.ActionPlugin;
4241
import org.opensearch.plugins.Plugin;
4342
import org.opensearch.repositories.RepositoriesService;
4443
import org.opensearch.rest.RestController;
4544
import org.opensearch.rest.RestHandler;
45+
import org.opensearch.rule.InMemoryRuleProcessingService;
4646
import org.opensearch.script.ScriptService;
4747
import org.opensearch.threadpool.ThreadPool;
4848
import org.opensearch.transport.client.Client;
@@ -66,7 +66,7 @@ public WorkloadManagementPlugin() {}
6666

6767
@Override
6868
public Collection<Object> createComponents(Client client, ClusterService clusterService, ThreadPool threadPool, ResourceWatcherService resourceWatcherService, ScriptService scriptService, NamedXContentRegistry xContentRegistry, Environment environment, NodeEnvironment nodeEnvironment, NamedWriteableRegistry namedWriteableRegistry, IndexNameExpressionResolver indexNameExpressionResolver, Supplier<RepositoriesService> repositoriesServiceSupplier) {
69-
InMemoryRuleProcessingService ruleProcessingService = new InMemoryRuleProcessingService();
69+
InMemoryRuleProcessingService ruleProcessingService = new InMemoryRuleProcessingService(null, null);// TODO: this will change post Ruirui's PR
7070
autoTaggingActionFilter = new AutoTaggingActionFilter(ruleProcessingService, threadPool);
7171
return Collections.emptyList();
7272
}

plugins/workload-management/src/main/java/org/opensearch/plugin/wlm/rule/InMemoryRuleProcessingService.java

Lines changed: 0 additions & 125 deletions
This file was deleted.

plugins/workload-management/src/main/java/org/opensearch/plugin/wlm/rule/Rule.java

Lines changed: 0 additions & 105 deletions
This file was deleted.

plugins/workload-management/src/main/java/org/opensearch/plugin/wlm/rule/attribute_extractor/AttributeExtractor.java

Lines changed: 0 additions & 29 deletions
This file was deleted.

plugins/workload-management/src/test/java/org/opensearch/plugin/wlm/AutoTaggingActionFilterTests.java

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,20 @@
1010

1111
import org.opensearch.action.admin.cluster.node.tasks.cancel.CancelTasksRequest;
1212
import org.opensearch.action.search.SearchRequest;
13+
import org.opensearch.autotagging.Attribute;
14+
import org.opensearch.autotagging.FeatureType;
1315
import org.opensearch.common.util.concurrent.ThreadContext;
14-
import org.opensearch.plugin.wlm.rule.InMemoryRuleProcessingService;
16+
import org.opensearch.core.common.io.stream.StreamOutput;
17+
import org.opensearch.rule.InMemoryRuleProcessingService;
18+
import org.opensearch.rule.storage.DefaultAttributeValueStore;
1519
import org.opensearch.tasks.Task;
1620
import org.opensearch.test.OpenSearchTestCase;
1721
import org.opensearch.threadpool.TestThreadPool;
1822
import org.opensearch.threadpool.ThreadPool;
1923
import org.opensearch.wlm.QueryGroupTask;
2024

25+
import java.io.IOException;
26+
import java.util.Map;
2127
import java.util.Optional;
2228

2329
import static org.mockito.Mockito.anyList;
@@ -37,7 +43,7 @@ public class AutoTaggingActionFilterTests extends OpenSearchTestCase {
3743
public void setUp() throws Exception {
3844
super.setUp();
3945
threadPool = new TestThreadPool("AutoTaggingActionFilterTests");
40-
ruleProcessingService = spy(new InMemoryRuleProcessingService());
46+
ruleProcessingService = spy(new InMemoryRuleProcessingService(WLMFeatureType.WLM, DefaultAttributeValueStore::new));
4147
autoTaggingActionFilter = new AutoTaggingActionFilter(ruleProcessingService, threadPool);
4248
}
4349

@@ -79,4 +85,43 @@ public void testApplyForInValidRequest() {
7985

8086
verify(ruleProcessingService, times(0)).evaluateLabel(anyList());
8187
}
88+
89+
public enum WLMFeatureType implements FeatureType {
90+
WLM;
91+
92+
@Override
93+
public String getName() {
94+
return "";
95+
}
96+
97+
@Override
98+
public Map<String, Attribute> getAllowedAttributesRegistry() {
99+
return Map.of("test_attribute", TestAttribute.TEST_ATTRIBUTE);
100+
}
101+
102+
@Override
103+
public void registerFeatureType() {}
104+
}
105+
106+
public enum TestAttribute implements Attribute {
107+
TEST_ATTRIBUTE("test_attribute"),
108+
INVALID_ATTRIBUTE("invalid_attribute");
109+
110+
private final String name;
111+
112+
TestAttribute(String name) {
113+
this.name = name;
114+
}
115+
116+
@Override
117+
public String getName() {
118+
return name;
119+
}
120+
121+
@Override
122+
public void validateAttribute() {}
123+
124+
@Override
125+
public void writeTo(StreamOutput out) throws IOException {}
126+
}
82127
}

0 commit comments

Comments
 (0)