# IGNITE-187 Fixes for spi start.

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/6554e9a5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/6554e9a5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/6554e9a5

Branch: refs/heads/sprint-2
Commit: 6554e9a5dd53c10c3bfecacefdab66ad83778990
Parents: 44b5c4e
Author: AKuznetsov <akuznet...@gridgain.com>
Authored: Wed Mar 4 16:04:47 2015 +0700
Committer: AKuznetsov <akuznet...@gridgain.com>
Committed: Wed Mar 4 16:04:47 2015 +0700

----------------------------------------------------------------------
 .../internal/managers/GridManagerAdapter.java   | 21 +++++++++++++++-----
 .../checkpoint/GridCheckpointManager.java       |  5 ++++-
 .../collision/GridCollisionManager.java         |  5 ++++-
 .../discovery/GridDiscoveryManager.java         |  1 -
 .../managers/indexing/GridIndexingManager.java  |  5 ++++-
 .../swapspace/GridSwapSpaceManager.java         |  5 ++++-
 6 files changed, 32 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6554e9a5/modules/core/src/main/java/org/apache/ignite/internal/managers/GridManagerAdapter.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/GridManagerAdapter.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/GridManagerAdapter.java
index 7c692e3..2a0aaec 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/GridManagerAdapter.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/GridManagerAdapter.java
@@ -161,20 +161,31 @@ public abstract class GridManagerAdapter<T extends 
IgniteSpi> implements GridMan
     }
 
     /**
-     * Starts wrapped SPI.
+     * Inject resources into wrapped SPI.
      *
-     * @throws IgniteCheckedException If wrapped SPI could not be started.
+     * @throws IgniteCheckedException If injection failed.
      */
-    protected final void startSpi() throws IgniteCheckedException {
-        Collection<String> names = U.newHashSet(spis.length);
-
+    protected final void injectSpi() throws IgniteCheckedException {
         for (T spi : spis) {
             // Inject all spi resources.
             ctx.resource().inject(spi);
 
             // Inject SPI internal objects.
             inject(spi);
+        }
+    }
+
+    /**
+     * Starts wrapped SPI.
+     *
+     * @throws IgniteCheckedException If wrapped SPI could not be started.
+     */
+    protected final void startSpi() throws IgniteCheckedException {
+        Collection<String> names = U.newHashSet(spis.length);
 
+        injectSpi();
+
+        for (T spi : spis) {
             try {
                 Map<String, Object> retval = spi.getNodeAttributes();
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6554e9a5/modules/core/src/main/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointManager.java
index 291930b..bcaa70a 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/checkpoint/GridCheckpointManager.java
@@ -75,8 +75,11 @@ public class GridCheckpointManager extends 
GridManagerAdapter<CheckpointSpi> {
 
     /** {@inheritDoc} */
     @Override public void start() throws IgniteCheckedException {
-        if (ctx.config().isDaemon())
+        if (ctx.config().isDaemon()) {
+            injectSpi();
+
             return;
+        }
 
         for (CheckpointSpi spi : getSpis()) {
             spi.setCheckpointListener(new CheckpointListener() {

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6554e9a5/modules/core/src/main/java/org/apache/ignite/internal/managers/collision/GridCollisionManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/collision/GridCollisionManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/collision/GridCollisionManager.java
index 2f00fb7..e38617a 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/collision/GridCollisionManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/collision/GridCollisionManager.java
@@ -44,8 +44,11 @@ public class GridCollisionManager extends 
GridManagerAdapter<CollisionSpi> {
 
     /** {@inheritDoc} */
     @Override public void start() throws IgniteCheckedException {
-        if (ctx.config().isDaemon())
+        if (ctx.config().isDaemon()) {
+            injectSpi();
+
             return;
+        }
 
         startSpi();
 

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6554e9a5/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
index bfa4fae..e7020c1 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java
@@ -53,7 +53,6 @@ import java.util.zip.*;
 import static java.util.concurrent.TimeUnit.*;
 import static org.apache.ignite.events.EventType.*;
 import static org.apache.ignite.internal.IgniteNodeAttributes.*;
-import static org.apache.ignite.internal.IgniteVersionUtils.*;
 import static org.apache.ignite.plugin.segmentation.GridSegmentationPolicy.*;
 
 /**

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6554e9a5/modules/core/src/main/java/org/apache/ignite/internal/managers/indexing/GridIndexingManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/indexing/GridIndexingManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/indexing/GridIndexingManager.java
index 3fe7839..5e734a2 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/indexing/GridIndexingManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/indexing/GridIndexingManager.java
@@ -45,8 +45,11 @@ public class GridIndexingManager extends 
GridManagerAdapter<IndexingSpi> {
      * @throws IgniteCheckedException Thrown in case of any errors.
      */
     @Override public void start() throws IgniteCheckedException {
-        if (ctx.config().isDaemon())
+        if (ctx.config().isDaemon()) {
+            injectSpi();
+
             return;
+        }
 
         if (!enabled())
             U.warn(log, "Indexing is disabled (to enable please configure 
GridIndexingSpi).");

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6554e9a5/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
index ef999d7..2b7fbeb 100644
--- 
a/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
+++ 
b/modules/core/src/main/java/org/apache/ignite/internal/managers/swapspace/GridSwapSpaceManager.java
@@ -50,8 +50,11 @@ public class GridSwapSpaceManager extends 
GridManagerAdapter<SwapSpaceSpi> {
 
     /** {@inheritDoc} */
     @Override public void start() throws IgniteCheckedException {
-        if (ctx.config().isDaemon())
+        if (ctx.config().isDaemon()) {
+            injectSpi();
+
             return;
+        }
 
         getSpi().setListener(new SwapSpaceSpiListener() {
             @Override public void onSwapEvent(int evtType, @Nullable String 
spaceName, @Nullable byte[] keyBytes) {

Reply via email to