ignite-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sboi...@apache.org
Subject [47/50] [abbrv] incubator-ignite git commit: #IGNITE-160 Fixing test compilation.
Date Thu, 05 Feb 2015 16:45:54 GMT
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridJobCheckpointCleanupSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridJobCheckpointCleanupSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridJobCheckpointCleanupSelfTest.java
index c9454ef..2c5e45d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridJobCheckpointCleanupSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridJobCheckpointCleanupSelfTest.java
@@ -38,13 +38,13 @@ public class GridJobCheckpointCleanupSelfTest extends GridCommonAbstractTest {
     private final AtomicInteger cntr = new AtomicInteger();
 
     /** Checkpoint. */
-    private CheckpointSpi checkpointSpi;
+    private CheckpointSpiConfiguration checkpointSpi;
 
     /** {@inheritDoc} */
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration c = super.getConfiguration(gridName);
 
-        c.setCheckpointSpi(checkpointSpi);
+        c.setCheckpointSpiConfiguration(checkpointSpi);
 
         return c;
     }
@@ -57,11 +57,11 @@ public class GridJobCheckpointCleanupSelfTest extends GridCommonAbstractTest {
      */
     public void testCheckpointCleanup() throws Exception {
         try {
-            checkpointSpi = new TestCheckpointSpi("task-checkpoints", cntr);
+            checkpointSpi = new TestCheckpointSpiConfiguration("task-checkpoints", cntr);
 
             Ignite taskIgnite = startGrid(0);
 
-            checkpointSpi = new TestCheckpointSpi("job-checkpoints", cntr);
+            checkpointSpi = new TestCheckpointSpiConfiguration("job-checkpoints", cntr);
 
             Ignite jobIgnite = startGrid(1);
 
@@ -75,21 +75,57 @@ public class GridJobCheckpointCleanupSelfTest extends GridCommonAbstractTest {
     }
 
     /**
+     *
+     */
+    public static class TestCheckpointSpiConfiguration implements CheckpointSpiConfiguration<TestCheckpointSpi> {
+        /** Counter. */
+        private final AtomicInteger cntr;
+
+        /** Name. */
+        private final String name;
+
+        /** */
+        public TestCheckpointSpiConfiguration(String name, AtomicInteger cntr) {
+            this.name = name;
+            this.cntr = cntr;
+        }
+
+        /** {@inheritDoc} */
+        @Override public Class<? extends TestCheckpointSpi> spiClass() {
+            return TestCheckpointSpi.class;
+        }
+
+        /**
+         *
+         */
+        public AtomicInteger getCntr() {
+            return cntr;
+        }
+
+        /**
+         *
+         */
+        public String getName() {
+            return name;
+        }
+    }
+
+    /**
      * Test checkpoint SPI.
      */
     @IgniteSpiMultipleInstancesSupport(true)
-    private static class TestCheckpointSpi extends IgniteSpiAdapter implements CheckpointSpi {
+    public static class TestCheckpointSpi extends IgniteSpiAdapter implements CheckpointSpi {
         /** Counter. */
         private final AtomicInteger cntr;
 
         /**
-         * @param name Name.
-         * @param cntr Counter.
+         *
          */
-        TestCheckpointSpi(String name, AtomicInteger cntr) {
-            setName(name);
+        public TestCheckpointSpi(TestCheckpointSpiConfiguration cfg) {
+            super(cfg);
 
-            this.cntr = cntr;
+            setName(cfg.getName());
+            this.cntr = cfg.getCntr();
         }
 
         /** {@inheritDoc} */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridJobCollisionCancelSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridJobCollisionCancelSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridJobCollisionCancelSelfTest.java
index f3e5339..ac97b6f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridJobCollisionCancelSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridJobCollisionCancelSelfTest.java
@@ -113,7 +113,7 @@ public class GridJobCollisionCancelSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration() throws Exception {
         IgniteConfiguration cfg = super.getConfiguration();
 
-        cfg.setCollisionSpi(new GridTestCollision());
+        cfg.setCollisionSpiConfiguration(new GridTestCollisionConfiguration());
 
         return cfg;
     }
@@ -225,6 +225,16 @@ public class GridJobCollisionCancelSelfTest extends GridCommonAbstractTest {
         }
     }
 
+    /**
+     * Test collision SPI configuration.
+     */
+    @IgniteSpiMultipleInstancesSupport(true)
+    public static class GridTestCollisionConfiguration implements CollisionSpiConfiguration<GridTestCollision> {
+        /** {@inheritDoc} */
+        @Override public Class<? extends GridTestCollision> spiClass() {
+            return GridTestCollision.class;
+        }
+    }
 
     /**
      * Test collision SPI.
@@ -235,6 +245,10 @@ public class GridJobCollisionCancelSelfTest extends GridCommonAbstractTest {
         @IgniteLoggerResource
         private IgniteLogger log;
 
+        public GridTestCollision(GridTestCollisionConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void onCollision(CollisionContext ctx) {
             Collection<CollisionJobContext> activeJobs = ctx.activeJobs();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridJobMasterLeaveAwareSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridJobMasterLeaveAwareSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridJobMasterLeaveAwareSelfTest.java
index d69d07a..c2d55ae 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridJobMasterLeaveAwareSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridJobMasterLeaveAwareSelfTest.java
@@ -742,6 +742,15 @@ public class GridJobMasterLeaveAwareSelfTest extends GridCommonAbstractTest {
         /** Wait latch. */
         private CountDownLatch waitLatch = new CountDownLatch(1);
 
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public CommunicationSpi(CommunicationSpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void sendMessage(ClusterNode node, GridTcpCommunicationMessageAdapter msg)
             throws IgniteSpiException {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingSelfTest.java
index 13f4910..a9e894d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingSelfTest.java
@@ -276,19 +276,19 @@ public class GridJobStealingSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        JobStealingCollisionSpi colSpi = new JobStealingCollisionSpi();
+        JobStealingCollisionSpiConfiguration colSpi = new JobStealingCollisionSpiConfiguration();
 
         // One job at a time.
         colSpi.setActiveJobsThreshold(1);
         colSpi.setWaitJobsThreshold(0);
 
-        JobStealingFailoverSpi failSpi = new JobStealingFailoverSpi();
+        JobStealingFailoverSpiConfiguration failSpi = new JobStealingFailoverSpiConfiguration();
 
         // Verify defaults.
         assert failSpi.getMaximumFailoverAttempts() == JobStealingFailoverSpi.DFLT_MAX_FAILOVER_ATTEMPTS;
 
-        cfg.setCollisionSpi(colSpi);
-        cfg.setFailoverSpi(failSpi);
+        cfg.setCollisionSpiConfiguration(colSpi);
+        cfg.setFailoverSpiConfiguration(failSpi);
 
         cfg.setMarshaller(new IgniteOptimizedMarshaller(false));
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingZeroActiveJobsSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingZeroActiveJobsSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingZeroActiveJobsSelfTest.java
index 3768476..a22a691 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingZeroActiveJobsSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridJobStealingZeroActiveJobsSelfTest.java
@@ -73,19 +73,19 @@ public class GridJobStealingZeroActiveJobsSelfTest extends GridCommonAbstractTes
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        JobStealingCollisionSpi colSpi = new JobStealingCollisionSpi();
+        JobStealingCollisionSpiConfiguration colSpi = new JobStealingCollisionSpiConfiguration();
 
         // One job at a time.
         colSpi.setActiveJobsThreshold(gridName.endsWith("1") ? 0 : 2);
         colSpi.setWaitJobsThreshold(0);
 
-        JobStealingFailoverSpi failSpi = new JobStealingFailoverSpi();
+        JobStealingFailoverSpiConfiguration failSpi = new JobStealingFailoverSpiConfiguration();
 
         // Verify defaults.
         assert failSpi.getMaximumFailoverAttempts() == JobStealingFailoverSpi.DFLT_MAX_FAILOVER_ATTEMPTS;
 
-        cfg.setCollisionSpi(colSpi);
-        cfg.setFailoverSpi(failSpi);
+        cfg.setCollisionSpiConfiguration(colSpi);
+        cfg.setFailoverSpiConfiguration(failSpi);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridManagementJobSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridManagementJobSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridManagementJobSelfTest.java
index b8c16db..a7f43fc 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridManagementJobSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridManagementJobSelfTest.java
@@ -47,7 +47,7 @@ public class GridManagementJobSelfTest extends GridCommonAbstractTest {
     private static final String TASK_NAME = "task";
 
     /** IP finder. */
-    private final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private final TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /**
      * Do not start grid initially.
@@ -60,11 +60,11 @@ public class GridManagementJobSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         ExecutorService mgmtExecutor = Executors.newFixedThreadPool(10, new ThreadFactory() {
             /** Counter for unique thread names. */

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleJobsSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleJobsSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleJobsSelfTest.java
index ceb9cd8..0f39d0f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleJobsSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleJobsSelfTest.java
@@ -47,7 +47,7 @@ public class GridMultipleJobsSelfTest extends GridCommonAbstractTest {
     private static final int TEST_TIMEOUT = 60 * 1000;
 
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** {@inheritDoc} */
     @Override protected void beforeTestsStarted() throws Exception {
@@ -74,11 +74,11 @@ public class GridMultipleJobsSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration c = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(ipFinder);
 
-        c.setDiscoverySpi(disco);
+        c.setDiscoverySpiConfiguration(disco);
 
         if (getTestGridName(1).equals(gridName))
             c.setCacheConfiguration(/* no configured caches */);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleSpisSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleSpisSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleSpisSelfTest.java
index f3c46fb..39fbd8d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleSpisSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridMultipleSpisSelfTest.java
@@ -69,27 +69,27 @@ public class GridMultipleSpisSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        GridTestFailoverSpi fail1 = new GridTestFailoverSpi("fail2");
-        GridTestFailoverSpi fail2 = new GridTestFailoverSpi("fail2");
+        GridTestFailoverSpiConfiguration fail1 = new GridTestFailoverSpiConfiguration("fail2");
+        GridTestFailoverSpiConfiguration fail2 = new GridTestFailoverSpiConfiguration("fail2");
 
         fail1.setName("fail1");
         fail2.setName("fail2");
 
-        GridTestLoadBalancingSpi load1 = new GridTestLoadBalancingSpi("load2");
-        GridTestLoadBalancingSpi load2 = new GridTestLoadBalancingSpi("load2");
+        GridTestLoadBalancingSpiConfiguration load1 = new GridTestLoadBalancingSpiConfiguration("load2");
+        GridTestLoadBalancingSpiConfiguration load2 = new GridTestLoadBalancingSpiConfiguration("load2");
 
         load1.setName("load1");
         load2.setName("load2");
 
-        GridTestCheckpointSpi cp1 = new GridTestCheckpointSpi("cp2");
-        GridTestCheckpointSpi cp2 = new GridTestCheckpointSpi("cp2");
+        GridTestCheckpointSpiConfiguration cp1 = new GridTestCheckpointSpiConfiguration("cp2");
+        GridTestCheckpointSpiConfiguration cp2 = new GridTestCheckpointSpiConfiguration("cp2");
 
         cp1.setName("cp1");
         cp2.setName("cp2");
 
-        cfg.setFailoverSpi(fail1, fail2);
-        cfg.setLoadBalancingSpi(load1, load2);
-        cfg.setCheckpointSpi(cp1, cp2);
+        cfg.setFailoverSpiConfiguration(fail1, fail2);
+        cfg.setLoadBalancingSpiConfiguration(load1, load2);
+        cfg.setCheckpointSpiConfiguration(cp1, cp2);
 
         return cfg;
     }
@@ -135,7 +135,39 @@ public class GridMultipleSpisSelfTest extends GridCommonAbstractTest {
     }
 
     /** */
-    private class GridTestFailoverSpi extends AlwaysFailoverSpi {
+    public class GridTestFailoverSpiConfiguration extends AlwaysFailoverSpiConfiguration {
+        /** */
+        private final String expName;
+
+        private String name;
+
+        /**
+         *
+         */
+        public GridTestFailoverSpiConfiguration(String expName) {
+            this.expName = expName;
+        }
+
+        /** {@inheritDoc} */
+        @Override public Class<? extends AlwaysFailoverSpi> spiClass() {
+            return GridTestFailoverSpi.class;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public String getName() {
+            return name;
+        }
+
+        public String getExpName() {
+            return expName;
+        }
+    }
+
+    /** */
+    public class GridTestFailoverSpi extends AlwaysFailoverSpi {
         /** */
         private String expName;
 
@@ -144,8 +176,16 @@ public class GridMultipleSpisSelfTest extends GridCommonAbstractTest {
          *
          * @param expName Name of the SPI expected to be called.
          */
-        GridTestFailoverSpi(String expName) {
-            this.expName = expName;
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public GridTestFailoverSpi(GridTestFailoverSpiConfiguration spiCfg) {
+            super(spiCfg);
+
+            expName = spiCfg.getExpName();
+            setName(spiCfg.getName());
         }
 
         /** {@inheritDoc} */
@@ -160,19 +200,58 @@ public class GridMultipleSpisSelfTest extends GridCommonAbstractTest {
     }
 
     /** */
-    private class GridTestLoadBalancingSpi extends RoundRobinLoadBalancingSpi {
+    public class GridTestLoadBalancingSpiConfiguration extends RoundRobinLoadBalancingSpiConfiguration {
         /** */
         private String expName;
 
+        /** */
+        private String name;
+
         /**
-         * Creates new load balancing SPI.
          *
-         * @param expName Name of the SPI expected to be called.
          */
-        GridTestLoadBalancingSpi(String expName) {
+        public GridTestLoadBalancingSpiConfiguration(String expName) {
             this.expName = expName;
         }
 
+        /**
+         *
+         */
+        public String getExpName() {
+            return expName;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public String getName() {
+            return name;
+        }
+
+        /** {@inheritDoc} */
+        @Override public Class<? extends RoundRobinLoadBalancingSpi> spiClass() {
+            return GridTestLoadBalancingSpi.class;
+        }
+    }
+
+    /** */
+    public class GridTestLoadBalancingSpi extends RoundRobinLoadBalancingSpi {
+        /** */
+        private String expName;
+
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public GridTestLoadBalancingSpi(GridTestLoadBalancingSpiConfiguration spiCfg) {
+            super(spiCfg);
+
+            this.expName = spiCfg.getExpName();
+            setName(spiCfg.getName());
+        }
+
         /** {@inheritDoc} */
         @Override public ClusterNode getBalancedNode(ComputeTaskSession ses, List<ClusterNode> top,
             ComputeJob job) {
@@ -186,20 +265,51 @@ public class GridMultipleSpisSelfTest extends GridCommonAbstractTest {
     }
 
     /** */
-    private class GridTestCheckpointSpi extends SharedFsCheckpointSpi {
+    public class GridTestCheckpointSpiConfiguration extends SharedFsCheckpointSpiConfiguration {
         /** */
         private String expName;
 
+        /** */
+        private String name;
+
         /**
-         * Creates new checkpoint SPI.
          *
-         * @param expName Name of the SPI expected to be called.
          */
-        GridTestCheckpointSpi(String expName) {
+        public GridTestCheckpointSpiConfiguration(String expName) {
             this.expName = expName;
         }
 
         /** {@inheritDoc} */
+        @Override public Class<? extends SharedFsCheckpointSpi> spiClass() {
+            return GridTestCheckpointSpi.class;
+        }
+
+        public String getExpName() {
+            return expName;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public String getName() {
+            return name;
+        }
+    }
+
+    /** */
+    public class GridTestCheckpointSpi extends SharedFsCheckpointSpi {
+        /** */
+        private String expName;
+
+        public GridTestCheckpointSpi(GridTestCheckpointSpiConfiguration spiCfg) {
+            super(spiCfg);
+
+            this.expName = spiCfg.getExpName();
+            setName(spiCfg.getName());
+        }
+
+        /** {@inheritDoc} */
         @Override public boolean saveCheckpoint(String key, byte[] state, long timeout,
             boolean overwrite) throws IgniteSpiException {
             if (getName().equals(expName))

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridMultithreadedJobStealingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridMultithreadedJobStealingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridMultithreadedJobStealingSelfTest.java
index 7de51ea..a4344ff 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridMultithreadedJobStealingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridMultithreadedJobStealingSelfTest.java
@@ -127,19 +127,19 @@ public class GridMultithreadedJobStealingSelfTest extends GridCommonAbstractTest
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        JobStealingCollisionSpi colSpi = new JobStealingCollisionSpi();
+        JobStealingCollisionSpiConfiguration colSpi = new JobStealingCollisionSpiConfiguration();
 
         // One job at a time.
         colSpi.setActiveJobsThreshold(1);
         colSpi.setWaitJobsThreshold(0);
 
-        JobStealingFailoverSpi failSpi = new JobStealingFailoverSpi();
+        JobStealingFailoverSpiConfiguration failSpi = new JobStealingFailoverSpiConfiguration();
 
         // Verify defaults.
         assert failSpi.getMaximumFailoverAttempts() == JobStealingFailoverSpi.DFLT_MAX_FAILOVER_ATTEMPTS;
 
-        cfg.setCollisionSpi(colSpi);
-        cfg.setFailoverSpi(failSpi);
+        cfg.setCollisionSpiConfiguration(colSpi);
+        cfg.setFailoverSpiConfiguration(failSpi);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridProjectionForCachesSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridProjectionForCachesSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridProjectionForCachesSelfTest.java
index 22dc618..fff6130 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridProjectionForCachesSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridProjectionForCachesSelfTest.java
@@ -38,7 +38,7 @@ import static org.apache.ignite.cache.CacheMode.*;
  */
 public class GridProjectionForCachesSelfTest extends GridCommonAbstractTest {
     /** */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** */
     private static final String CACHE_NAME = "cache";
@@ -50,7 +50,7 @@ public class GridProjectionForCachesSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        cfg.setDiscoverySpi(discoverySpi());
+        cfg.setDiscoverySpiConfiguration(discoverySpi());
 
         if (gridName.equals(getTestGridName(0)))
             cfg.setCacheConfiguration(cacheConfiguration(null, CacheDistributionMode.PARTITIONED_ONLY));
@@ -68,8 +68,8 @@ public class GridProjectionForCachesSelfTest extends GridCommonAbstractTest {
     /**
      * @return Discovery SPI;
      */
-    private DiscoverySpi discoverySpi() {
-        TcpDiscoverySpi spi = new TcpDiscoverySpi();
+    private DiscoverySpiConfiguration discoverySpi() {
+        TcpDiscoverySpiConfiguration spi = new TcpDiscoverySpiConfiguration();
 
         spi.setIpFinder(IP_FINDER);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridSpiExceptionSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridSpiExceptionSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridSpiExceptionSelfTest.java
index c17f7ce..bf56a12 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridSpiExceptionSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridSpiExceptionSelfTest.java
@@ -47,8 +47,8 @@ public class GridSpiExceptionSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        cfg.setEventStorageSpi(new GridTestRuntimeExceptionSpi());
-        cfg.setDeploymentSpi(new GridTestCheckedExceptionSpi());
+        cfg.setEventStorageSpiConfiguration(new GridTestRuntimeExceptionSpiConfiguration());
+        cfg.setDeploymentSpiConfiguration(new GridTestCheckedExceptionSpiConfiguration());
 
         // Disable cache since it can deploy some classes during start process.
         cfg.setCacheConfiguration();
@@ -93,10 +93,28 @@ public class GridSpiExceptionSelfTest extends GridCommonAbstractTest {
     }
 
     /**
+     *
+     */
+    public static class GridTestRuntimeExceptionSpiConfiguration
+        implements EventStorageSpiConfiguration<GridTestRuntimeExceptionSpi> {
+        /** {@inheritDoc} */
+        @Override public Class<? extends GridTestRuntimeExceptionSpi> spiClass() {
+            return GridTestRuntimeExceptionSpi.class;
+        }
+    }
+
+    /**
      * Test event storage spi that throws an exception on try to query local events.
      */
     @IgniteSpiMultipleInstancesSupport(true)
-    private static class GridTestRuntimeExceptionSpi extends IgniteSpiAdapter implements EventStorageSpi {
+    public static class GridTestRuntimeExceptionSpi extends IgniteSpiAdapter implements EventStorageSpi {
+        /**
+         *
+         */
+        public GridTestRuntimeExceptionSpi(GridTestRuntimeExceptionSpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void spiStart(String gridName) throws IgniteSpiException {
             startStopwatch();
@@ -119,10 +137,30 @@ public class GridSpiExceptionSelfTest extends GridCommonAbstractTest {
     }
 
     /**
+     *
+     */
+    public static class GridTestCheckedExceptionSpiConfiguration
+        implements DeploymentSpiConfiguration<GridTestCheckedExceptionSpi> {
+        /** {@inheritDoc} */
+        @Override public Class<? extends GridTestCheckedExceptionSpi> spiClass() {
+            return GridTestCheckedExceptionSpi.class;
+        }
+    }
+
+    /**
      * Test deployment spi that throws an exception on try to register any class.
      */
     @IgniteSpiMultipleInstancesSupport(true)
-    private static class GridTestCheckedExceptionSpi extends IgniteSpiAdapter implements DeploymentSpi {
+    public static class GridTestCheckedExceptionSpi extends IgniteSpiAdapter implements DeploymentSpi {
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public GridTestCheckedExceptionSpi(GridTestCheckedExceptionSpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void spiStart(@Nullable String gridName) throws IgniteSpiException {
             startStopwatch();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridTaskJobRejectSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridTaskJobRejectSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridTaskJobRejectSelfTest.java
index f5e0810..bfa011c 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridTaskJobRejectSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridTaskJobRejectSelfTest.java
@@ -55,11 +55,11 @@ public class GridTaskJobRejectSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        FifoQueueCollisionSpi collision = new FifoQueueCollisionSpi();
+        FifoQueueCollisionSpiConfiguration collision = new FifoQueueCollisionSpiConfiguration();
 
         collision.setParallelJobsNumber(1);
 
-        cfg.setCollisionSpi(collision);
+        cfg.setCollisionSpiConfiguration(collision);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridTaskMapAsyncSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridTaskMapAsyncSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridTaskMapAsyncSelfTest.java
index 6420353..d0f8768 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridTaskMapAsyncSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridTaskMapAsyncSelfTest.java
@@ -46,11 +46,11 @@ public class GridTaskMapAsyncSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration c = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
-        discoSpi.setIpFinder(new TcpDiscoveryVmIpFinder(true));
+        discoSpi.setIpFinder(new TcpDiscoveryVmIpFinderConfiguration(true));
 
-        c.setDiscoverySpi(discoSpi);
+        c.setDiscoverySpiConfiguration(discoSpi);
 
         return c;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/GridTopologyBuildVersionSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/GridTopologyBuildVersionSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/GridTopologyBuildVersionSelfTest.java
index 4021ef3..99a477e 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/GridTopologyBuildVersionSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/GridTopologyBuildVersionSelfTest.java
@@ -34,7 +34,7 @@ import java.util.concurrent.atomic.*;
  */
 public class GridTopologyBuildVersionSelfTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Counter. */
     private static final AtomicInteger cnt = new AtomicInteger();
@@ -47,27 +47,12 @@ public class GridTopologyBuildVersionSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        final int idx = cnt.incrementAndGet();
-
         // Override node attributes in discovery spi.
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi() {
-            @Override public void setNodeAttributes(Map<String, Object> attrs, IgniteProductVersion ver) {
-                super.setNodeAttributes(attrs, ver);
-
-                attrs.put(GridNodeAttributes.ATTR_BUILD_VER, idx + ".0.0" + "-ent");
-
-                if (idx < 3)
-                    attrs.remove(GridNodeAttributes.ATTR_BUILD_DATE);
-                else
-                    attrs.put(GridNodeAttributes.ATTR_BUILD_DATE, "1385099743");
-
-                attrs.put(GridNodeAttributes.ATTR_COMPATIBLE_VERS, COMPATIBLE_VERS);
-            }
-        };
+        TestTcpDiscoverySpiConfiguration discoSpi = new TestTcpDiscoverySpiConfiguration(cnt.incrementAndGet());
 
         discoSpi.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         return cfg;
     }
@@ -98,4 +83,63 @@ public class GridTopologyBuildVersionSelfTest extends GridCommonAbstractTest {
             stopAllGrids();
         }
     }
+
+
+    /**
+     *
+     */
+    public static class TestTcpDiscoverySpiConfiguration extends TcpDiscoverySpiConfiguration {
+        /** Index. */
+        private final int idx;
+
+        /**
+         *
+         */
+        public TestTcpDiscoverySpiConfiguration(int idx) {
+            this.idx = idx;
+        }
+
+        /**
+         *
+         */
+        public int getIdx() {
+            return idx;
+        }
+
+        /** {@inheritDoc} */
+        @Override public Class<? extends TcpDiscoverySpi> spiClass() {
+            return TestTcpDiscoverySpi.class;
+        }
+    }
+
+    /**
+     *
+     */
+    public static class TestTcpDiscoverySpi extends TcpDiscoverySpi {
+        /** */
+        private final int idx;
+
+        /**
+         *
+         */
+        public TestTcpDiscoverySpi(TestTcpDiscoverySpiConfiguration spiCfg){
+            super(spiCfg);
+
+            idx = spiCfg.getIdx();
+        }
+
+        /** {@inheritDoc} */
+        @Override public void setNodeAttributes(Map<String, Object> attrs, IgniteProductVersion ver) {
+            super.setNodeAttributes(attrs, ver);
+
+            attrs.put(GridNodeAttributes.ATTR_BUILD_VER, idx + ".0.0" + "-ent");
+
+            if (idx < 3)
+                attrs.remove(GridNodeAttributes.ATTR_BUILD_DATE);
+            else
+                attrs.put(GridNodeAttributes.ATTR_BUILD_DATE, "1385099743");
+
+            attrs.put(GridNodeAttributes.ATTR_COMPATIBLE_VERS, COMPATIBLE_VERS);
+        }
+    }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/IgniteComputeEmptyClusterGroupTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/IgniteComputeEmptyClusterGroupTest.java b/modules/core/src/test/java/org/apache/ignite/internal/IgniteComputeEmptyClusterGroupTest.java
index bdbdd86..a40df4b 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/IgniteComputeEmptyClusterGroupTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/IgniteComputeEmptyClusterGroupTest.java
@@ -40,17 +40,17 @@ import static org.apache.ignite.cache.CacheMode.*;
  */
 public class IgniteComputeEmptyClusterGroupTest extends GridCommonAbstractTest {
     /** */
-    private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** {@inheritDoc} */
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         cfg.setMarshaller(new IgniteOptimizedMarshaller(false));
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/GridManagerStopSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/GridManagerStopSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/GridManagerStopSelfTest.java
index 7521e37..c75de7a 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/GridManagerStopSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/GridManagerStopSelfTest.java
@@ -89,11 +89,11 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
      * @throws Exception If failed.
      */
     public void testStopCheckpointManager() throws Exception {
-        SharedFsCheckpointSpi spi = new SharedFsCheckpointSpi();
+        SharedFsCheckpointSpi spi = new SharedFsCheckpointSpi(new SharedFsCheckpointSpiConfiguration());
 
         injectLogger(spi);
 
-        ctx.config().setCheckpointSpi(spi);
+        //ctx.config().setCheckpointSpi(spi);
 
         GridCheckpointManager mgr = new GridCheckpointManager(ctx);
 
@@ -104,11 +104,11 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
      * @throws Exception If failed.
      */
     public void testStopCollisionManager() throws Exception {
-        CollisionSpi spi = new FifoQueueCollisionSpi();
+        CollisionSpi spi = new FifoQueueCollisionSpi(new FifoQueueCollisionSpiConfiguration());
 
         injectLogger(spi);
 
-        ctx.config().setCollisionSpi(spi);
+        //ctx.config().setCollisionSpi(spi);
 
         GridCollisionManager mgr = new GridCollisionManager(ctx);
 
@@ -123,7 +123,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setCommunicationSpi(spi);
+        //ctx.config().setCommunicationSpi(spi);
         ctx.config().setMarshaller(new IgniteOptimizedMarshaller());
 
         GridIoManager mgr = new GridIoManager(ctx);
@@ -141,7 +141,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setDeploymentSpi(spi);
+        //ctx.config().setDeploymentSpi(spi);
 
         GridDeploymentManager mgr = new GridDeploymentManager(ctx);
 
@@ -156,7 +156,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setDiscoverySpi(spi);
+        //ctx.config().setDiscoverySpi(spi);
 
         GridDiscoveryManager mgr = new GridDiscoveryManager(ctx);
 
@@ -171,7 +171,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setEventStorageSpi(spi);
+        //ctx.config().setEventStorageSpi(spi);
 
         GridEventStorageManager mgr = new GridEventStorageManager(ctx);
 
@@ -186,7 +186,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setFailoverSpi(spi);
+        //ctx.config().setFailoverSpi(spi);
 
         GridFailoverManager mgr = new GridFailoverManager(ctx);
 
@@ -201,7 +201,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setLoadBalancingSpi(spi);
+        //ctx.config().setLoadBalancingSpi(spi);
 
         GridLoadBalancerManager mgr = new GridLoadBalancerManager(ctx);
 
@@ -216,7 +216,7 @@ public class GridManagerStopSelfTest extends GridCommonAbstractTest {
 
         injectLogger(spi);
 
-        ctx.config().setSwapSpaceSpi(spi);
+        //ctx.config().setSwapSpaceSpi(spi);
 
         GridSwapSpaceManager mgr = new GridSwapSpaceManager(ctx);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/GridNoopManagerSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/GridNoopManagerSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/GridNoopManagerSelfTest.java
index dab197c..69779d8 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/GridNoopManagerSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/GridNoopManagerSelfTest.java
@@ -35,10 +35,12 @@ public class GridNoopManagerSelfTest extends GridCommonAbstractTest {
     public void testEnabledManager() {
         GridTestKernalContext ctx = new GridTestKernalContext(new GridStringLogger());
 
-        assertTrue(new Manager(ctx, new Spi()).enabled());
-        assertFalse(new Manager(ctx, new NoopSpi()).enabled());
-        assertTrue(new Manager(ctx, new Spi(), new NoopSpi()).enabled());
-        assertTrue(new Manager(ctx, new NoopSpi(), new Spi()).enabled());
+        assertTrue(new Manager(ctx, new Spi(new SpiConfiguration())).enabled());
+        assertFalse(new Manager(ctx, new NoopSpi(new NoopSpiConfiguration())).enabled());
+        assertTrue(new Manager(ctx, new Spi(new SpiConfiguration()),
+            new NoopSpi(new NoopSpiConfiguration())).enabled());
+        assertTrue(new Manager(ctx, new NoopSpi(new NoopSpiConfiguration()),
+            new Spi(new SpiConfiguration())).enabled());
     }
 
     /**
@@ -67,14 +69,33 @@ public class GridNoopManagerSelfTest extends GridCommonAbstractTest {
     /**
      *
      */
-    private static interface TestSpi extends IgniteSpi {
+    public static interface TestSpi extends IgniteSpi {
         // No-op.
     }
 
     /**
      *
      */
-    private static class Spi extends IgniteSpiAdapter implements TestSpi {
+    public static class SpiConfiguration implements IgniteSpiConfiguration<Spi> {
+        /** {@inheritDoc} */
+        @Override public Class<? extends Spi> spiClass() {
+            return Spi.class;
+        }
+    }
+
+    /**
+     *
+     */
+    public static class Spi extends IgniteSpiAdapter implements TestSpi {
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public Spi(SpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void spiStart(@Nullable String gridName) throws IgniteSpiException {
             // No-op.
@@ -89,8 +110,23 @@ public class GridNoopManagerSelfTest extends GridCommonAbstractTest {
     /**
      *
      */
+    public static class NoopSpiConfiguration extends SpiConfiguration {
+        /** {@inheritDoc} */
+        @Override public Class<? extends Spi> spiClass() {
+            return NoopSpi.class;
+        }
+    }
+
+    /**
+     *
+     */
     @IgniteSpiNoop
-    private static class NoopSpi extends Spi {
-        // No-op.
+    public static class NoopSpi extends Spi {
+        /**
+         *
+         */
+        public NoopSpi(NoopSpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
     }
 }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointTaskSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointTaskSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointTaskSelfTest.java
index 177982b..cef9796 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointTaskSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointTaskSelfTest.java
@@ -43,7 +43,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCheckpointTaskSelfTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Checkpoints cache name. */
     private static final String CACHE_NAME = "checkpoints.cache";
@@ -56,8 +56,8 @@ public class GridCheckpointTaskSelfTest extends GridCommonAbstractTest {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
         cfg.setCacheConfiguration(cacheConfiguration());
-        cfg.setCheckpointSpi(checkpointSpi());
-        cfg.setDiscoverySpi(discoverySpi());
+        cfg.setCheckpointSpiConfiguration(checkpointSpi());
+        cfg.setDiscoverySpiConfiguration(discoverySpi());
 
         return cfg;
     }
@@ -78,8 +78,8 @@ public class GridCheckpointTaskSelfTest extends GridCommonAbstractTest {
     /**
      * @return Checkpoint SPI.
      */
-    private CheckpointSpi checkpointSpi() {
-        CacheCheckpointSpi spi = new CacheCheckpointSpi();
+    private CheckpointSpiConfiguration checkpointSpi() {
+        CacheCheckpointSpiConfiguration spi = new CacheCheckpointSpiConfiguration();
 
         spi.setCacheName(CACHE_NAME);
 
@@ -89,8 +89,8 @@ public class GridCheckpointTaskSelfTest extends GridCommonAbstractTest {
     /**
      * @return Discovery SPI.
      */
-    private DiscoverySpi discoverySpi() {
-        TcpDiscoverySpi spi = new TcpDiscoverySpi();
+    private DiscoverySpiConfiguration discoverySpi() {
+        TcpDiscoverySpiConfiguration spi = new TcpDiscoverySpiConfiguration();
 
         spi.setIpFinder(IP_FINDER);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerSelfTest.java
index 1d29e2a..ba42cb4 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/communication/GridIoManagerSelfTest.java
@@ -56,7 +56,7 @@ public class GridIoManagerSelfTest extends GridCommonAbstractTest {
 
     /** {@inheritDoc} */
     @Override protected void beforeTest() throws Exception {
-        ctx.config().setCommunicationSpi(new TcpCommunicationSpi());
+        //ctx.config().setCommunicationSpi(new TcpCommunicationSpi());
         ctx.config().setMarshaller(new IgniteJdkMarshaller());
 
         // Turn off peer class loading to simplify mocking.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentManagerStopSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentManagerStopSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentManagerStopSelfTest.java
index b1a7b18..678a495 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentManagerStopSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentManagerStopSelfTest.java
@@ -41,7 +41,8 @@ public class GridDeploymentManagerStopSelfTest extends GridCommonAbstractTest {
         GridTestKernalContext ctx = newContext();
 
         ctx.config().setMarshaller(new IgniteJdkMarshaller());
-        ctx.config().setDeploymentSpi(spi);
+        //TODO: MMMUUUST
+        //ctx.config().setDeploymentSpi(spi);
 
         GridResourceProcessor resProc = new GridResourceProcessor(ctx);
         resProc.setSpringContext(null);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
index ec597a4..47436c1 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
@@ -192,6 +192,15 @@ public class GridDeploymentMessageCountSelfTest extends GridCommonAbstractTest {
         /** */
         private AtomicInteger msgCnt = new AtomicInteger();
 
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public MessageCountingCommunicationSpi(MessageCountingCommunicationSpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void sendMessage(ClusterNode node, GridTcpCommunicationMessageAdapter msg)
             throws IgniteSpiException {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAliveCacheSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAliveCacheSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAliveCacheSelfTest.java
index 8e61cc5..796aadb 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAliveCacheSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAliveCacheSelfTest.java
@@ -44,7 +44,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridDiscoveryManagerAliveCacheSelfTest extends GridCommonAbstractTest {
     /** */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** */
     private static final int PERM_NODES_CNT = 5;
@@ -88,12 +88,12 @@ public class GridDiscoveryManagerAliveCacheSelfTest extends GridCommonAbstractTe
         cCfg.setQueryIndexEnabled(false);
         cCfg.setWriteSynchronizationMode(FULL_SYNC);
 
-        TcpDiscoverySpi disc = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disc = new TcpDiscoverySpiConfiguration();
 
         disc.setIpFinder(IP_FINDER);
 
         cfg.setCacheConfiguration(cCfg);
-        cfg.setDiscoverySpi(disc);
+        cfg.setDiscoverySpiConfiguration(disc);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java
index e85e33f..9bca7d4 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java
@@ -34,7 +34,7 @@ public class GridDiscoveryManagerAttributesSelfTest extends GridCommonAbstractTe
     private static final String PREFER_IPV4 = "java.net.preferIPv4Stack";
 
     /** */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** */
     private static IgniteDeploymentMode mode = SHARED;
@@ -46,14 +46,14 @@ public class GridDiscoveryManagerAttributesSelfTest extends GridCommonAbstractTe
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi disc = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disc = new TcpDiscoverySpiConfiguration();
 
         disc.setIpFinder(IP_FINDER);
 
         cfg.setIncludeProperties(PREFER_IPV4);
         cfg.setDeploymentMode(mode);
         cfg.setPeerClassLoadingEnabled(p2pEnabled);
-        cfg.setDiscoverySpi(disc);
+        cfg.setDiscoverySpiConfiguration(disc);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/affinity/GridAffinityProcessorAbstractSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/affinity/GridAffinityProcessorAbstractSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/affinity/GridAffinityProcessorAbstractSelfTest.java
index 5d3877d..27bbbe9 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/affinity/GridAffinityProcessorAbstractSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/affinity/GridAffinityProcessorAbstractSelfTest.java
@@ -45,7 +45,7 @@ public abstract class GridAffinityProcessorAbstractSelfTest extends GridCommonAb
     private static final String CACHE_NAME = "cache";
 
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Flag to start grid with cache. */
     private boolean withCache;
@@ -54,11 +54,11 @@ public abstract class GridAffinityProcessorAbstractSelfTest extends GridCommonAb
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         if (withCache) {
             CacheConfiguration cacheCfg = defaultCacheConfiguration();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
index 248fe74..40faef8 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAffinityRoutingSelfTest.java
@@ -53,7 +53,7 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
     private static final int KEY_CNT = 50;
 
     /** */
-    private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /**
      * Constructs test.
@@ -66,11 +66,11 @@ public class GridCacheAffinityRoutingSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi spi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration spi = new TcpDiscoverySpiConfiguration();
 
         spi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(spi);
+        cfg.setDiscoverySpiConfiguration(spi);
 
         if (!gridName.equals(getTestGridName(GRID_CNT))) {
             // Default cache configuration.

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
index 0b23669..860d775 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheAtomicMessageCountSelfTest.java
@@ -43,7 +43,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest {
     /** VM ip finder for TCP discovery. */
-    private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Starting grid index. */
     private int idx;
@@ -58,11 +58,11 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         CacheConfiguration cCfg = new CacheConfiguration();
 
@@ -81,7 +81,7 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
 
         cfg.setCacheConfiguration(cCfg);
 
-        cfg.setCommunicationSpi(new TestCommunicationSpi());
+        cfg.setCommunicationSpiConfiguration(new TestCommunicationSpiConfiguration());
 
         return cfg;
     }
@@ -184,12 +184,31 @@ public class GridCacheAtomicMessageCountSelfTest extends GridCommonAbstractTest
     }
 
     /**
+     *
+     */
+    public static class TestCommunicationSpiConfiguration extends TcpCommunicationSpiConfiguration {
+        /** {@inheritDoc} */
+        @Override public Class<? extends TcpCommunicationSpi> spiClass() {
+            return TestCommunicationSpi.class;
+        }
+    }
+
+    /**
      * Test communication SPI.
      */
-    private static class TestCommunicationSpi extends TcpCommunicationSpi {
+    public static class TestCommunicationSpi extends TcpCommunicationSpi {
         /** Counters map. */
         private Map<Class<?>, AtomicInteger> cntMap = new HashMap<>();
 
+        /**
+         * Create SPI from configuration object.
+         *
+         * @param spiCfg SPI configuration.
+         */
+        public TestCommunicationSpi(TestCommunicationSpiConfiguration spiCfg) {
+            super(spiCfg);
+        }
+
         /** {@inheritDoc} */
         @Override public void sendMessage(ClusterNode node, GridTcpCommunicationMessageAdapter msg)
             throws IgniteSpiException {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheBasicStoreAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheBasicStoreAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheBasicStoreAbstractTest.java
index 7b1c7cc..f4fcc2f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheBasicStoreAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheBasicStoreAbstractTest.java
@@ -43,7 +43,7 @@ import static org.apache.ignite.transactions.IgniteTxIsolation.*;
  */
 public abstract class GridCacheBasicStoreAbstractTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Cache store. */
     private static final GridCacheTestStore store = new GridCacheTestStore();
@@ -75,11 +75,11 @@ public abstract class GridCacheBasicStoreAbstractTest extends GridCommonAbstract
     @Override protected final IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration c = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        c.setDiscoverySpi(disco);
+        c.setDiscoverySpiConfiguration(disco);
 
         CacheConfiguration cc = defaultCacheConfiguration();
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearAllSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearAllSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearAllSelfTest.java
index 3764fc5..aa51ca8 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearAllSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheClearAllSelfTest.java
@@ -54,7 +54,7 @@ public class GridCacheClearAllSelfTest extends GridCommonAbstractTest {
     private static final int GRID_CNT = 3;
 
     /** VM IP finder for TCP discovery SPI. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Local caches. */
     private GridCache<Integer, Integer>[] cachesLoc;
@@ -107,11 +107,11 @@ public class GridCacheClearAllSelfTest extends GridCommonAbstractTest {
 
         cfg.setCacheConfiguration(ccfgLoc, ccfgPartitioned, ccfgColocated, ccfgReplicated);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMapSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMapSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMapSelfTest.java
index a5518cd..7e78399 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMapSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentMapSelfTest.java
@@ -37,7 +37,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCacheConcurrentMapSelfTest extends GridCommonAbstractTest {
     /** Ip finder. */
-    private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** {@inheritDoc} */
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
@@ -49,11 +49,11 @@ public class GridCacheConcurrentMapSelfTest extends GridCommonAbstractTest {
         cc.setWriteSynchronizationMode(FULL_SYNC);
         cc.setStartSize(4);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         cfg.setCacheConfiguration(cc);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentTxMultiNodeTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentTxMultiNodeTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentTxMultiNodeTest.java
index caa7875..2b328ff 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentTxMultiNodeTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConcurrentTxMultiNodeTest.java
@@ -57,7 +57,7 @@ import static org.apache.ignite.transactions.IgniteTxIsolation.*;
  */
 public class GridCacheConcurrentTxMultiNodeTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Timers. */
     private static final ConcurrentMap<Thread, ConcurrentMap<String, T5<Long, Long, Long, IgniteUuid, Object>>> timers =
@@ -118,11 +118,11 @@ public class GridCacheConcurrentTxMultiNodeTest extends GridCommonAbstractTest {
         else
             c.setCacheConfiguration();
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(ipFinder);
 
-        c.setDiscoverySpi(disco);
+        c.setDiscoverySpiConfiguration(disco);
 
         c.setPeerClassLoadingEnabled(false);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationConsistencySelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationConsistencySelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationConsistencySelfTest.java
index d9527b3..985384d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationConsistencySelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationConsistencySelfTest.java
@@ -85,7 +85,7 @@ public class GridCacheConfigurationConsistencySelfTest extends GridCommonAbstrac
     private int backups;
 
     /** */
-    private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** {@inheritDoc} */
     @Override protected void afterTest() throws Exception {
@@ -101,11 +101,11 @@ public class GridCacheConfigurationConsistencySelfTest extends GridCommonAbstrac
             cfg.setGridLogger(strLog);
         }
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         cfg.setDeploymentMode(depMode);
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationValidationSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationValidationSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationValidationSelfTest.java
index 5f2f270..1fb56ca 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationValidationSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheConfigurationValidationSelfTest.java
@@ -59,7 +59,7 @@ public class GridCacheConfigurationValidationSelfTest extends GridCommonAbstract
     private static final String DUP_DFLT_CACHES_GRID_NAME = "duplicateDefaultCachesCheckFails";
 
     /** */
-    private static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    private static TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /**
      * Constructs test.
@@ -72,11 +72,11 @@ public class GridCacheConfigurationValidationSelfTest extends GridCommonAbstract
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi spi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration spi = new TcpDiscoverySpiConfiguration();
 
         spi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(spi);
+        cfg.setDiscoverySpiConfiguration(spi);
 
         // Default cache config.
         CacheConfiguration dfltCacheCfg = defaultCacheConfiguration();

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java
index a1fe573..295328c 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryMemorySizeSelfTest.java
@@ -43,7 +43,7 @@ import static org.apache.ignite.cache.CacheMode.*;
  */
 public class GridCacheEntryMemorySizeSelfTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Null reference size (optimized marshaller writes one byte for null reference). */
     private static final int NULL_REF_SIZE = 1;
@@ -115,11 +115,11 @@ public class GridCacheEntryMemorySizeSelfTest extends GridCommonAbstractTest {
 
         cfg.setCacheConfiguration(cacheCfg);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryVersionSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryVersionSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryVersionSelfTest.java
index 40ce6fb..59ef8e2 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryVersionSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheEntryVersionSelfTest.java
@@ -40,7 +40,7 @@ import static org.apache.ignite.internal.processors.cache.version.GridCacheVersi
  */
 public class GridCacheEntryVersionSelfTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Atomicity mode. */
     private CacheAtomicityMode atomicityMode;
@@ -49,7 +49,7 @@ public class GridCacheEntryVersionSelfTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(IP_FINDER);
 
@@ -63,7 +63,7 @@ public class GridCacheEntryVersionSelfTest extends GridCommonAbstractTest {
 
         cfg.setCacheConfiguration(ccfg);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheFieldsQueryNoDataSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheFieldsQueryNoDataSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheFieldsQueryNoDataSelfTest.java
index 037fcb8..bc5cb82 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheFieldsQueryNoDataSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheFieldsQueryNoDataSelfTest.java
@@ -35,7 +35,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCacheFieldsQueryNoDataSelfTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** {@inheritDoc} */
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
@@ -49,11 +49,11 @@ public class GridCacheFieldsQueryNoDataSelfTest extends GridCommonAbstractTest {
 
         cfg.setCacheConfiguration(cache);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGetAndTransformStoreAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGetAndTransformStoreAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGetAndTransformStoreAbstractTest.java
index 64cc3a6..0b9ec8b 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGetAndTransformStoreAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGetAndTransformStoreAbstractTest.java
@@ -42,7 +42,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public abstract class GridCacheGetAndTransformStoreAbstractTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Cache store. */
     private static final GridCacheTestStore store = new GridCacheTestStore();
@@ -74,11 +74,11 @@ public abstract class GridCacheGetAndTransformStoreAbstractTest extends GridComm
     @Override protected final IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration c = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        c.setDiscoverySpi(disco);
+        c.setDiscoverySpiConfiguration(disco);
 
         CacheConfiguration cc = defaultCacheConfiguration();
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGlobalClearAllSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGlobalClearAllSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGlobalClearAllSelfTest.java
index b72fb80..ee4f874 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGlobalClearAllSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheGlobalClearAllSelfTest.java
@@ -49,7 +49,7 @@ public class GridCacheGlobalClearAllSelfTest extends GridCommonAbstractTest {
     private static final String CACHE_NAME_OTHER = "cache_name_other";
 
     /** VM IP finder for TCP discovery SPI. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Cache name which will be passed to grid configuration. */
     private CacheMode cacheMode = PARTITIONED;
@@ -73,11 +73,11 @@ public class GridCacheGlobalClearAllSelfTest extends GridCommonAbstractTest {
 
         cfg.setCacheConfiguration(ccfg);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIncrementTransformTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIncrementTransformTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIncrementTransformTest.java
index e001f1f..e9e548d 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIncrementTransformTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIncrementTransformTest.java
@@ -44,7 +44,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCacheIncrementTransformTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Number of nodes to test on. */
     private static final int GRID_CNT = 4;
@@ -71,11 +71,11 @@ public class GridCacheIncrementTransformTest extends GridCommonAbstractTest {
 
         cfg.setCacheConfiguration(cache);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         return cfg;
     }

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIteratorPerformanceTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIteratorPerformanceTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIteratorPerformanceTest.java
index 684c346..8daeabd 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIteratorPerformanceTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheIteratorPerformanceTest.java
@@ -33,7 +33,7 @@ import static org.apache.ignite.cache.CacheMode.*;
  */
 public class GridCacheIteratorPerformanceTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Large entry count. */
     private static final int LARGE_ENTRY_CNT = 100000;
@@ -45,11 +45,11 @@ public class GridCacheIteratorPerformanceTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi disco = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration disco = new TcpDiscoverySpiConfiguration();
 
         disco.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(disco);
+        cfg.setDiscoverySpiConfiguration(disco);
 
         cfg.setCacheConfiguration(cacheConfiguration());
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheKeyCheckSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheKeyCheckSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheKeyCheckSelfTest.java
index d44c603..f0b12c4 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheKeyCheckSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheKeyCheckSelfTest.java
@@ -33,7 +33,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCacheKeyCheckSelfTest extends GridCacheAbstractSelfTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Atomicity mode. */
     private CacheAtomicityMode atomicityMode;
@@ -52,11 +52,11 @@ public class GridCacheKeyCheckSelfTest extends GridCacheAbstractSelfTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         cfg.setCacheConfiguration(cacheConfiguration());
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheLeakTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheLeakTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheLeakTest.java
index 8f1c3af..36c3b3f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheLeakTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheLeakTest.java
@@ -38,7 +38,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.*;
  */
 public class GridCacheLeakTest extends GridCommonAbstractTest {
     /** IP finder. */
-    private static final TcpDiscoveryIpFinder IP_FINDER = new TcpDiscoveryVmIpFinder(true);
+    private static final TcpDiscoveryIpFinderConfiguration IP_FINDER = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /** Cache name. */
     private static final String CACHE_NAME = "ggfs-data";
@@ -50,11 +50,11 @@ public class GridCacheLeakTest extends GridCommonAbstractTest {
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi discoSpi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration discoSpi = new TcpDiscoverySpiConfiguration();
 
         discoSpi.setIpFinder(IP_FINDER);
 
-        cfg.setDiscoverySpi(discoSpi);
+        cfg.setDiscoverySpiConfiguration(discoSpi);
 
         cfg.setCacheConfiguration(cacheConfiguration());
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6416777d/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMarshallerTxAbstractTest.java
----------------------------------------------------------------------
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMarshallerTxAbstractTest.java b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMarshallerTxAbstractTest.java
index 07be4b8..8935317 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMarshallerTxAbstractTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheMarshallerTxAbstractTest.java
@@ -56,7 +56,7 @@ public abstract class GridCacheMarshallerTxAbstractTest extends GridCommonAbstra
     }
 
     /** */
-    protected static TcpDiscoveryIpFinder ipFinder = new TcpDiscoveryVmIpFinder(true);
+    protected static TcpDiscoveryIpFinderConfiguration ipFinder = new TcpDiscoveryVmIpFinderConfiguration(true);
 
     /**
      * Constructs a test.
@@ -69,11 +69,11 @@ public abstract class GridCacheMarshallerTxAbstractTest extends GridCommonAbstra
     @Override protected IgniteConfiguration getConfiguration(String gridName) throws Exception {
         IgniteConfiguration cfg = super.getConfiguration(gridName);
 
-        TcpDiscoverySpi spi = new TcpDiscoverySpi();
+        TcpDiscoverySpiConfiguration spi = new TcpDiscoverySpiConfiguration();
 
         spi.setIpFinder(ipFinder);
 
-        cfg.setDiscoverySpi(spi);
+        cfg.setDiscoverySpiConfiguration(spi);
 
         return cfg;
     }


Mime
View raw message