use of com.adaptris.core.Adapter in project interlok by adaptris.
the class ChannelManagerTest method testAdapterInitialised_StartChannel.
@Test
public void testAdapterInitialised_StartChannel() throws Exception {
String adapterName = this.getClass().getSimpleName() + "." + getName();
Adapter adapter = createAdapter(adapterName);
AdapterManager adapterManager = new AdapterManager(adapter);
Channel c1 = createChannel(getName() + "_1");
Channel c2 = createChannel(getName() + "_2");
ChannelManager child1 = new ChannelManager(c1, adapterManager);
ChannelManager child2 = new ChannelManager(c2, adapterManager);
ObjectName adapterObj = adapterManager.createObjectName();
ObjectName channelObj = child1.createObjectName();
List<BaseComponentMBean> mBeans = new ArrayList<BaseComponentMBean>(Arrays.asList(new BaseComponentMBean[] { adapterManager, child1, child2 }));
try {
register(mBeans);
ChannelManagerMBean channelManagerProxy = JMX.newMBeanProxy(mBeanServer, channelObj, ChannelManagerMBean.class);
adapterManager.requestInit();
try {
channelManagerProxy.requestStart();
fail();
} catch (CoreException e) {
assertEquals(createErrorMessageString(adapterManager.getComponentState(), StartedState.getInstance()), e.getMessage());
}
} finally {
adapter.requestClose();
}
}
use of com.adaptris.core.Adapter in project interlok by adaptris.
the class AdapterManagerTest method testMBean_getAdapterModuleVersion.
@Test
public void testMBean_getAdapterModuleVersion() throws Exception {
String adapterName = this.getClass().getSimpleName() + "." + getName();
Adapter adapter = createAdapter(adapterName);
Channel newChannel1 = createChannel(getName() + "_1");
adapter.getChannelList().add(newChannel1);
AdapterManager adapterManager = new AdapterManager(adapter);
ObjectName adapterObj = adapterManager.createObjectName();
List<BaseComponentMBean> mBeans = new ArrayList<BaseComponentMBean>();
mBeans.add(adapterManager);
mBeans.addAll(adapterManager.getAllDescendants());
try {
register(mBeans);
AdapterManagerMBean adapterManagerProxy = JMX.newMBeanProxy(mBeanServer, adapterObj, AdapterManagerMBean.class);
assertNotNull(adapterManagerProxy.getModuleVersions());
// Should be 3 in the versions
// The version for adp-core-apt.jar and adp-core.jar and interlok-common.
assertEquals(3, adapterManagerProxy.getModuleVersions().size());
} finally {
}
}
use of com.adaptris.core.Adapter in project interlok by adaptris.
the class AdapterManagerTest method testMBean_RemoveSharedConnection_NotFound.
@Test
public void testMBean_RemoveSharedConnection_NotFound() throws Exception {
String adapterName = this.getClass().getSimpleName() + "." + getName();
Adapter adapter = createAdapter(adapterName);
adapter.getSharedComponents().addConnection(new NullConnection(getName()));
AdapterManager adapterManager = new AdapterManager(adapter);
ObjectName adapterObj = adapterManager.createObjectName();
AdaptrisMarshaller m = DefaultMarshaller.getDefaultMarshaller();
try {
adapterManager.registerMBean();
AdapterManagerMBean amp = JMX.newMBeanProxy(mBeanServer, adapterObj, AdapterManagerMBean.class);
assertFalse(amp.removeSharedConnection(getName() + "_1"));
Adapter marshalledAdapter = (Adapter) m.unmarshal(amp.getConfiguration());
assertEquals(1, marshalledAdapter.getSharedComponents().getConnections().size());
assertEquals(getName(), marshalledAdapter.getSharedComponents().getConnections().get(0).getUniqueId());
} finally {
}
}
use of com.adaptris.core.Adapter in project interlok by adaptris.
the class AdapterManagerTest method testMBean_NotificationOnSetMessageErrorHandler.
@Test
public void testMBean_NotificationOnSetMessageErrorHandler() throws Exception {
String adapterName = this.getClass().getSimpleName() + "." + getName();
Adapter adapter = createAdapter(adapterName, 1, 1);
String newCompXml = DefaultMarshaller.getDefaultMarshaller().marshal(new StandardProcessingExceptionHandler());
AdapterManager adapterManager = new AdapterManager(adapter);
ObjectName adapterObj = adapterManager.createObjectName();
SimpleNotificationListener listener = new SimpleNotificationListener();
NotificationFilterSupport filter = new NotificationFilterSupport();
filter.enableType(NOTIF_TYPE_ADAPTER_CONFIG);
try {
adapterManager.registerMBean();
mBeanServer.addNotificationListener(adapterObj, listener, filter, null);
AdapterManagerMBean adapterManagerProxy = JMX.newMBeanProxy(mBeanServer, adapterObj, AdapterManagerMBean.class);
adapterManagerProxy.setMessageErrorHandler(newCompXml);
listener.waitForMessages(1);
assertEquals(1, listener.getNotifications().size());
Notification n = listener.getNotifications().get(0);
assertEquals(NOTIF_TYPE_ADAPTER_CONFIG, n.getType());
assertEquals(NOTIF_MSG_CONFIG_UPDATED, n.getMessage());
assertEquals(adapterManagerProxy.getConfiguration(), n.getUserData());
} finally {
}
}
use of com.adaptris.core.Adapter in project interlok by adaptris.
the class AdapterManagerTest method testMBean_NotificationOnAddWorkflow.
@Test
public void testMBean_NotificationOnAddWorkflow() throws Exception {
String adapterName = this.getClass().getSimpleName() + "." + getName();
Adapter adapter = createAdapter(adapterName);
Channel newChannel = createChannel(getName() + "_1");
String workflowXml = DefaultMarshaller.getDefaultMarshaller().marshal(new PoolingWorkflow(getName() + "_wf1"));
AdapterManager adapterManager = new AdapterManager(adapter);
ObjectName adapterObj = adapterManager.createObjectName();
ChannelManager channelManager = new ChannelManager(newChannel, adapterManager);
ObjectName channelManagerObj = channelManager.createObjectName();
SimpleNotificationListener listener = new SimpleNotificationListener();
NotificationFilterSupport filter = new NotificationFilterSupport();
filter.enableType(NOTIF_TYPE_ADAPTER_CONFIG);
try {
adapterManager.registerMBean();
mBeanServer.addNotificationListener(adapterObj, listener, filter, null);
AdapterManagerMBean adapterManagerProxy = JMX.newMBeanProxy(mBeanServer, adapterObj, AdapterManagerMBean.class);
channelManager.addWorkflow(workflowXml);
listener.waitForMessages(1);
assertEquals(1, listener.getNotifications().size());
Notification n = listener.getNotifications().get(0);
assertEquals(NOTIF_TYPE_ADAPTER_CONFIG, n.getType());
assertEquals(NOTIF_MSG_CONFIG_UPDATED, n.getMessage());
assertEquals(adapterManagerProxy.getConfiguration(), n.getUserData());
} finally {
}
}
Aggregations