Package org.jresearch.flexess.core.model.uam

Examples of org.jresearch.flexess.core.model.uam.Role


    }
    return po;
  }

  private static EObject loadRoleInstance(final IRoleInstanceMetaInfo roleInst, final IUser user, final SecurityModel securityModel) throws InconsistentModelException {
    Role role = findRole(securityModel, roleInst.getRoleId());
    if (role == null) {
      role = createRole(securityModel, roleInst);
    }
    final EFactory securityFactory = securityModel.getEFactoryInstance();
    final EObject roInstance = securityFactory.create(role);
View Full Code Here


    }
    return roInstance;
  }

  private static Role createRole(final SecurityModel model, final IRoleInstanceMetaInfo roleInst) throws InconsistentModelException {
    final Role role = UamFactory.eINSTANCE.createRole();
    role.setId(roleInst.getRoleId());
    role.setName(roleInst.getName());
    final Set<IPermissionInstanceMetaInfo> permissionInstances = roleInst.getPermissionInstances();
    for (final IPermissionInstanceMetaInfo info : permissionInstances) {
      final Permission permission = findPermission(model, info.getPermissionId());
      if (permission == null) {
        throw new InconsistentModelException(MessageFormat.format("Inconsistent model. Permission {0} is not found. It can be caused by model upgrade on the server. Restart application to load new model.", info.getPermissionId())); //$NON-NLS-1$
View Full Code Here

    POperation operation = UamFactory.eINSTANCE.createPOperation();
    operation.setName("TestOperation");
    pObject.getEOperations().add(operation);

    // Create role
    Role role = uamFactory.createRole();
    role.setName("TestRole");
    EReference permissionRef = EMFUtil.addPermission(role, permission);
    model.getEClassifiers().add(role);

    // get factory to create instances
    EFactory instanceFactory = model.getEFactoryInstance();
View Full Code Here

      // should never happen
    }
    for (Role oldRole : oldRoles) {

      // check if role with the same id exists
      Role newRole = idToRoles.get(oldRole.getId());
      if (newRole == null) {
        // role was deleted
        try {
          fireModelChanged(null, oldRole, Operations.ROLE_DELETED);
        } catch (RuleExecutionException e) {
          exceptions.add(e);
        }
      } else {
        exceptions.addAll(compareRoles(oldRole, newRole, idToPermissions));
        idToRoles.remove(newRole.getId());
      }

    }
    // only new roles should remain
    for (Role role : idToRoles.values()) {
View Full Code Here

    assertEquals(0, roles2.size());
  }

  @Override
  protected SecurityModel modifyModel(SecurityModel oldModel) {
    Role manager = null;
    Collection<Role> roles = EcoreUtil.getObjectsByType(oldModel.getEClassifiers(), UamPackage.eINSTANCE.getRole());
    for (Role role : roles) {
      if (role.getId().equals("manager_role")) {
        manager = role;
      }
View Full Code Here

      POperation pop = it.next();
      ElementDescription ed = createElementDescription(pop);
      pm.addOperation(ed);
    }
    for (Iterator<Role> it = EMFUtil.getRoles(permission).iterator(); it.hasNext();) {
      Role role = it.next();
      ElementDescription ed = createElementDescription(role);
      pm.addRole(ed);
    }

    PObject po = permission.getPObject();
View Full Code Here

  private IRoleInstanceService roleInstanceService;

  @Override
  public void executeRule(IRuleDefinition rule) throws RuleExecutionException {
    Role role = (Role) rule.getParent();
    Permission permission = (Permission) rule.getSource();
    String appId = ((SecurityModel) permission.getEPackage()).getId();
    List<IRoleInstanceMetaInfo> instances = roleInstanceService.getRoleInstances(appId, role.getId());
    for (IRoleInstanceMetaInfo info : instances) {
      IPermissionInstanceMetaInfo permissionInstanceMetaInfo = permissionInstanceService.getPermissionInstanceImpl();
      List<EAttribute> attributes = permission.getEAttributes();
      for (EAttribute attribute : attributes) {
        permissionInstanceMetaInfo.addPermissionParameter(makePermissionParameter(permissionInstanceMetaInfo, attribute));
View Full Code Here

    this.roleService = roleService;
  }

  @Override
  public void executeRule(IRuleDefinition e) throws RuleExecutionException {
    Role role = (Role) e.getSource();
    IRoleMetaInfo roleMetaInfo = null;
    String modelId = ((SecurityModel) role.getEPackage()).getId();
    try {
      roleMetaInfo = roleService.findDynamicRole(modelId, role.getName());
    } catch (ObjectNotFoundException e1) {
      throw new RuleExecutionException(modelId, "Model is not found.");
    }
    if (roleMetaInfo != null) {
      throw new RuleExecutionException(role.getName(), "Dynamic role template with such name exists");
    }
  }
View Full Code Here

    super(xmlElement, converted);
  }

  @Override
  public Role rawConvert() throws LoadModelException {
    Role result = super.rawConvert();
    EList<PermissionRefType> permission = getXmlElement().getPermission();
    for (PermissionRefType refType : permission) {
      PermissionType ref = refType.getRef();
      EMFUtil.addPermission(result, new PermissionConverter(ref, getConverted()).convert());
    }
View Full Code Here

    userID.setName("login"); //$NON-NLS-1$
    userID.setEType(EcorePackage.eINSTANCE.getEString());
    userPermission.getEStructuralFeatures().add(userID);
    pack.getEClassifiers().add(userPermission);

    Role manager = UamFactory.eINSTANCE.createRole();
    manager.setId("manager_role"); //$NON-NLS-1$
    manager.setName("regional manager"); //$NON-NLS-1$
    EcoreUtil.setAnnotation(manager, UamPackage.eNS_URI, "#description", "orders manager"); //$NON-NLS-1$ //$NON-NLS-2$
    pack.getEClassifiers().add(manager);
    EMFUtil.addPermission(manager, regionalPermission);

    Role customer = UamFactory.eINSTANCE.createRole();
    customer.setId("customer_role"); //$NON-NLS-1$
    customer.setName("customer"); //$NON-NLS-1$
    EcoreUtil.setAnnotation(customer, UamPackage.eNS_URI, "#description", "orders customer"); //$NON-NLS-1$ //$NON-NLS-2$
    pack.getEClassifiers().add(customer);
    userPermission.setPObject(order);
    // EMFUtil.addPobject(userPermission, order);
    // order.getPermission().add(userPermission);
View Full Code Here

TOP

Related Classes of org.jresearch.flexess.core.model.uam.Role

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.