/** * @param bean Bean to check. * @param gridName Grid name to check for. */ private void checkLifecycleBean(TestLifecycleBean bean, String gridName) { bean.checkErrors(); List<LifecycleEventType> evts = bean.getLifecycleEvents(); List<String> gridNames = bean.getGridNames(); assert evts.get(0) == LifecycleEventType.BEFORE_NODE_START : "Invalid lifecycle event: " + evts.get(0); assert evts.get(1) == LifecycleEventType.AFTER_NODE_START : "Invalid lifecycle event: " + evts.get(1); assert evts.get(2) == LifecycleEventType.BEFORE_NODE_STOP : "Invalid lifecycle event: " + evts.get(2); assert evts.get(3) == LifecycleEventType.AFTER_NODE_STOP : "Invalid lifecycle event: " + evts.get(3); checkGridNameEquals(gridNames.get(0), gridName); checkGridNameEquals(gridNames.get(1), gridName); checkGridNameEquals(gridNames.get(2), gridName); checkGridNameEquals(gridNames.get(3), gridName); }
/** * @param gridName Grid name. * @throws Exception If test failed. */ private void checkLifecycleBeans(@Nullable String gridName) throws Exception { TestLifecycleBean bean1 = new TestLifecycleBean(); TestLifecycleBean bean2 = new TestLifecycleBean(); IgniteConfiguration cfg = new IgniteConfiguration(); cfg.setLifecycleBeans(bean1, bean2); cfg.setGridName(gridName); cfg.setConnectorConfiguration(null); try (Ignite g = IgniteSpring.start(cfg, new GenericApplicationContext())) { bean1.checkState(gridName, true); bean2.checkState(gridName, true); } bean1.checkState(gridName, false); bean2.checkState(gridName, false); checkLifecycleBean(bean1, gridName); checkLifecycleBean(bean2, gridName); }