use of com.alipay.sofa.ark.spi.model.Biz in project sofa-ark by alipay.
the class BizManagerServiceImpl method isActiveBiz.
@Override
public boolean isActiveBiz(String bizName, String bizVersion) {
AssertUtils.isFalse(StringUtils.isEmpty(bizName), "Biz name must not be empty.");
AssertUtils.isFalse(StringUtils.isEmpty(bizVersion), "Biz version must not be empty.");
Map<String, Biz> bizCache = bizRegistration.get(bizName);
if (bizCache != null) {
Biz biz = bizCache.get(bizVersion);
return biz != null && (biz.getBizState() == BizState.ACTIVATED);
}
return false;
}
use of com.alipay.sofa.ark.spi.model.Biz in project sofa-ark by alipay.
the class BizManagerServiceImpl method getBizState.
@Override
public BizState getBizState(String bizName, String bizVersion) {
AssertUtils.isFalse(StringUtils.isEmpty(bizName), "Biz name must not be empty.");
AssertUtils.isFalse(StringUtils.isEmpty(bizVersion), "Biz version must not be empty.");
Map<String, Biz> bizCache = bizRegistration.get(bizName);
if (bizCache != null) {
Biz biz = bizCache.get(bizVersion);
return biz != null ? biz.getBizState() : BizState.UNRESOLVED;
}
return BizState.UNRESOLVED;
}
use of com.alipay.sofa.ark.spi.model.Biz in project sofa-ark by alipay.
the class BizManagerServiceImpl method activeBiz.
@Override
public void activeBiz(String bizName, String bizVersion) {
AssertUtils.isFalse(StringUtils.isEmpty(bizName), "Biz name must not be empty.");
AssertUtils.isFalse(StringUtils.isEmpty(bizVersion), "Biz version must not be empty.");
Biz biz = getBiz(bizName, bizVersion);
Biz activeBiz = getActiveBiz(bizName);
if (biz != null && biz.getBizState() == BizState.DEACTIVATED) {
if (activeBiz != null) {
((BizModel) activeBiz).setBizState(BizState.DEACTIVATED);
}
((BizModel) biz).setBizState(BizState.ACTIVATED);
}
}
use of com.alipay.sofa.ark.spi.model.Biz in project sofa-ark by alipay.
the class ExtensionLoaderServiceImpl method getExtensionContributorFromArkBiz.
@Override
public <T> T getExtensionContributorFromArkBiz(Class<T> interfaceType, String extensionName, String bizIdentity) {
AssertUtils.assertNotNull(interfaceType, "interfaceType can't be null.");
AssertUtils.assertNotNull(extensionName, "extensionName can't be null.");
AssertUtils.assertNotNull(bizIdentity, "bizIdentity can't be null.");
Biz biz = bizManagerService.getBizByIdentity(bizIdentity);
AssertUtils.assertNotNull(biz, "biz: " + bizIdentity + " is null");
return getExtensionContributor(interfaceType, extensionName, biz, biz.getBizClassLoader());
}
use of com.alipay.sofa.ark.spi.model.Biz in project sofa-ark by alipay.
the class EventTest method testEvent.
@Test
public void testEvent() {
Biz biz = new BizModel().setBizName("test-biz").setBizVersion("1.0.0").setBizState(BizState.RESOLVED);
Plugin plugin = new PluginModel().setPluginName("test-plugin").setVersion("1.0.0");
eventAdminService.sendEvent(new AfterBizStartupEvent(biz));
Assert.assertTrue(result.get(0).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_AFTER_INVOKE_BIZ_START));
eventAdminService.sendEvent(new BeforeBizStartupEvent(biz));
Assert.assertTrue(result.get(1).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_BEFORE_INVOKE_BIZ_START));
eventAdminService.sendEvent(new BeforeBizStopEvent(biz));
Assert.assertTrue(result.get(2).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_BEFORE_INVOKE_BIZ_STOP));
eventAdminService.sendEvent(new AfterBizStopEvent(biz));
Assert.assertTrue(result.get(3).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_AFTER_INVOKE_BIZ_STOP));
eventAdminService.sendEvent(new BeforeBizSwitchEvent(biz));
Assert.assertTrue(result.get(4).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_BEFORE_INVOKE_BIZ_SWITCH));
eventAdminService.sendEvent(new AfterBizSwitchEvent(biz));
Assert.assertTrue(result.get(5).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_AFTER_INVOKE_BIZ_SWITCH));
eventAdminService.sendEvent(new AfterPluginStartupEvent(plugin));
Assert.assertTrue(result.get(6).equalsIgnoreCase(Constants.PLUGIN_EVENT_TOPIC_AFTER_INVOKE_PLUGIN_START));
eventAdminService.sendEvent(new AfterPluginStopEvent(plugin));
Assert.assertTrue(result.get(7).equalsIgnoreCase(Constants.PLUGIN_EVENT_TOPIC_AFTER_INVOKE_PLUGIN_STOP));
eventAdminService.sendEvent(new BeforePluginStartupEvent(plugin));
Assert.assertTrue(result.get(8).equalsIgnoreCase(Constants.PLUGIN_EVENT_TOPIC_BEFORE_INVOKE_PLUGIN_START));
eventAdminService.sendEvent(new BeforePluginStopEvent(plugin));
Assert.assertTrue(result.get(9).equalsIgnoreCase(Constants.PLUGIN_EVENT_TOPIC_BEFORE_INVOKE_PLUGIN_STOP));
eventAdminService.sendEvent(new AfterFinishDeployEvent());
Assert.assertTrue(result.get(10).equalsIgnoreCase(Constants.ARK_EVENT_TOPIC_AFTER_FINISH_DEPLOY_STAGE));
eventAdminService.sendEvent(new AfterFinishStartupEvent());
Assert.assertTrue(result.get(11).equalsIgnoreCase(Constants.ARK_EVENT_TOPIC_AFTER_FINISH_STARTUP_STAGE));
eventAdminService.sendEvent(new TestArkEvent(""));
Assert.assertTrue(result.get(12).equalsIgnoreCase("test-ark"));
eventAdminService.sendEvent(new BeforeBizRecycleEvent(biz));
Assert.assertTrue(result.get(13).equalsIgnoreCase(Constants.BIZ_EVENT_TOPIC_BEFORE_RECYCLE_BIZ));
}
Aggregations