本文整理了Java中cyclops.reactive.ReactiveSeq.filter
方法的一些代码示例,展示了ReactiveSeq.filter
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ReactiveSeq.filter
方法的具体详情如下:
包路径:cyclops.reactive.ReactiveSeq
类名称:ReactiveSeq
方法名:filter
暂无
代码示例来源:origin: aol/micro-server
public ReactiveSeq<Tuple2<String,String>> extractResources() {
return resources.stream().peek(resource -> logMissingPath(resource))
.filter(resource-> resource.getClass().getAnnotation(Path.class)!=null)
.map(resource -> Tuple.tuple(resource.getClass().getName(),
resource.getClass().getAnnotation(Path.class).value()));
}
代码示例来源:origin: aol/micro-server
public SpringContextFactory(SpringBuilder builder, Config config, Class<?> c, Set<Class<?>> classes) {
PersistentSet<Class> s = config.getClasses();
for(Class next : classes){
s = s.plus(next);
}
s = s.plus(c);
Microserver microserver = c.getAnnotation(Microserver.class);
final PersistentSet<Class> immutableS = s;
s = Optional.ofNullable(microserver)
.flatMap(ms -> Optional.ofNullable(ms.blacklistedClasses()))
.map(bl -> {
Set<Class> blacklistedClasses = Arrays.stream(bl)
.collect(Collectors.toSet());
PersistentSet<Class> rs = immutableS.stream()
.filter(clazz -> !blacklistedClasses.contains(clazz))
.hashSet();
return rs;
})
.orElse(immutableS);
this.classes = s;
this.config = config;
springBuilder = builder;
}
代码示例来源:origin: aol/micro-server
default Map<String, Filter> getFilters(ServerData data) {
Map<String, Filter> map = new HashMap<>();
ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.filter(module -> module.filters() != null)
.map(module -> module.filters()
.apply(data))
.forEach(pluginMap -> map.putAll(pluginMap));
return MapX.fromMap(map);
}
代码示例来源:origin: aol/micro-server
default List<String> getDefaultJaxRsPackages() {
return PluginLoader.INSTANCE.plugins.get()
.stream()
.filter(module -> module.servletContextListeners() != null)
.concatMap(Plugin::jaxRsPackages)
.to(ListX::fromIterable);
}
代码示例来源:origin: aol/micro-server
default List<ServletRequestListener> getRequestListeners(ServerData data) {
return PluginLoader.INSTANCE.plugins.get()
.stream()
.filter(module -> module.servletRequestListeners() != null)
.concatMap(Plugin::servletRequestListeners)
.map(fn -> fn.apply(data))
.to(ListX::fromIterable);
}
代码示例来源:origin: aol/micro-server
default Map<String, Servlet> getServlets(ServerData data) {
Map<String, Servlet> map = new HashMap<>();
ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.filter(module -> module.servlets() != null)
.map(module -> module.servlets()
.apply(data))
.forEach(pluginMap -> map.putAll(pluginMap));
return MapX.fromMap(map);
}
代码示例来源:origin: aol/micro-server
public SpringContextFactory(Config config, Class<?> c, Set<Class<?>> classes) {
PersistentSet<Class> s = config.getClasses()
.plusAll(classes);
s= s.plus(c);
Microserver microserver = c.getAnnotation(Microserver.class);
final PersistentSet<Class> immutableS = s;
s = Optional.ofNullable(microserver)
.flatMap(ms -> Optional.ofNullable(ms.blacklistedClasses()))
.map(bl -> {
Set<Class> blacklistedClasses = Arrays.stream(bl)
.collect(Collectors.toSet());
return (PersistentSet<Class>)immutableS.stream()
.filter(clazz -> !blacklistedClasses.contains(clazz)).hashSet();
})
.orElse(immutableS);
this.classes = s;
this.config = config;
springBuilder = ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.filter(m -> m.springBuilder() != null)
.map(Plugin::springBuilder)
.findFirst()
.orElse(new SpringApplicationConfigurator());
}
代码示例来源:origin: aol/micro-server
public static Optional<RegisterEntry> toRegisterEntry(UriInfo uriInfo) {
if (uriInfo.getQueryParameters().isEmpty()) {
return Optional.empty();
} else {
MultivaluedMap<String, String> parameters = uriInfo.getQueryParameters();
RegisterEntry re = RegisterEntry.builder()
.context(parameters.getFirst("context"))
.hostname(parameters.getFirst("hostname"))
.port(toInt(parameters.getFirst("port")))
.target(parameters.getFirst("target"))
.externalPort(toInt(parameters.getFirst("externalPort")))
.module(parameters.getFirst("module"))
.health(toHealth(parameters.getFirst("health")))
.build();
Map<String, String> manifest = ReactiveSeq.fromIterable(parameters.entrySet())
.filter(e -> e.getKey().startsWith("manifest."))
.toMap(e -> e.getKey().replace("manifest.", ""),
e -> parameters.getFirst(e.getKey()));
re.getManifest().clear();
re.getManifest().putAll(manifest);
return Optional.of(re);
}
}
代码示例来源:origin: aol/micro-server
default String getProviders() {
String additional = ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.peek(System.out::println)
.filter(module -> module.providers() != null)
.concatMap(Plugin::providers)
.join(",");
if (StringUtils.isEmpty(additional))
return "com.oath.micro.server.rest.providers";
return "com.oath.micro.server.rest.providers," + additional;
}
代码示例来源:origin: aol/micro-server
private ReactiveSeq<SystemData<String, String>> create(DataLoader dl) {
return ReactiveSeq.generate(() -> 1)
.filter(in -> condition.shouldLoad())
.map(in -> dl.scheduleAndLog())
.peek(sd -> bus.post(sd));
}
}
代码示例来源:origin: aol/micro-server
default List<ServletContextListener> getListeners(ServerData data) {
List<ServletContextListener> list = new ArrayList<>();
if (data.getRootContext() instanceof WebApplicationContext) {
list.add(new ContextLoaderListener(
(WebApplicationContext) data.getRootContext()));
}
ListX<Plugin> modules = PluginLoader.INSTANCE.plugins.get();
ListX<ServletContextListener> listeners = modules.stream()
.filter(module -> module.servletContextListeners() != null)
.concatMap(Plugin::servletContextListeners)
.map(fn -> fn.apply(data))
.to(ListX::fromIterable);
return listeners.plusAll(list);
}
代码示例来源:origin: aol/micro-server
private ServerApplication createServer(Module module) {
List<ServerApplicationFactory> applications = ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.filter(m -> m.serverApplicationFactory() != null)
.map(Plugin::serverApplicationFactory)
.flatMap(Streams::optionalToStream)
.toList();
if (applications.size() > 1) {
logger.error("ERROR! Multiple server application factories found : The solution is remove one these plugins from your classpath ",
applications);
System.err.println("ERROR! Multiple server application factories found : The solution is remove one these plugins from your classpath "
+ applications);
throw new IncorrectNumberOfServersConfiguredException(
"Multiple server application factories found : The solution is remove one these plugins from your classpath "
+ applications);
} else if (applications.size() == 0) {
logger.error("ERROR! No server application factories found. If you using micro-spring-boot don't call MicroserverApp.start() method. A possible solution is add one of micro-grizzly or micro-tomcat to the classpath.");
System.err.println("ERROR! No server application factories found. If you using micro-spring-boot don't call MicroserverApp.start() method. A possible solution is add one of micro-grizzly or micro-tomcat to the classpath.");
throw new IncorrectNumberOfServersConfiguredException(
"No server application factories found. If you using micro-spring-boot don't call MicroserverApp.start() method. A possible solution is add one of micro-grizzly or micro-tomcat to the classpath. ");
}
ServerApplication app = applications.get(0)
.createApp(module, springContext);
return app;
}
代码示例来源:origin: aol/micro-server
default String getJaxWsRsApplication() {
List<String> jaxRsApplications = ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.filter(module -> module.jaxWsRsApplication() != null)
.map(Plugin::jaxWsRsApplication)
.flatMap(Streams::optionalToStream)
.toList();
if (jaxRsApplications.size() > 1) {
throw new IncorrectJaxRsPluginsException(
"ERROR! Multiple jax-rs application plugins found, a possible solution is to remove micro-jackson or other jax-rs application provider from your classpath. "
+ jaxRsApplications);
} else if (jaxRsApplications.size() == 0) {
throw new IncorrectJaxRsPluginsException(
"ERROR! No jax-rs application plugins found, a possible solution is to add micro-jackson to your classpath. ");
}
return jaxRsApplications.get(0);
}
代码示例来源:origin: aol/micro-server
public void schedule() {
cleaner.forEach(cl -> {
ReactiveSeq.generate(() -> 1)
.filter(in -> condition.shouldClean())
.map(i -> cl.scheduleAndLog())
.peek(sd -> bus.post(sd))
.schedule(cl.getCron(), executor);
});
}
}
代码示例来源:origin: aol/micro-server
private List<SpringDBConfig> getConfig(Config config, AnnotationConfigWebApplicationContext rootContext,
ConfigurableListableBeanFactory beanFactory) {
List<SpringDBConfig> result = ReactiveSeq.fromStream(PluginLoader.INSTANCE.plugins.get()
.stream())
.filter(module -> module.springDbConfigurer() != null)
.map(Plugin::springDbConfigurer)
.flatMap(Streams::optionalToStream)
.toList();
result.forEach(next -> {
next.setBeanFactory(beanFactory);
next.setRootContext(rootContext);
next.setConfig(config);
});
return result;
}
代码示例来源:origin: aol/micro-server
@Override
public ConfigurableApplicationContext createSpringApp(Config config, Class... classes) {
logger.debug("Configuring Spring");
AnnotationConfigWebApplicationContext rootContext = new AnnotationConfigWebApplicationContext();
rootContext.setAllowCircularReferences(config.isAllowCircularReferences());
rootContext.register(classes);
rootContext.scan(config.getBasePackages());
rootContext.refresh();
logger.debug("Configuring Additional Spring Beans");
ConfigurableListableBeanFactory beanFactory = ((ConfigurableApplicationContext) rootContext).getBeanFactory();
config.getDataSources()
.stream()
.map(Tuple2::_1)
.filter(it -> !new ConfigAccessor().get()
.getDefaultDataSourceName()
.equals(it))
.forEach(name -> {
List<SpringDBConfig> dbConfig = getConfig(config, rootContext, beanFactory);
dbConfig.forEach(spring -> spring.createSpringApp(name));
});
logger.debug("Finished Configuring Spring");
return rootContext;
}
代码示例来源:origin: aol/micro-server
@Test
public void testProviders(){
System.out.println(ConfigurableModule.builder().build().getProviders());
//test MyPlugin working
System.out.println(new ModuleImpl().getProviders());
String additional = ReactiveSeq
.fromStream(
Arrays.<Plugin>asList(new TestPlugin())
.stream()).filter(module -> module.providers()!=null)
.concatMap(Plugin::providers)
.join(",");
assertThat(additional, equalTo(""));
}
static class ModuleImpl implements Module{
代码示例来源:origin: aol/micro-server
@Test
public void testProviders(){
//test MyPlugin working
assertThat("com.oath.micro.server.rest.providers,com.my.new.provider,com.my.new.provider2",
equalTo(ConfigurableModule.builder().build().getProviders()));
System.out.println(new ModuleImpl().getProviders());
String additional = ReactiveSeq
.fromStream(
Arrays.asList(new MyPlugin())
.stream()).filter(module -> module.providers()!=null)
.concatMap(Plugin::providers)
.join(",");
assertThat(additional, equalTo("com.my.new.provider,com.my.new.provider2"));
}
代码示例来源:origin: aol/micro-server
.filter(module -> module.restServletConfiguration() != null)
.map(Plugin::restServletConfiguration)
.flatMap(Streams::optionalToStream)
代码示例来源:origin: aol/cyclops
@Override
public Tuple2<ReactiveSeq<T>, ReactiveSeq<T>> partition(final Predicate<? super T> splitter) {
final Tuple2<ReactiveSeq<T>, ReactiveSeq<T>> Tuple2 = duplicate();
return Tuple.tuple(
Tuple2._1().filter(splitter), Tuple2._2().filter(splitter.negate()));
}
@Override
内容来源于网络,如有侵权,请联系作者删除!