private ExportInfosMapping getExportInfosMapping(ChromatticSession session) {
    ExportInfosMapping exportInfosMapping =
        session.findByPath(ExportInfosMapping.class, ExportInfosMapping.NODE_NAME);
    if (exportInfosMapping == null) {
      exportInfosMapping = session.insert(ExportInfosMapping.class, ExportInfosMapping.NODE_NAME);
      exportInfosCount = 0;
    }

    return exportInfosMapping;
  }
  public void testOneToManyReference() {
    ChromatticSession session = login();
    WebSite site = session.insert(WebSite.class, "site");
    Content content1 = session.create(Content.class, "1");
    Content content2 = session.create(Content.class, "2");
    site.getContents().add(content1);
    Page root = session.create(Page.class);
    site.setRootPage(root);

    //
    root.setContent(content1);
  }
  public JCRRegistrationPersistenceManager(ExoContainer container) throws Exception {
    persister = new JCRPersister(container, JCRPersister.WSRP_WORKSPACE_NAME);

    List<Class> mappingClasses = new ArrayList<Class>(6);
    Collections.addAll(
        mappingClasses,
        ConsumersAndGroupsMapping.class,
        ConsumerMapping.class,
        ConsumerGroupMapping.class,
        RegistrationMapping.class,
        ConsumerCapabilitiesMapping.class,
        RegistrationPropertiesMapping.class);

    persister.initializeBuilderFor(mappingClasses);

    //      persister = NewJCRPersister.getInstance(container);

    ChromatticSession session = persister.getSession();
    mappings =
        session.findByPath(ConsumersAndGroupsMapping.class, ConsumersAndGroupsMapping.NODE_NAME);
    if (mappings == null) {
      mappings =
          session.insert(ConsumersAndGroupsMapping.class, ConsumersAndGroupsMapping.NODE_NAME);
    }
    persister.save(); // needed right now as the session must still be open to iterate over nodes

    for (ConsumerGroupMapping cgm : mappings.getConsumerGroups()) {
      internalAddConsumerGroup(cgm.toConsumerGroup(this));
    }

    for (ConsumerMapping cm : mappings.getConsumers()) {
      ConsumerSPI consumer = cm.toConsumer(this);
      internalAddConsumer(consumer);

      // get the registrations and add them to local map.
      for (Registration registration : consumer.getRegistrations()) {
        internalAddRegistration((RegistrationSPI) registration);
      }
    }

    persister.closeSession(false);
  }