private boolean checkModificationAccessBySlot(String productID) throws OntologyErrorException {
   return DefaultSecurityManager.getInstance()
       .checkPersonCanModifyEntity(
           DefaultSecurityManager.getInstance().getParentProcess(productID),
           DefaultSecurityManager.getInstance()
               .getUserID(sessionCoontext.getCallerPrincipal().getName()));
 }
 /**
  * Gets the caller authorization.
  *
  * @param methodname not null methodname.
  * @param classname not null classname.
  * @return {@link Authorization}.
  * @throws OntologyErrorException if an error occurs in ontology back end
  */
 private Authorization getCallerAuthorization(String methodname, String classname)
     throws OntologyErrorException {
   return DefaultSecurityManager.getInstance()
       .createAuthorization(
           organizationEntity.getUser(sessionCoontext.getCallerPrincipal().getName()).getID(),
           methodname,
           classname);
 }
  /**
   * This checks every not administrator caller if he can change the process model. <br>
   * this returns true if the process (in this context call) can be changed from the caller.
   *
   * @param parameters the method parameter.
   * @return true if the caller can change the process.
   * @throws OntologyErrorException if an error occurs in ontology back end
   */
  private boolean checkNotAdminUser(Object[] parameters) throws OntologyErrorException {

    String modelID = (String) parameters[0];
    LOG.debug("checkNotAdminUser PARAM[0]   " + modelID);
    return DefaultSecurityManager.getInstance()
        .checkPersonCanModifyEntity(
            modelID,
            organizationEntity.getUser(sessionCoontext.getCallerPrincipal().getName()).getID());
  }
 /**
  * {@inheritDoc}
  *
  * @see
  *     org.prowim.services.interceptors.SecurityInterceptor#onMethodCall(javax.interceptor.InvocationContext)
  */
 @AroundInvoke
 public Object onMethodCall(InvocationContext context) throws Exception {
   Object[] params = context.getParameters();
   for (int i = 0; i < params.length; i++) {
     LOG.debug("PARAM :   " + i + "  " + params[i]);
   }
   LOG.debug("Invoking class: " + context.getMethod().getDeclaringClass().getSimpleName());
   LOG.debug("Invoking method: " + context.getMethod().getName());
   System.out.println("CALLER PRINCIPAL   " + sessionCoontext.getCallerPrincipal());
   if (!intercept(
       context.getMethod().getName(),
       context.getMethod().getDeclaringClass().getSimpleName(),
       params)) {
     LOG.debug(
         "BeansSecurityInterceptor:  allow call method < "
             + context.getMethod().getDeclaringClass().getSimpleName()
             + "#"
             + context.getMethod().getName()
             + " >");
     if (context.getMethod().getName().equals("createObject")) {
       Object returnedObject = context.proceed();
       if (returnedObject != null) {
         if (params[0].equals("model")) {
           DefaultSecurityManager.getInstance()
               .setUserCanModifyEntity(
                   (String) returnedObject,
                   DefaultSecurityManager.getInstance()
                       .getUserID(sessionCoontext.getCallerPrincipal().getName()));
         }
       }
       return returnedObject;
     } else {
       return context.proceed();
     }
   } else {
     throw new IllegalStateException(
         "No Permission to call this method for user. " + sessionCoontext.getCallerPrincipal());
   }
 }