You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by sb...@apache.org on 2015/03/02 15:06:24 UTC
[13/31] incubator-ignite git commit: #ignite-239: small refactoring.
#ignite-239: small refactoring.
Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/6fa46c37
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/6fa46c37
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/6fa46c37
Branch: refs/heads/sprint-2
Commit: 6fa46c37b4b691ba90232dbf823593ebdd89da9f
Parents: c1b4ad7
Author: ivasilinets <iv...@gridgain.com>
Authored: Fri Feb 20 18:33:44 2015 +0300
Committer: ivasilinets <iv...@gridgain.com>
Committed: Fri Feb 20 18:33:44 2015 +0300
----------------------------------------------------------------------
.../org/apache/ignite/internal/IgnitionEx.java | 187 +++++++++----------
1 file changed, 91 insertions(+), 96 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/6fa46c37/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
index 9c196f4..8e1e110 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/IgnitionEx.java
@@ -1488,7 +1488,95 @@ public class IgnitionEx {
"on start?) [segPlc=" + segPlc + ", wait=false]");
}
- copySpis(cfg, myCfg, startCtx.single());
+ /*
+ * Initialize default SPI implementations.
+ */
+ CommunicationSpi commSpi = cfg.getCommunicationSpi();
+ DiscoverySpi discoSpi = cfg.getDiscoverySpi();
+ EventStorageSpi evtSpi = cfg.getEventStorageSpi();
+ CollisionSpi colSpi = cfg.getCollisionSpi();
+ DeploymentSpi deploySpi = cfg.getDeploymentSpi();
+ CheckpointSpi[] cpSpi = cfg.getCheckpointSpi();
+ FailoverSpi[] failSpi = cfg.getFailoverSpi();
+ LoadBalancingSpi[] loadBalancingSpi = cfg.getLoadBalancingSpi();
+ SwapSpaceSpi swapspaceSpi = cfg.getSwapSpaceSpi();
+ IndexingSpi indexingSpi = cfg.getIndexingSpi();
+
+ if (commSpi == null)
+ commSpi = new TcpCommunicationSpi();
+
+ if (discoSpi == null)
+ discoSpi = new TcpDiscoverySpi();
+
+ if (discoSpi instanceof TcpDiscoverySpi) {
+ TcpDiscoverySpi tcpDisco = (TcpDiscoverySpi)discoSpi;
+
+ if (tcpDisco.getIpFinder() == null)
+ tcpDisco.setIpFinder(new TcpDiscoveryMulticastIpFinder());
+ }
+
+ if (evtSpi == null)
+ evtSpi = new MemoryEventStorageSpi();
+
+ if (colSpi == null)
+ colSpi = new NoopCollisionSpi();
+
+ if (deploySpi == null)
+ deploySpi = new LocalDeploymentSpi();
+
+ if (cpSpi == null)
+ cpSpi = new CheckpointSpi[] {new NoopCheckpointSpi()};
+
+ if (failSpi == null)
+ failSpi = new FailoverSpi[] {new AlwaysFailoverSpi()};
+
+ if (loadBalancingSpi == null)
+ loadBalancingSpi = new LoadBalancingSpi[] {new RoundRobinLoadBalancingSpi()};
+
+ if (swapspaceSpi == null) {
+ boolean needSwap = false;
+
+ CacheConfiguration[] caches = cfg.getCacheConfiguration();
+
+ if (caches != null) {
+ for (CacheConfiguration c : caches) {
+ if (c.isSwapEnabled()) {
+ needSwap = true;
+
+ break;
+ }
+ }
+ }
+
+ swapspaceSpi = needSwap ? new FileSwapSpaceSpi() : new NoopSwapSpaceSpi();
+ }
+
+ if (indexingSpi == null)
+ indexingSpi = new NoopIndexingSpi();
+
+ myCfg.setCommunicationSpi(commSpi);
+ myCfg.setDiscoverySpi(discoSpi);
+ myCfg.setCheckpointSpi(cpSpi);
+ myCfg.setEventStorageSpi(evtSpi);
+ myCfg.setDeploymentSpi(deploySpi);
+ myCfg.setFailoverSpi(failSpi);
+ myCfg.setCollisionSpi(colSpi);
+ myCfg.setLoadBalancingSpi(loadBalancingSpi);
+ myCfg.setSwapSpaceSpi(swapspaceSpi);
+ myCfg.setIndexingSpi(indexingSpi);
+
+ // Ensure that SPIs support multiple grid instances, if required.
+ if (!startCtx.single()) {
+ ensureMultiInstanceSupport(deploySpi);
+ ensureMultiInstanceSupport(commSpi);
+ ensureMultiInstanceSupport(discoSpi);
+ ensureMultiInstanceSupport(cpSpi);
+ ensureMultiInstanceSupport(evtSpi);
+ ensureMultiInstanceSupport(colSpi);
+ ensureMultiInstanceSupport(failSpi);
+ ensureMultiInstanceSupport(loadBalancingSpi);
+ ensureMultiInstanceSupport(swapspaceSpi);
+ }
CacheConfiguration[] cacheCfgs = cfg.getCacheConfiguration();
@@ -1496,12 +1584,12 @@ public class IgnitionEx {
final boolean hasAtomics = cfg.getAtomicConfiguration() != null;
- final boolean clientDisco = myCfg.getDiscoverySpi() instanceof TcpClientDiscoverySpi;
+ final boolean clientDisco = discoSpi instanceof TcpClientDiscoverySpi;
CacheConfiguration[] copies;
if (cacheCfgs != null && cacheCfgs.length > 0) {
- if (!U.discoOrdered(myCfg.getDiscoverySpi()) && !U.relaxDiscoveryOrdered())
+ if (!U.discoOrdered(discoSpi) && !U.relaxDiscoveryOrdered())
throw new IgniteCheckedException("Discovery SPI implementation does not support node ordering and " +
"cannot be used with cache (use SPI with @GridDiscoverySpiOrderSupport annotation, " +
"like GridTcpDiscoverySpi)");
@@ -1709,99 +1797,6 @@ public class IgnitionEx {
}
}
- private void copySpis(IgniteConfiguration cfg, IgniteConfiguration myCfg, boolean singleGrid)
- throws IgniteCheckedException {
- /*
- * Initialize default SPI implementations.
- */
- CommunicationSpi commSpi = cfg.getCommunicationSpi();
- DiscoverySpi discoSpi = cfg.getDiscoverySpi();
- EventStorageSpi evtSpi = cfg.getEventStorageSpi();
- CollisionSpi colSpi = cfg.getCollisionSpi();
- DeploymentSpi deploySpi = cfg.getDeploymentSpi();
- CheckpointSpi[] cpSpi = cfg.getCheckpointSpi();
- FailoverSpi[] failSpi = cfg.getFailoverSpi();
- LoadBalancingSpi[] loadBalancingSpi = cfg.getLoadBalancingSpi();
- SwapSpaceSpi swapspaceSpi = cfg.getSwapSpaceSpi();
- IndexingSpi indexingSpi = cfg.getIndexingSpi();
-
- if (commSpi == null)
- commSpi = new TcpCommunicationSpi();
-
- if (discoSpi == null)
- discoSpi = new TcpDiscoverySpi();
-
- if (discoSpi instanceof TcpDiscoverySpi) {
- TcpDiscoverySpi tcpDisco = (TcpDiscoverySpi)discoSpi;
-
- if (tcpDisco.getIpFinder() == null)
- tcpDisco.setIpFinder(new TcpDiscoveryMulticastIpFinder());
- }
-
- if (evtSpi == null)
- evtSpi = new MemoryEventStorageSpi();
-
- if (colSpi == null)
- colSpi = new NoopCollisionSpi();
-
- if (deploySpi == null)
- deploySpi = new LocalDeploymentSpi();
-
- if (cpSpi == null)
- cpSpi = new CheckpointSpi[] {new NoopCheckpointSpi()};
-
- if (failSpi == null)
- failSpi = new FailoverSpi[] {new AlwaysFailoverSpi()};
-
- if (loadBalancingSpi == null)
- loadBalancingSpi = new LoadBalancingSpi[] {new RoundRobinLoadBalancingSpi()};
-
- if (swapspaceSpi == null) {
- boolean needSwap = false;
-
- CacheConfiguration[] caches = cfg.getCacheConfiguration();
-
- if (caches != null) {
- for (CacheConfiguration c : caches) {
- if (c.isSwapEnabled()) {
- needSwap = true;
-
- break;
- }
- }
- }
-
- swapspaceSpi = needSwap ? new FileSwapSpaceSpi() : new NoopSwapSpaceSpi();
- }
-
- if (indexingSpi == null)
- indexingSpi = new NoopIndexingSpi();
-
- myCfg.setCommunicationSpi(commSpi);
- myCfg.setDiscoverySpi(discoSpi);
- myCfg.setCheckpointSpi(cpSpi);
- myCfg.setEventStorageSpi(evtSpi);
- myCfg.setDeploymentSpi(deploySpi);
- myCfg.setFailoverSpi(failSpi);
- myCfg.setCollisionSpi(colSpi);
- myCfg.setLoadBalancingSpi(loadBalancingSpi);
- myCfg.setSwapSpaceSpi(swapspaceSpi);
- myCfg.setIndexingSpi(indexingSpi);
-
- // Ensure that SPIs support multiple grid instances, if required.
- if (!singleGrid) {
- ensureMultiInstanceSupport(deploySpi);
- ensureMultiInstanceSupport(commSpi);
- ensureMultiInstanceSupport(discoSpi);
- ensureMultiInstanceSupport(cpSpi);
- ensureMultiInstanceSupport(evtSpi);
- ensureMultiInstanceSupport(colSpi);
- ensureMultiInstanceSupport(failSpi);
- ensureMultiInstanceSupport(loadBalancingSpi);
- ensureMultiInstanceSupport(swapspaceSpi);
- }
- }
-
/**
* @param cfgLog Configured logger.
* @param nodeId Local node ID.