Package org.objectweb.speedo.pobjects.inheritance.ejboo

Examples of org.objectweb.speedo.pobjects.inheritance.ejboo.Marche


    final int MARCHE_SIZE = 2;
    PersistenceManager pm = pmf.getPersistenceManager();
    pm.currentTransaction().begin();
    Catalogue cat = null;
    int nbCat = 0;
    Marche mar= null;
    int nbMar = 0;
    Article a;
    for(int idArt=0; idArt<NB_ARTICLE; idArt++) {
      if ((idArt / CATLAOGUE_SIZE) == nbCat) {
        cat = new Catalogue();
        pm.makePersistent(cat);
        nbCat ++;
      }
      if ((idArt / MARCHE_SIZE) == nbMar) {
        mar = new Marche();
        pm.makePersistent(mar);
        nbMar ++;
      }
      if ((idArt % 2) == 0) { //pair
        a = new Service(idArt);
      } else { //impair
        a = new Materiel(idArt);
      }
      pm.makePersistent(a);
      a.setCatalogue(cat);
      mar.getArticles().add(a);
    }
    pm.currentTransaction().commit();

    a = null;
    cat = null;
    mar = null;
    pm.evictAll();

    Article a2 = null;
   
    Extent extent = pm.getExtent(Catalogue.class, true);
    Iterator it = extent.iterator();
    while(it.hasNext()) {
      cat = (Catalogue) it.next();
      logger.log(BasicLevel.DEBUG, "Catalogue " + cat.getId());
      Collection arts = cat.getArticles();
      Iterator articles = arts.iterator();
      while(articles.hasNext()) {
        a2 = a;
        a = (Article) articles.next();
        logger.log(BasicLevel.DEBUG, "\tArticle " + a.getId());
        Collection mars = a.getMarches();
        Iterator marches = mars.iterator();
        while (marches.hasNext()) {
          mar = (Marche) marches.next();
          logger.log(BasicLevel.DEBUG, "\t\tMarche " + mar.getId());
          Collection m2as = mar.getArticles();
          assertTrue("The article '" + a.getId()
            + "' is not in the collection marche(" + mar.getId()
            + ").articles", m2as.contains(a));
        }
      }
    }
    extent.closeAll();

    pm.currentTransaction().begin();
    Query q = pm.newQuery(Catalogue.class);
    q.setResult("distinct this");
      q.setFilter("articles.contains(a) && a.marches.contains(m) && m.id==MID");
      q.declareParameters("long MID");
      q.declareVariables("Marche m;Article a");
      Collection c = (Collection) q.execute(new Long(mar.getId()));
      Collection expectedResults = Collections.singletonList(cat);
      assertSameCollection("Collection of results is not the one expected", expectedResults, c);
      q.closeAll();
      pm.currentTransaction().commit();
     
View Full Code Here

TOP

Related Classes of org.objectweb.speedo.pobjects.inheritance.ejboo.Marche

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.