use of javax.management.MBeanException in project karaf by apache.
the class BundlesMBeanImpl method resolve.
public void resolve(String bundleId) throws MBeanException {
try {
List<Bundle> bundles = selectBundles(bundleId);
getFrameworkWiring().resolveBundles(bundles);
} catch (Exception e) {
throw new MBeanException(null, e.toString());
}
}
use of javax.management.MBeanException in project karaf by apache.
the class BundlesMBeanImpl method getDiag.
@Override
public TabularData getDiag() throws MBeanException {
try {
CompositeType diagType = new CompositeType("Diag", "OSGi Bundle Diag", new String[] { "Name", "Status", "Diag" }, new String[] { "Bundle Name", "Current Status", "Diagnostic" }, new OpenType[] { SimpleType.STRING, SimpleType.STRING, SimpleType.STRING });
TabularType tableType = new TabularType("Diagnostics", "Tables of all bundles diagnostic", diagType, new String[] { "Name" });
TabularData table = new TabularDataSupport(tableType);
Bundle[] bundles = bundleContext.getBundles();
for (Bundle bundle : bundles) {
BundleInfo bundleInfo = bundleService.getInfo(bundle);
String name = ShellUtil.getBundleName(bundle);
String status = bundleInfo.getState().toString();
String diag = bundleService.getDiag(bundle);
CompositeData data = new CompositeDataSupport(diagType, new String[] { "Name", "Status", "Diag" }, new Object[] { name, status, diag });
table.put(data);
}
return table;
} catch (Exception e) {
throw new MBeanException(null, e.toString());
}
}
use of javax.management.MBeanException in project karaf by apache.
the class BundlesMBeanImpl method getBundles.
public TabularData getBundles() throws MBeanException {
try {
CompositeType bundleType = new CompositeType("Bundle", "OSGi Bundle", new String[] { "ID", "Name", "Symbolic Name", "Version", "Start Level", "State", "Update Location" }, new String[] { "ID of the Bundle", "Name of the Bundle", "Symbolic Name of the Bundle", "Version of the Bundle", "Start Level of the Bundle", "Current State of the Bundle", "Update location of the Bundle" }, new OpenType[] { SimpleType.LONG, SimpleType.STRING, SimpleType.STRING, SimpleType.STRING, SimpleType.INTEGER, SimpleType.STRING, SimpleType.STRING });
TabularType tableType = new TabularType("Bundles", "Tables of all bundles", bundleType, new String[] { "ID" });
TabularData table = new TabularDataSupport(tableType);
Bundle[] bundles = bundleContext.getBundles();
for (Bundle bundle : bundles) {
try {
BundleInfo info = bundleService.getInfo(bundle);
String bundleStateString = info.getState().toString();
CompositeData data = new CompositeDataSupport(bundleType, new String[] { "ID", "Name", "Symbolic Name", "Version", "Start Level", "State", "Update Location" }, new Object[] { info.getBundleId(), info.getName(), info.getSymbolicName(), info.getVersion(), info.getStartLevel(), bundleStateString, info.getUpdateLocation() });
table.put(data);
} catch (Exception e) {
LOG.error(e.getMessage(), e);
}
}
return table;
} catch (Exception e) {
throw new MBeanException(null, e.toString());
}
}
use of javax.management.MBeanException in project karaf by apache.
the class ObrMBeanImpl method getBundles.
public TabularData getBundles() throws MBeanException {
try {
CompositeType bundleType = new CompositeType("OBR Resource", "Bundle available in the OBR", new String[] { "presentationname", "symbolicname", "version" }, new String[] { "Presentation Name", "Symbolic Name", "Version" }, new OpenType[] { SimpleType.STRING, SimpleType.STRING, SimpleType.STRING });
TabularType tableType = new TabularType("OBR Resources", "Table of all resources/bundles available in the OBR", bundleType, new String[] { "symbolicname", "version" });
TabularData table = new TabularDataSupport(tableType);
Resource[] resources = repositoryAdmin.discoverResources("(|(presentationname=*)(symbolicname=*))");
for (Resource resource : resources) {
try {
CompositeData data = new CompositeDataSupport(bundleType, new String[] { "presentationname", "symbolicname", "version" }, new Object[] { resource.getPresentationName(), resource.getSymbolicName(), resource.getVersion().toString() });
table.put(data);
} catch (Exception e) {
e.printStackTrace();
}
}
return table;
} catch (Exception e) {
throw new MBeanException(null, e.toString());
}
}
use of javax.management.MBeanException in project ddf by codice.
the class ResourceDownloadActionEndpointTest method testDownloadToLocalSiteUnexpectedTargetExceptionWrappedInMBeanException.
@Test
public void testDownloadToLocalSiteUnexpectedTargetExceptionWrappedInMBeanException() throws Exception {
// Setup
setupMockTemplate(null, FAILURE_MESSAGE);
setupMockHandlebars(null);
setupMockResourceDownloadMBeanWithException(new MBeanException(new RuntimeException(), ""));
ResourceDownloadActionEndpoint resourceDownloadEndpoint = createResourceDownloadActionEndpoint();
// Perform Test
Response response = resourceDownloadEndpoint.copyToLocalSite(SOURCE_ID, METACARD_ID);
assertThat(response.getEntity(), is(String.format(HTML_TEMPLATE, FAILURE_MESSAGE)));
assertThat(response.getStatus(), is(Status.INTERNAL_SERVER_ERROR.getStatusCode()));
verify(mockResourceDownloadMBeanProxy).copyToLocalSite(SOURCE_ID, METACARD_ID);
}
Aggregations