/**
* Test for the method loadClass()
*
* @see javax.management.loading.mlet#loadClass()
*/
public Result testMLetLoadClass() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL",
new Object[] { MLET_URL + "mlet1.conf" },
new String[] { String.class.getName() });
mlet.loadClass("FirstRemoteClass");
} catch (Exception e) {
//e.printStackTrace();
return failed("Unexpected Exception occur");
}
return result();
}
java类javax.management.loading.MLet的实例源码
ExtMLetTest.java 文件源码
项目:freeVM
阅读 28
收藏 0
点赞 0
评论 0
LoadingMBeanTest.java 文件源码
项目:freeVM
阅读 24
收藏 0
点赞 0
评论 0
/**
* Test for the method getURLs()
*
* @see javax.management.loading.mlet#getURLs()
*/
public Result testGetURLs() throws Exception {
MLet mlet = new MLet();
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
mlet.addURL(MLET_URL);
} catch (Exception e) {
//e.printStackTrace();
return failed("Unexpected Exception occur");
}
if (mlet.getURLs().length == 1 )
return passed();
else
return failed("Wrong number of URLs returned by getURLs() method");
}
LoadingMBeanTest.java 文件源码
项目:freeVM
阅读 23
收藏 0
点赞 0
评论 0
/**
* Test for the method getLibraryDirectory()
*
* @see javax.management.loading.mlet#getLibraryDirectory()
*/
public Result testNativeLib() throws Exception {
try{
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
mlet.getMBeansFromURL(MLET_URL+"mlet2.conf");
String libPath = mlet.getLibraryDirectory();
//System.out.println(libPath);
if(libPath.equals(null))
return failed("method MLet.getLibraryDirectory()return wrong value = " + libPath);
}catch(Exception e){
//e.printStackTrace();
return failed("Unexpected Exception occur");
}
return result();
}
LoadingMBeanTest.java 文件源码
项目:freeVM
阅读 33
收藏 0
点赞 0
评论 0
/**
* Test for the method
* getLibraryDirectory()
* setLibraryDirectory()
*
* @see javax.management.loading.mlet#setLibraryDirectory()
*/
public Result testSetLibraryDirectory() throws Exception {
try{
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
mlet.getMBeansFromURL(MLET_URL+"mlet2.conf");
String libPath = mlet.getLibraryDirectory();
mlet.setLibraryDirectory(libPath);
if(libPath.equals(null))
return failed("method MLet.getLibraryDirectory()return wrong value = " + libPath);
}catch(Exception e){
//e.printStackTrace();
return failed("Unexpected Exception occur");
}
return result();
}
LoadingMBeanTest.java 文件源码
项目:freeVM
阅读 21
收藏 0
点赞 0
评论 0
/**
* Test for the method loadClass()
*
* @see javax.management.loading.mlet#loadClass()
*/
public Result testClassCheck() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL",new Object[] { MLET_URL+"mlet1.conf" },new String[] { String.class.getName() });
//mlet.getMBeansFromURL(MLET_URL+"/mlet-1/mlet1.conf");
Class type = mlet.loadClass("FirstRemoteClass");
//System.out.println(type);
if(type.equals(null))
return failed("method MLet.loadClass return wrong value = " + type);
} catch (Exception e) {
e.printStackTrace();
return failed("Unexpected Exception occur");
}
return result();
}
LoadingMBeanTest.java 文件源码
项目:freeVM
阅读 21
收藏 0
点赞 0
评论 0
/**
* Test for the method loadClass()
*
* @see javax.management.loading.mlet#loadClass()
*/
public Result testExceptionClassCheck() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL",new Object[] { MLET_URL+"/mlet-1/mlet1.conf" },new String[] { String.class.getName() });
Class type = mlet.loadClass("IAmNotAClass");
System.out.println(type);
if(type.equals(null))
return failed("method MLet.loadClass return wrong value = " + type);
} catch (Exception e) {
//e.printStackTrace();
return passed("Expected Exception occur");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 26
收藏 0
点赞 0
评论 0
/**
* Test for mandatory: Tags CODE, ARCHIVE, NAME
*/
public Result testBaseChk() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL",
new Object[] { MLET_URL + "BaseChk.conf" },
new String[] { String.class.getName() });
if (!server.isRegistered(new ObjectName(
"test:name=SecondRemoteClass")))
return failed("MBean SecondRemoteClass does not registered by the server");
} catch (Exception e) {
return failed("Unexpected Exception");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 22
收藏 0
点赞 0
评论 0
/**
* Test for mandatory: Tags OBJECT, ARCHIVE, NAME
*/
public Result testSerChk() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL",
new Object[] { MLET_URL + "SerChk.conf" },
new String[] { String.class.getName() });
if (!server.isRegistered(new ObjectName("test:name=AnSerTest")))
return failed("MBean AnSerTest(ser class) does not registered by the server");
server.getMBeanInfo(new ObjectName("test:name=AnSerTest")).getDescription();
} catch (Exception e) {
e.printStackTrace();
return failed("Unexpected Exception");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 30
收藏 0
点赞 0
评论 0
/**
* Test for mandatory: Tags CODE, OBJECT.
* Exception should be thrown if it is exist in conf mlet text file
*/
public Result testCODEAndOBJECT() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "CODEAndOBJECT.conf" }, new String[] { String.class
.getName() });
} catch (Exception e) {
return failed("Unexpected Exception");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 26
收藏 0
点赞 0
评论 0
/**
* Exception should be thrown if in conf mlet text file exist unexpected end of file
*/
public Result testUnexpCfg() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "unexp.conf" }, new String[] { String.class.getName() });
} catch (MBeanException e) {
//e.printStackTrace();
return passed();
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return failed("javax.management.MBeanException is absence");
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 23
收藏 0
点赞 0
评论 0
/**
* Exception should be thrown if in conf mlet text file absence mandatory ARCHIVE tag
*/
public Result testMissArc() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "MissArc.conf" }, new String[] { String.class
.getName() });
} catch (MBeanException e) {
//e.printStackTrace();
return passed();
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return failed("javax.management.MBeanException is absence");
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 22
收藏 0
点赞 0
评论 0
/**
* Exception should be thrown if in conf mlet text file out of end
*/
public Result testOutOfEnd() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "OutOfEnd.conf" },
new String[] { String.class.getName() });
} catch (MBeanException e) {
//e.printStackTrace();
return passed();
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return failed("javax.management.MBeanException is absence");
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 32
收藏 0
点赞 0
评论 0
/**
* Exception should be thrown if in conf mlet text is empty
*/
public Result testEmptyConf() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "empty.conf" }, new String[] { String.class.getName() });
} catch (MBeanException e) {
//e.printStackTrace();
return passed();
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return failed("javax.management.MBeanException is absence");
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 23
收藏 0
点赞 0
评论 0
/**
* Test for mandatory: Tags CODE, ARCHIVE, NAME, CODEBASE and arglist
* Check that mlet service work properly with list of remote classes
*/
public Result testListOfMlets() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "ListMLet.conf" },
new String[] { String.class.getName() });
} catch (Exception exp) {
exp.printStackTrace();
return failed("Unexpected Exception");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 22
收藏 0
点赞 0
评论 0
/**
* Test for mandatory: Tags CODE, ARCHIVE, NAME
* Check that mlet service work properly with comments in mlet text conf file
*/
public Result testMletsComments() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "ComMLet.conf" },
new String[] { String.class.getName() });
} catch (Exception exp) {
exp.printStackTrace();
return failed("Unexpected Exception");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 22
收藏 0
点赞 0
评论 0
/**
* Test for mandatory: Tags CODE, OBJECT, ARCHIVE, NAME, CODEBASE and arglist
* Exception should be thrown if in conf mlet text file list of remote classes
*/
public Result testWrongListOfCalsses() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "DiffNameChk.conf" }, new String[] { String.class
.getName() });
if (!server.isRegistered(new ObjectName(
"test:name=SecondRemoteClass")))
return failed("MBean SecondRemoteClass does not registered by the server");
if (!server.isRegistered(new ObjectName(
"test:name=FirstRemoteClass")))
return failed("MBean SecondRemoteClass does not registered by the server");
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return result();
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 21
收藏 0
点赞 0
评论 0
/**
* Exception should be thrown if in conf mlet text file absence mandatory CODE tag
*/
public Result testMissCode() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "MissCode.conf" },
new String[] { String.class.getName() });
} catch (MBeanException e) {
//e.printStackTrace();
return passed();
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return failed("javax.management.MBeanException is absence");
}
TheMLetTagTest.java 文件源码
项目:freeVM
阅读 32
收藏 0
点赞 0
评论 0
/**
* Exception should be thrown if conf mlet text file not a conf mlet file
*/
public Result testNoconf() throws Exception {
try {
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL", new Object[] { MLET_URL
+ "not.conf" }, new String[] { String.class.getName() });
} catch (MBeanException e) {
//e.printStackTrace();
return passed();
} catch (Exception exp) {
//exp.printStackTrace();
return failed("Unexpected Exception");
}
return failed("javax.management.MBeanException is absence");
}
SecurityMLetTest.java 文件源码
项目:freeVM
阅读 24
收藏 0
点赞 0
评论 0
/**
* Check that Security Manager work properly with mlet service
*/
public Result testBaseSecurityChk2() throws Exception {
try {
System.setProperty("java.security.policy", POLICY_FILE);
Policy.getPolicy().refresh();
System.setSecurityManager(new SecurityManager());
MBeanServer server = MBeanServerFactory.createMBeanServer();
MLet mlet = new MLet();
ObjectName name = new ObjectName("test:name=mlet1");
server.registerMBean(mlet, name);
server.invoke(name, "getMBeansFromURL",
new Object[] { MLET_URL + "mlet.conf" },
new String[] { String.class.getName() });
boolean res = server.isRegistered(new ObjectName(
"test:name=FirstRemoteClass"));
System.out.println("Is MBean register: " + res);
} catch (Exception e) {
e.printStackTrace();
}
return result();
}
JDKUtil.java 文件源码
项目:marshalsec
阅读 31
收藏 0
点赞 0
评论 0
public static URLClassLoader makeMLet ( String url ) throws MalformedURLException, Exception {
URLClassLoader ucl = new MLet(new URL[] {
new URL(url)
});
Reflections.setFieldValue(ucl, "parent", null);
Reflections.setFieldValue(ucl, "domains", new HashSet<>());
Reflections.setFieldValue(ucl, "defaultDomain", null);
Reflections.setFieldValue(ucl, "acc", null);
Reflections.setFieldValue(Reflections.getFieldValue(ucl, "ucp"), "acc", null);
return ucl;
}
PostExceptionTest.java 文件源码
项目:jdk8u-jdk
阅读 23
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}
MLetInternalsTest.java 文件源码
项目:openjdk-jdk10
阅读 22
收藏 0
点赞 0
评论 0
@BeforeClass
public static void setupClass() {
testedMethods.clear();
try {
Method m = MLet.class.getDeclaredMethod(
CONSTRUCT_PARAMETER,
String.class, String.class
);
m.setAccessible(true);
testedMethods.put(CONSTRUCT_PARAMETER, m);
} catch (Exception ex) {
throw new Error(ex);
}
}
PostExceptionTest.java 文件源码
项目:openjdk-jdk10
阅读 24
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}
MLetInternalsTest.java 文件源码
项目:openjdk9
阅读 51
收藏 0
点赞 0
评论 0
@BeforeClass
public static void setupClass() {
testedMethods.clear();
try {
Method m = MLet.class.getDeclaredMethod(
CONSTRUCT_PARAMETER,
String.class, String.class
);
m.setAccessible(true);
testedMethods.put(CONSTRUCT_PARAMETER, m);
} catch (Exception ex) {
throw new Error(ex);
}
}
PostExceptionTest.java 文件源码
项目:openjdk9
阅读 24
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}
PostExceptionTest.java 文件源码
项目:jdk8u_jdk
阅读 24
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}
PostExceptionTest.java 文件源码
项目:lookaside_java-1.8.0-openjdk
阅读 24
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}
Client.java 文件源码
项目:cacheonix-core
阅读 51
收藏 0
点赞 0
评论 0
public static void main(String[] args) throws Exception
{
// The address of the connector server
JMXServiceURL url = new JMXServiceURL("rmi", "localhost", 0, "/jndi/jmx");
// Create and connect the connector client
JMXConnector cntor = JMXConnectorFactory.connect(url, null);
// The connection represent, on client-side, the remote MBeanServer
MBeanServerConnection connection = cntor.getMBeanServerConnection();
// The listener that will receive notifications from a remote MBean
NotificationListener listener = new NotificationListener()
{
public void handleNotification(Notification notification, Object handback)
{
System.out.println(notification);
}
};
// The MBeanServerDelegate emits notifications about registration/unregistration of MBeans
ObjectName delegateName = ObjectName.getInstance("JMImplementation:type=MBeanServerDelegate");
connection.addNotificationListener(delegateName, listener, null, null);
// Give chance to the notification machinery to setup
Thread.sleep(1000);
// Now register a remote MBean, for example an MLet, so that the MBeanServerDelegate
// will emit notifications for its registration
ObjectName name = ObjectName.getInstance("examples:mbean=mlet");
// First notification
connection.createMBean(MLet.class.getName(), name, null);
// Second notification
connection.unregisterMBean(name);
}
PostExceptionTest.java 文件源码
项目:infobip-open-jdk-8
阅读 23
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}
PostExceptionTest.java 文件源码
项目:jdk8u-dev-jdk
阅读 23
收藏 0
点赞 0
评论 0
public ObjectName registerMLet(MBeanServer server) throws Exception {
final ObjectName name = new ObjectName("test:type=MLet");
if (server.isRegistered(name)) {
return name;
}
final MLet mlet = new MLet(new URL[0],
ClassLoader.getSystemClassLoader());
return server.registerMBean(mlet, name).getObjectName();
}