question: @ SuppressWarnings ( "unchecked" ) public void testProjectionPredicateDifferentClassLoaders ( ) throws Exception { final Ignite ignite3 = startGrid ( 3 ) ; URL [ ] clsLdrUrls ; try { clsLdrUrls = new URL [ ] { new URL ( GridTestProperties . getProperty ( "p2p.uri.cls" ) ) } ; } catch ( MalformedURLException e ) { throw new RuntimeException ( "Define property p2p.uri.cls" , e ) ; } ClassLoader ldr1 = new URLClassLoader ( clsLdrUrls , getClass ( ) . getClassLoader ( ) ) ; Class taskCls = ldr1 . loadClass ( "org.apache.ignite.tests.p2p.JobStealingTask" ) ; Class nodeFilterCls = ldr1 . loadClass ( "org.apache.ignite.tests.p2p.ExcludeNodeFilter" ) ; IgnitePredicate < ClusterNode > nodeFilter = ( IgnitePredicate < ClusterNode > ) nodeFilterCls . getConstructor ( UUID . class ) . newInstance ( ignite2 . cluster ( ) . localNode ( ) . id ( ) ) ; Map < UUID , Integer > ret = ( Map < UUID , Integer > ) executeAsync ( compute ( ignite1 . cluster ( ) . forPredicate ( nodeFilter ) ) , taskCls , null ) . get ( TASK_EXEC_TIMEOUT_MS ) ; assert ret != null ; assert ret . get ( ignite1 . cluster ( ) . localNode ( ) . id ( ) ) != null && ret . get ( ignite1 . cluster ( ) . localNode ( ) . id ( ) ) == 2 : ret . get ( ignite1 . cluster ( ) . localNode ( ) . id ( ) ) ; assert ret . get ( ignite3 . cluster ( ) . localNode ( ) . id ( ) ) != null && ret . get ( ignite3 . cluster ( ) . localNode ( ) . id ( ) ) == 2 : ret . get ( ignite3 . cluster ( ) . localNode ( ) . id ( ) ) ; }
target:  Tests job stealing with peer deployment and different class loaders.