<dependency>
<groupId>org.osgi.enroute.executor</groupId>
<artifactId>org.osgi.enroute.executor.simple.provider</artifactId>
<version>1.0.0</version>
</dependency>
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
import org.osgi.service.enroute.executor.Executor;
@Component(service = MyTaskProvider.class)
public class MyTaskProvider {
@Reference
private Executor executor;
public void executeTask(Runnable task) {
executor.execute(task);
}
}
import org.osgi.service.component.annotations.Component;
import org.osgi.service.component.annotations.Reference;
@Component
public class MyComponent {
@Reference
private MyTaskProvider taskProvider;
public void doSomething() {
Runnable task = () -> {
};
taskProvider.executeTask(task);
}
}