mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-02 17:19:37 +00:00
Removed the deprecated function retrievers and adjusted the
DataMiningActivator and the tests
This commit is contained in:
1 parent
e31a0d6c95
commit
df43564aaa
13 files changed
+105
-364
No files matched your search
+13
-17
@@ -17,10 +17,7 @@ import com.sap.sse.datamining.factories.FunctionFactory;
|
||||
import com.sap.sse.datamining.functions.Function;
|
||||
import com.sap.sse.datamining.functions.FunctionProvider;
|
||||
import com.sap.sse.datamining.functions.FunctionRegistry;
|
||||
import com.sap.sse.datamining.functions.ParallelFunctionRetriever;
|
||||
import com.sap.sse.datamining.i18n.DataMiningStringMessages;
|
||||
import com.sap.sse.datamining.impl.functions.PartitionParallelExternalFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.PartitioningParallelMarkedFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.RegistryFunctionsProvider;
|
||||
import com.sap.sse.datamining.impl.functions.SimpleFunctionRegistry;
|
||||
import com.sap.sse.datamining.shared.dto.FunctionDTO;
|
||||
@@ -32,6 +29,7 @@ import com.sap.sse.datamining.test.function.test_classes.ExtendingInterface;
|
||||
import com.sap.sse.datamining.test.function.test_classes.ExternalLibraryClass;
|
||||
import com.sap.sse.datamining.test.function.test_classes.MarkedContainer;
|
||||
import com.sap.sse.datamining.test.function.test_classes.SimpleClassWithMarkedMethods;
|
||||
import com.sap.sse.datamining.test.util.ConcurrencyTestsUtil;
|
||||
import com.sap.sse.datamining.test.util.FunctionTestsUtil;
|
||||
import com.sap.sse.datamining.test.util.TestsUtil;
|
||||
|
||||
@@ -43,22 +41,20 @@ public class TestFunctionProvider {
|
||||
|
||||
@Before
|
||||
public void initializeFunctionRegistry() {
|
||||
functionRegistry = new SimpleFunctionRegistry();
|
||||
functionRegistry = new SimpleFunctionRegistry(ConcurrencyTestsUtil.getExecutor());
|
||||
|
||||
Collection<Class<?>> classesToScan = new HashSet<>();
|
||||
classesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
classesToScan.add(DataTypeWithContext.class);
|
||||
classesToScan.add(DataTypeWithContextProcessor.class);
|
||||
classesToScan.add(ExtendingInterface.class);
|
||||
classesToScan.add(MarkedContainer.class);
|
||||
classesToScan.add(ContainerElement.class);
|
||||
ParallelFunctionRetriever markedFunctionRetriever = new PartitioningParallelMarkedFunctionRetriever(classesToScan, FunctionTestsUtil.getExecutor());
|
||||
functionRegistry.registerFunctionsRetrievedBy(markedFunctionRetriever);
|
||||
Collection<Class<?>> internalClassesToScan = new HashSet<>();
|
||||
internalClassesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
internalClassesToScan.add(DataTypeWithContext.class);
|
||||
internalClassesToScan.add(DataTypeWithContextProcessor.class);
|
||||
internalClassesToScan.add(ExtendingInterface.class);
|
||||
internalClassesToScan.add(MarkedContainer.class);
|
||||
internalClassesToScan.add(ContainerElement.class);
|
||||
functionRegistry.registerAllWithInternalFunctionPolicy(internalClassesToScan);
|
||||
|
||||
Collection<Class<?>> externalClasses = new HashSet<>();
|
||||
externalClasses.add(ExternalLibraryClass.class);
|
||||
ParallelFunctionRetriever externalFunctionRetriever = new PartitionParallelExternalFunctionRetriever(externalClasses, FunctionTestsUtil.getExecutor());
|
||||
functionRegistry.registerFunctionsRetrievedBy(externalFunctionRetriever);
|
||||
Collection<Class<?>> externalClassesToScan = new HashSet<>();
|
||||
externalClassesToScan.add(ExternalLibraryClass.class);
|
||||
functionRegistry.registerAllWithExternalFunctionPolicy(externalClassesToScan);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
-84
@@ -1,84 +0,0 @@
|
||||
package com.sap.sse.datamining.impl.function;
|
||||
|
||||
import static org.hamcrest.Matchers.is;
|
||||
import static org.junit.Assert.assertThat;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
import java.util.concurrent.ExecutionException;
|
||||
|
||||
import org.junit.Test;
|
||||
|
||||
import com.sap.sse.datamining.functions.Function;
|
||||
import com.sap.sse.datamining.functions.ParallelFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.FunctionRetrievalWorker;
|
||||
import com.sap.sse.datamining.impl.functions.PartitioningParallelMarkedFunctionRetriever;
|
||||
import com.sap.sse.datamining.test.function.test_classes.ExternalLibraryClass;
|
||||
import com.sap.sse.datamining.test.function.test_classes.SimpleClassWithMarkedMethods;
|
||||
import com.sap.sse.datamining.test.util.FunctionTestsUtil;
|
||||
import com.sap.sse.datamining.test.util.OpenDataReceiver;
|
||||
|
||||
public class TestFunctionRetrievers {
|
||||
|
||||
@Test
|
||||
public void testMarkedFunctionRetrievalWorker() {
|
||||
Collection<Class<?>> classesToScan = new ArrayList<>();
|
||||
classesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
OpenDataReceiver<Collection<Function<?>>> receiver = new OpenDataReceiver<>();
|
||||
|
||||
FunctionRetrievalWorker worker = FunctionRetrievalWorker.Util.createMarkedFunctionRetrievalWorker(classesToScan, receiver);
|
||||
|
||||
Collection<Function<?>> expectedFunctions = FunctionTestsUtil.getMarkedMethodsOfSimpleClassWithMarkedMethod();
|
||||
worker.run();
|
||||
assertThat(receiver.result, is(expectedFunctions));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testExternalFunctionRetrievalWorker() {
|
||||
Collection<Class<?>> classesToScan = new ArrayList<>();
|
||||
classesToScan.add(ExternalLibraryClass.class);
|
||||
OpenDataReceiver<Collection<Function<?>>> receiver = new OpenDataReceiver<>();
|
||||
|
||||
FunctionRetrievalWorker worker = FunctionRetrievalWorker.Util.createExternalFunctionRetrievalWorker(classesToScan, receiver);
|
||||
|
||||
Collection<Function<?>> expectedFunctions = FunctionTestsUtil.getMethodsOfExternalLibraryClass();
|
||||
worker.run();
|
||||
assertThat(receiver.result, is(expectedFunctions));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFunctionRetrievalWithManyClassesToScan() {
|
||||
Collection<Class<?>> classesToScan = getManyClassesToScan();
|
||||
classesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
assertThat("Not enough classes to scan for this test.", classesToScan.size() >= getMaximumWorkerAmount(), is(true));
|
||||
|
||||
ParallelFunctionRetriever functionRetriever = new PartitioningParallelMarkedFunctionRetriever(classesToScan , FunctionTestsUtil.getExecutor());
|
||||
|
||||
Collection<Function<?>> expectedFunctions = FunctionTestsUtil.getMarkedMethodsOfSimpleClassWithMarkedMethod();
|
||||
try {
|
||||
Collection<Function<?>> retrievedFunctions = new HashSet<>(functionRetriever.start(null).get());
|
||||
assertThat(retrievedFunctions, is(expectedFunctions));
|
||||
} catch (InterruptedException | ExecutionException e) {
|
||||
fail("Error during the function retrieving");
|
||||
}
|
||||
}
|
||||
|
||||
private int getMaximumWorkerAmount() {
|
||||
return (int) (FunctionTestsUtil.getExecutor().getCorePoolSize() * 0.5);
|
||||
}
|
||||
|
||||
private Collection<Class<?>> getManyClassesToScan() {
|
||||
Collection<Class<?>> classesToScan = new ArrayList<>();
|
||||
classesToScan.add(Math.class);
|
||||
classesToScan.add(Integer.class);
|
||||
classesToScan.add(String.class);
|
||||
classesToScan.add(Double.class);
|
||||
classesToScan.add(Long.class);
|
||||
classesToScan.add(Float.class);
|
||||
classesToScan.add(ExternalLibraryClass.class);
|
||||
return classesToScan;
|
||||
}
|
||||
|
||||
}
|
||||
+10
-14
@@ -11,14 +11,12 @@ import org.junit.Test;
|
||||
|
||||
import com.sap.sse.datamining.functions.Function;
|
||||
import com.sap.sse.datamining.functions.FunctionRegistry;
|
||||
import com.sap.sse.datamining.functions.ParallelFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.PartitionParallelExternalFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.PartitioningParallelMarkedFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.SimpleFunctionRegistry;
|
||||
import com.sap.sse.datamining.test.function.test_classes.DataTypeWithContext;
|
||||
import com.sap.sse.datamining.test.function.test_classes.DataTypeWithContextProcessor;
|
||||
import com.sap.sse.datamining.test.function.test_classes.ExternalLibraryClass;
|
||||
import com.sap.sse.datamining.test.function.test_classes.SimpleClassWithMarkedMethods;
|
||||
import com.sap.sse.datamining.test.util.ConcurrencyTestsUtil;
|
||||
import com.sap.sse.datamining.test.util.FunctionTestsUtil;
|
||||
|
||||
public class TestSimpleFunctionRegistryAccess {
|
||||
@@ -27,19 +25,17 @@ public class TestSimpleFunctionRegistryAccess {
|
||||
|
||||
@Before
|
||||
public void initializeTheFunctionRegistry() {
|
||||
functionRegistry = new SimpleFunctionRegistry();
|
||||
functionRegistry = new SimpleFunctionRegistry(ConcurrencyTestsUtil.getExecutor());
|
||||
|
||||
Collection<Class<?>> classesToScan = new HashSet<>();
|
||||
classesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
classesToScan.add(DataTypeWithContext.class);
|
||||
classesToScan.add(DataTypeWithContextProcessor.class);
|
||||
ParallelFunctionRetriever markedFunctionRetriever = new PartitioningParallelMarkedFunctionRetriever(classesToScan, FunctionTestsUtil.getExecutor());
|
||||
functionRegistry.registerFunctionsRetrievedBy(markedFunctionRetriever);
|
||||
Collection<Class<?>> internalClassesToScan = new HashSet<>();
|
||||
internalClassesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
internalClassesToScan.add(DataTypeWithContext.class);
|
||||
internalClassesToScan.add(DataTypeWithContextProcessor.class);
|
||||
functionRegistry.registerAllWithInternalFunctionPolicy(internalClassesToScan);
|
||||
|
||||
Collection<Class<?>> externalClasses = new HashSet<>();
|
||||
externalClasses.add(ExternalLibraryClass.class);
|
||||
ParallelFunctionRetriever externalFunctionRetriever = new PartitionParallelExternalFunctionRetriever(externalClasses, FunctionTestsUtil.getExecutor());
|
||||
functionRegistry.registerFunctionsRetrievedBy(externalFunctionRetriever);
|
||||
Collection<Class<?>> externalClassesToScan = new HashSet<>();
|
||||
externalClassesToScan.add(ExternalLibraryClass.class);
|
||||
functionRegistry.registerAllWithExternalFunctionPolicy(externalClassesToScan);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
+12
-16
@@ -13,12 +13,10 @@ import org.junit.Test;
|
||||
import com.sap.sse.datamining.factories.FunctionFactory;
|
||||
import com.sap.sse.datamining.functions.Function;
|
||||
import com.sap.sse.datamining.functions.FunctionRegistry;
|
||||
import com.sap.sse.datamining.functions.ParallelFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.PartitionParallelExternalFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.PartitioningParallelMarkedFunctionRetriever;
|
||||
import com.sap.sse.datamining.impl.functions.SimpleFunctionRegistry;
|
||||
import com.sap.sse.datamining.test.function.test_classes.ExternalLibraryClass;
|
||||
import com.sap.sse.datamining.test.function.test_classes.SimpleClassWithMarkedMethods;
|
||||
import com.sap.sse.datamining.test.util.ConcurrencyTestsUtil;
|
||||
import com.sap.sse.datamining.test.util.FunctionTestsUtil;
|
||||
|
||||
public class TestSimpleFunctionRegistryRegistrations {
|
||||
@@ -27,7 +25,7 @@ public class TestSimpleFunctionRegistryRegistrations {
|
||||
public void testSimpleRegistration() {
|
||||
Method dimension = FunctionTestsUtil.getMethodFromSimpleClassWithMarkedMethod("dimension");
|
||||
|
||||
FunctionRegistry registry = new SimpleFunctionRegistry();
|
||||
FunctionRegistry registry = new SimpleFunctionRegistry(ConcurrencyTestsUtil.getExecutor());
|
||||
registry.register(dimension);
|
||||
|
||||
Set<Function<?>> expectedRegisteredFunctionsAsSet = new HashSet<>();
|
||||
@@ -39,8 +37,8 @@ public class TestSimpleFunctionRegistryRegistrations {
|
||||
|
||||
@Test
|
||||
public void testRegistrationByFunctionRetrievers() {
|
||||
FunctionRegistry registry = new SimpleFunctionRegistry();
|
||||
registerMethodsOfTestClassesViaFunctionRetrieversTo(registry);
|
||||
FunctionRegistry registry = new SimpleFunctionRegistry(ConcurrencyTestsUtil.getExecutor());
|
||||
registerMethodsOfTestClasses(registry);
|
||||
|
||||
Set<Function<?>> expectedRegisteredFunctionsAsSet = new HashSet<>();
|
||||
expectedRegisteredFunctionsAsSet.addAll(FunctionTestsUtil.getMarkedMethodsOfSimpleClassWithMarkedMethod());
|
||||
@@ -49,23 +47,21 @@ public class TestSimpleFunctionRegistryRegistrations {
|
||||
assertThat(registry.getAllFunctions(), is(expectedRegisteredFunctions));
|
||||
}
|
||||
|
||||
private void registerMethodsOfTestClassesViaFunctionRetrieversTo(FunctionRegistry registry) {
|
||||
Collection<Class<?>> classesToScan = new HashSet<>();
|
||||
classesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
ParallelFunctionRetriever markedFunctionRetriever = new PartitioningParallelMarkedFunctionRetriever(classesToScan, FunctionTestsUtil.getExecutor());
|
||||
registry.registerFunctionsRetrievedBy(markedFunctionRetriever);
|
||||
private void registerMethodsOfTestClasses(FunctionRegistry registry) {
|
||||
Collection<Class<?>> internalClassesToScan = new HashSet<>();
|
||||
internalClassesToScan.add(SimpleClassWithMarkedMethods.class);
|
||||
registry.registerAllWithInternalFunctionPolicy(internalClassesToScan);
|
||||
|
||||
Collection<Class<?>> externalClasses = new HashSet<>();
|
||||
externalClasses.add(ExternalLibraryClass.class);
|
||||
ParallelFunctionRetriever externalFunctionRetriever = new PartitionParallelExternalFunctionRetriever(externalClasses, FunctionTestsUtil.getExecutor());
|
||||
registry.registerFunctionsRetrievedBy(externalFunctionRetriever);
|
||||
Collection<Class<?>> externalClassesToScan = new HashSet<>();
|
||||
externalClassesToScan.add(ExternalLibraryClass.class);
|
||||
registry.registerAllWithExternalFunctionPolicy(externalClassesToScan);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testTheMultipleRegistrationOfTheSameFunction() {
|
||||
Method dimension = FunctionTestsUtil.getMethodFromSimpleClassWithMarkedMethod("dimension");
|
||||
|
||||
FunctionRegistry registry = new SimpleFunctionRegistry();
|
||||
FunctionRegistry registry = new SimpleFunctionRegistry(ConcurrencyTestsUtil.getExecutor());
|
||||
registry.register(dimension);
|
||||
registry.register(dimension);
|
||||
registry.register(dimension);
|
||||
|
||||
Reference in new issue
Block a user