StructureTest.java 文件源码

java
阅读 20 收藏 0 点赞 0 评论 0

项目:freeVM 作者:
/**
 * Step by step for verification that relation is removed as soon as its
 * relation type is removed.
 * <ul>
 * <li>a. Create relation
 * <li>b. Remove relation type
 * <li>c. Check that relation isn't present in relation service
 * </ul>
 */
public Result testRemoveRelationType() throws Exception {

    MBeanServer mBeanServer = MBeanServerFactory.createMBeanServer();

    RelationService relationService = new RelationService(true);
    ObjectName relationServiceName = new ObjectName(
            "mBeanServer:type=RelationService,name=rs");
    mBeanServer.registerMBean(relationService, relationServiceName);

    RoleInfo[] roleInfo = new RoleInfo[1];
    roleInfo[0] = new RoleInfo("unitRole", classPath, true, true, 1, 2,
            "Unit role");

    /* Creating an Internal Relation Type */
    relationService.createRelationType("internalRelationType", roleInfo);

    /* 2 MBean objects to be associate */
    UnitMBean unit1 = new Unit();
    ObjectName unit1Name = new ObjectName(
            "mBeanServer:type=Unit,name=Unit1");
    mBeanServer.registerMBean(unit1, unit1Name);

    /* Create Role */
    ArrayList unitList = new ArrayList();
    unitList.add(unit1Name);

    Role unitRole = new Role("unitRole", unitList);
    RoleList unitRoles = new RoleList();
    unitRoles.add(unitRole);

    /* Now Create relations between unit MBeans */
    relationService.createRelation("internalRelation",
            "internalRelationType", unitRoles);

    ERelation externalRelation = new ERelation("externalRelation",
            relationServiceName, mBeanServer, "internalRelationType",
            unitRoles);
    mBeanServer.registerMBean(externalRelation, externalRelation
            .getRelationON());

    /* Relations created. Now Remove Relation type */
    relationService.removeRelationType("internalRelationType");

    /* Check relations are removed */
    if (relationService.hasRelation("internalRelation").booleanValue()
            && relationService.hasRelation("externalRelation")
                    .booleanValue()) {
        return failed("Relation type had been removed, but relation is not");
    }

    return passed();
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号