Package br.gov.frameworkdemoiselle.internal.management.ManagedType

Examples of br.gov.frameworkdemoiselle.internal.management.ManagedType.MethodDetail


    }

    // Para cada operação descoberta no ManagementController, cria um operationInfo correspondente
    for (Entry<String, MethodDetail> methodEntry : managedType.getOperationMethods().entrySet()) {

      MethodDetail methodDetail = methodEntry.getValue();

      ParameterDetail[] parameterTypes = methodDetail.getParameterTypers();

      MBeanParameterInfo[] parameters = parameterTypes.length > 0 ? new MBeanParameterInfo[parameterTypes.length]
          : null;

      if (parameters != null) {

        for (int i = 0; i < parameterTypes.length; i++) {

          parameters[i] = new MBeanParameterInfo(parameterTypes[i].getParameterName(), parameterTypes[i]
              .getParameterType().getCanonicalName(), parameterTypes[i].getParameterDescription());
        }
      }

      // Com todas as informações, criamos nossa instância de MBeanOperationInfo e
      // acrescentamos na lista de todas as operações.
      int operationType = 0;
      switch(methodDetail.getType()){
        case ACTION:
          operationType = MBeanOperationInfo.ACTION;
          break;
         
        case INFO:
          operationType = MBeanOperationInfo.INFO;
          break;
         
        case ACTION_INFO:
          operationType = MBeanOperationInfo.ACTION_INFO;
          break;
         
        default:
          operationType = MBeanOperationInfo.UNKNOWN;
      }
     
      MBeanOperationInfo operation = new MBeanOperationInfo(methodDetail.getMethod().getName(),
          methodDetail.getDescription(), parameters, methodDetail.getMethod().getReturnType().getName(),
          operationType);

      operations.add(operation);

    }
View Full Code Here


    if (managedTypes.contains(managedType)) {
      activateContexts(managedType.getType());

      try {
        Object delegate = Beans.getReference(managedType.getType() , managedType.getQualifiers());
        MethodDetail method = managedType.getOperationMethods().get(actionName);

        if (method != null) {
          try {
            logger.debug(bundle.getString("management-debug-invoking-operation", actionName, managedType
                .getType().getCanonicalName()));
            return method.getMethod().invoke(delegate, params);
          } catch (Exception e) {
            throw new DemoiselleException(bundle.getString("management-invoke-error", actionName), e);
          }
        } else {
          throw new DemoiselleException(bundle.getString("management-invoke-error", actionName));
View Full Code Here

TOP

Related Classes of br.gov.frameworkdemoiselle.internal.management.ManagedType.MethodDetail

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.