Examples of PMHolder


Examples of org.objectweb.speedo.j2eedo.common.PMHolder

      p.remove(SpeedoProperties.JDO_OPTION_CONNECTION_FACTORY_NAME);
    }

    PersistenceManagerFactory pmf =
      JDOHelper.getPersistenceManagerFactory(p);
    PMHolder pmHolder = new PMHolder(pmf);
    DatabaseImpl.initTestData(pmHolder);
  }
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

    for (int i = 0; i < DatabaseImpl.actionArray.length; i++) {
      for (int j = 0; j < NUMBER_OF_TEST; j++) {
        methodsList.add(DatabaseImpl.actionArray[i]);
            }
        }
    PMHolder pmHolder = new PMHolder(JDOHelper.getPersistenceManagerFactory(p));
    Collections.shuffle(methodsList);
        int j = 0;
        String action = null;
        String returnStr = null;
    for(Iterator iter = methodsList.iterator(); iter.hasNext();) {
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

          String action = null;
          String returnStr = null;
          Iterator iter = null;
          PersistenceManagerFactory pmf =
            JDOHelper.getPersistenceManagerFactory(p);
          PMHolder pmHolder = new PMHolder(pmf);
          int j = 0;
          for (int i = 0; i < nbTx; i++) {
            logger.log(BasicLevel.INFO, "Start loop " + i);
            Collections.shuffle(methodsList);
            iter = methodsList.iterator();
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

          Integer.getInteger(NBOFREAD, 3).intValue());
    } catch (Exception e) {
      e.printStackTrace();
    }

    PMHolder pmHolder = new PMHolder(getPMF());
    try {
      synchronized (JEEDO_LOG_NAME) {
        if (!TestJ2eedoApplication.dataReset) {
          TestJ2eedoApplication.dataReset = true;
          logger.log(
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

  private final static Hashtable needTransactionArray = new Hashtable();

  protected String performMethod(String action)
    throws Exception, JDOException, JDOFatalException {
    PMHolder pmHolder = new PMHolder(getPMF());

    String returnStr = null;
    boolean needTrans;
    PersistenceManager pm = null;

    if (!needTransactionArray.containsKey(action)) {
      int k = 0;
      for (;
        !DatabaseImpl.actionArray[k].equals(action)
          && k < DatabaseImpl.actionWeightArray.length;
        k++);

      if (0 == DatabaseImpl.actionWeightArray[k][DatabaseImpl.WRITE])
        needTransactionArray.put(action, new Boolean(false));
      else
        needTransactionArray.put(action, new Boolean(true));
    }
    needTrans = ((Boolean) needTransactionArray.get(action)).booleanValue();
    needTrans = true;
    if (needTrans) {
      pm = pmHolder.getPersistenceManager();
      pm.currentTransaction().begin();
    }
    try {
            returnStr = DatabaseImpl.instance.doAction(action, false, pmHolder);
    } catch (JDOFatalException e) {
            if (pm != null && !pm.isClosed() && pm.currentTransaction().isActive()) {
                pm.currentTransaction().rollback();
            }
        throw e;
        } finally {
            if (pm != null && !pm.isClosed() && pm.currentTransaction().isActive()) {
                pm.currentTransaction().commit();
            }
            if (needTrans) {
                pmHolder.closePersistenceManager();
            }
    }
    return returnStr;
  }
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

      fail(e.getMessage());
    }
    // display the current status of data
    try {
      String str = DatabaseImpl.instance.doAction(
                    "", false, new PMHolder(getPMF()));
      logger.log(BasicLevel.DEBUG, str);
    } catch (Exception e) {
      logger.log(BasicLevel.ERROR, "Error occurs : ", e);
    }
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

   * @return result of the method as a string
   * @throws Exception
   */
  public String doAction(PMHolder pmh, String action) {
    return DatabaseImpl.instance.doAction(
                action, false, pmh == null ? new PMHolder(getPMF()) : pmh);
  }
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

   * @return result of the method as a string
   * @throws Exception
   */
  public String doAction(String action) {
        return DatabaseImpl.instance.doAction(
                action, false, new PMHolder(getPMF()));
  }
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

      // to begin and close an transaction the pm is required
      withGetPM = true;
      logger.log(BasicLevel.WARN,
        "Use of the persistence manager is required when using transaction");
    }
    PMHolder pmh = new PMHolder(persistenceManagerFactory);
    PersistenceManager pm = null;
    javax.jdo.Transaction utx = null;
    try {
      if ((!useSessionBean || localSessionBean) && withGetPM) {
        logger.log(BasicLevel.DEBUG, "GetPM");
        pm = pmh.getPersistenceManager();
      }
      if ((!useSessionBean || localSessionBean) && withTransaction) {
        utx = pm.currentTransaction();
        utx.begin();
        logger.log(BasicLevel.DEBUG, "Begin local JDOTransactionItf");
      }
      if (useSessionBean) {
          //The action will be done by the Session bean
          if (localSessionBean) {
              //Invoke the session bean through the local interface
          logger.log(BasicLevel.DEBUG, "Use local session bean");
          StoreServicesLocal lstoreServices = null;
          try {
            lstoreServices = lstoreServicesLH.create();
          } catch (CreateException e) {
            logger.log(BasicLevel.ERROR, "Error during the creation of Local Session", e);
            throw new ServletException(e);
          }
          try {
              executeSessionBean(req, resp, lstoreServices, pmh);
          } finally {
              //release the session bean from the pool
              lstoreServices.remove();
          }
          } else {
              //Invoke the session bean through the Remote interface
          logger.log(BasicLevel.DEBUG, "Use remote session bean");
          StoreServicesRemote lstoreServices = null;
          try {
            lstoreServices = lstoreServicesRH.create();
          } catch (CreateException e) {
            logger.log(BasicLevel.ERROR, "Error during the creation of Local Session", e);
            throw new ServletException(e);
          }
          try {
              executeSessionBean(req, resp, lstoreServices);
          } finally {
              //release the session bean from the pool
              lstoreServices.remove();
          }
          }
      } else {
        logger.log(BasicLevel.DEBUG, "Use direct call");
        executeDirectCall(req, resp, pmh);
      }
    } catch (Exception e) {
      if (utx != null && utx.isActive()) {
        logger.log(BasicLevel.DEBUG, "Rollback the local JDOTransactionItf due to an error: ", e);
        utx.rollback();
      } else {
        logger.log(BasicLevel.ERROR, "An error has occured: ", e);
      }
      throw new ServletException(e);
    } finally {
      if (utx != null && utx.isActive()) {
        logger.log(BasicLevel.DEBUG, "Commit the local JDOTransactionItf");
        utx.commit();
      }
      if (pm != null && !pm.isClosed()) {
        logger.log(BasicLevel.DEBUG, "Close local PM");
          pmh.closePersistenceManager();
      }
    }
  }
View Full Code Here

Examples of org.objectweb.speedo.j2eedo.common.PMHolder

                    + "\n\t-localSessionBean=" + localSessionBean
                    + "\n\t-action=" + action
                );
        }
        UserTransaction jtatx = null;
        PMHolder pmh = new PMHolder(persistenceManagerFactory);
        Transaction jdotx = null;
        if (withTransaction) {
            if (isJdoTx && (!useSessionBean || localSessionBean)) {
                logger.log(BasicLevel.DEBUG, "fetch JDO PersistenceManager");
                jdotx = pmh.getPersistenceManager().currentTransaction();
                logger.log(BasicLevel.DEBUG, "Begin JDO Transaction (local)");
                jdotx.begin();
            } else {
                try {
                    jtatx = (UserTransaction) getObjectFromContext(
                            null, "java:comp/UserTransaction");
                } catch (Exception e) {
                    logger.log(BasicLevel.ERROR, "Cannot lookup java:comp/UserTransaction: ", e);
                    throw new ServletException(e);
                }
                logger.log(BasicLevel.DEBUG, "Begin JTA Transaction");
                try {
                    jtatx.begin();
                } catch (Exception e) {
                    logger.log(BasicLevel.ERROR, "Cannot begin JTA transaction", e);
                    throw new ServletException(e);
                }
            }
        }
        try {
            if (useSessionBean) {
                //The action will be done by the Session bean
                if (localSessionBean) {
                    //Invoke the session bean through the local interface
                    logger.log(BasicLevel.DEBUG, "Use local session bean");
                    StoreServicesLocal lstoreServices = null;
                    try {
                        lstoreServices = lstoreServicesLH.create();
                    } catch (CreateException e) {
                        logger.log(BasicLevel.ERROR, "Error during the creation of Local Session", e);
                        throw new ServletException(e);
                    }
                    try {
                        ServletOutputStream out = resp.getOutputStream();
                        out.println(lstoreServices.doAction(pmh, action));
                    } finally {
                        //release the session bean from the pool
                        lstoreServices.remove();
                    }
                } else {
                    //Invoke the session bean through the Remote interface
                    logger.log(BasicLevel.DEBUG, "Use remote session bean");
                    StoreServicesRemote lstoreServices = null;
                    try {
                        lstoreServices = lstoreServicesRH.create();
                    } catch (CreateException e) {
                        logger.log(BasicLevel.ERROR, "Error during the creation of Local Session", e);
                        throw new ServletException(e);
                    }
                    try {
                        ServletOutputStream out = resp.getOutputStream();
                        out.println(lstoreServices.doAction(action));
                    } finally {
                        //release the session bean from the pool
                        lstoreServices.remove();
                    }
                }
            } else {
                logger.log(BasicLevel.DEBUG, "Use direct call");
                ServletOutputStream out = resp.getOutputStream();
                String outStr = DatabaseImpl.instance.doAction(action, false, pmh);
                out.println(outStr);
            }
            if (jtatx != null) {
                logger.log(BasicLevel.DEBUG, "Commit the JTA Transaction");
                jtatx.commit();
            } else if (jdotx != null && jdotx.isActive()) {
                logger.log(BasicLevel.DEBUG, "Commit the local JDOTransactionItf");
                jdotx.commit();
            }
        } catch (Exception e) {
            if (jtatx != null) {
                logger.log(BasicLevel.WARN, "Rolling back the JTA Transaction due to an error: ", e);
                try {
                    jtatx.rollback();
                } catch (Exception jtae) {
                    logger.log(BasicLevel.ERROR, "Cannot rollback JTA transaction", jtae);
                }
            } else if (jdotx != null && jdotx.isActive()) {
                logger.log(BasicLevel.WARN, "Rolling back the JDO Transaction due to an error: ", e);
                jdotx.rollback();
            } else {
                logger.log(BasicLevel.WARN, "An error has occured: ", e);
            }
            throw new ServletException(e);
        } finally {
            if (jdotx != null) {
                pmh.closePersistenceManager();
            }
        }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.