We can build project using java 8 partially for java 7 and partially for java 8 (target bytecode version).
I guess for end user it will be something like 2 artifacts to be dependent from - group: 'org.apache.ignite', name: 'ignite-core', version: '2.3' - group: 'org.apache.ignite', name: 'ignite-core8', version: '2.3' Am I right? But what will we do with ignite-core8 when we support Java8 in the long run пт, 1 сент. 2017 г. в 13:35, Dmitriy Setrakyan <[email protected]>: > On Thu, Aug 31, 2017 at 3:39 PM, Vladimir Ozerov <[email protected]> > wrote: > > > There is no need to migrate to Java 8 to support CompletableFuture. > Create > > separate Maven project and compile it with Java 8 - this is it. > > > > Vova, I am not sure I understand. How will it be released? > > > > > > On Thu, Aug 31, 2017 at 3:28 PM, Dmitry Pavlov <[email protected]> > > wrote: > > > > > +1 for migrating to java 8. > > > > > > Sincerely, > > > Dmitriy Pavlov > > > > > > > > > On чт, 31 авг. 2017 г., 11:03 Yakov Zhdanov <[email protected]> > wrote: > > > > > > > CompletableFuture is part of java 8. > > > > > > > > --Yakov > > > > > > > > 2017-08-31 4:46 GMT+03:00 Dmitriy Setrakyan <[email protected]>: > > > > > > > > > Igniters, > > > > > > > > > > I received the following proposal in my blog. I think this is > useful. > > > Any > > > > > thoughts? > > > > > > > > > > Please extend IgniteFuture by conversion method to > > CompletableFuture. I > > > > > > bored to write something like this: > > > > > > > > > > > > > > > > asyncCache.invoke(key, entryProcessor); > > > > > > CompletableFuture completableFuture = new CompletableFuture<>(); > > > > > > IgniteFuture igniteFuture = asyncCache.future(); > > > > > > IgniteInClosure> listener = (IgniteInClosure>) > > completedIgniteFuture > > > > -> { > > > > > > Throwable exception = null; > > > > > > T result = null; > > > > > > try { > > > > > > result = completedIgniteFuture.get(); > > > > > > } catch (Throwable t) { > > > > > > exception = t; > > > > > > } > > > > > > if (exception != null) { > > > > > > completableFuture.completeExceptionally(exception); > > > > > > } else { > > > > > > completableFuture.complete(result); > > > > > > } > > > > > > }; > > > > > > igniteFuture.listen(listener); > > > > > > return completableFuture; > > > > > > > > > > > > > > >
