Examples of IDataAccessSession


Examples of net.sf.joafip.service.IDataAccessSession

    builder.setRemoveFiles(false);
    builder.setGarbageManagement(false);
    final IFilePersistence filePersistence =
    // /**/new FilePersistence(1, null, STORAGE_DIRECTORY, false, false);
    builder.build();
    final IDataAccessSession session = filePersistence
        .createDataAccessSession();

    /* store new item table (empty) */
    session.open();
    ItemTable itemTable = new ItemTable();
    session.setObject(ITEM_TABLE, itemTable);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    /* populate item table */
    session.open();
    itemTable = (ItemTable) session.getObject(ITEM_TABLE);
    Item item = new Item("123", 10);
    itemTable.addItem(item);
    item = new Item("456", 10);
    itemTable.addItem(item);
    item = new Item("789", 11);
    itemTable.addItem(item);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    /* retrieve by code */
    session.open();
    itemTable = (ItemTable) session.getObject(ITEM_TABLE);
    item = itemTable.getItemByCode("456");
    // _log.info("retrieved by code 456: " + item);
    item = (Item) filePersistence.deepCopy(item, true);// create accessible
    // out of
    // session
    session.close(EnumFilePersistenceCloseAction.DO_NOT_SAVE);
    LOGGER.info("retrieved by code 456:" + item);

    session.open();
    itemTable = (ItemTable) session.getObject(ITEM_TABLE);
    final Collection<Item> collection = itemTable.getAllItem();
    LOGGER.info("all item: " + collection);
    session.close(EnumFilePersistenceCloseAction.DO_NOT_SAVE);

    /* update */
    session.open();
    itemTable = (ItemTable) session.getObject(ITEM_TABLE);
    item = itemTable.getItemByCode("123");
    item.setPrice(9);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    /* delete */
    session.open();
    itemTable = (ItemTable) session.getObject(ITEM_TABLE);
    item = itemTable.removeItem("456");
    LOGGER.info("deleted " + item);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    /* retrieve by price */
    session.open();
    itemTable = (ItemTable) session.getObject(ITEM_TABLE);
    final List<Item> list = itemTable
        .getItemByPrice(9/* fromPrice */, 11/* toPrice */);
    LOGGER.info("retrieved by price from 9 thru 11:" + list);
    session.close(EnumFilePersistenceCloseAction.DO_NOT_SAVE);

    /* close file persistence */
    filePersistence.close();
  }
 
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceInvalidClassException,
      FilePersistenceDataCorruptedException,
      FilePersistenceNotSerializableException,
      FilePersistenceTooBigForSerializationException {

    final IDataAccessSession session = filePersistence
        .createDataAccessSession();

    session.open();
    SubstitutionContainerSerializableReadWriteObject bobContainer =
    /**/new SubstitutionContainerSerializableReadWriteObject();
    final SubstitutedBobSerialize1 bob = new SubstitutedBobSerialize1(1);
    bobContainer.setObject(bob);
    session.setObject(KEY, bobContainer);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    bobContainer = (SubstitutionContainerSerializableReadWriteObject) session
        .getObject(KEY);
    assertNotNull(BAD_BOB_CONTAINER_OBJECT1, bobContainer.getObject());
    final SubstitutedBobSerialize1 bobRead = (SubstitutedBobSerialize1) bobContainer
        .getObject();
    assertEquals(BAD_BOB_IDENTIFIER, 1, bob.getIdentifier());
    assertSame(READ_OBJECT_MUST_BE_THE_WROTE_OBJECT, bob, bobRead);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    filePersistence.close();
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceDataCorruptedException,
      FilePersistenceNotSerializableException,
      FilePersistenceTooBigForSerializationException, IOException,
      HeapException {
    initialize(pathName, dataManager, useCache);
    final IDataAccessSession session = filePersistence
        .createDataAccessSession();
    session.open();
    int batchCount = 0;
    int count = 0;
    BufferedReader reader = new BufferedReader(new FileReader(
        insertLogFilePath));
    // "runtime_perf/toDelete.txt"));
    String line;
    while ((line = reader.readLine()) != null) {// NOPMD
      reader.readLine();// skip one
      final int identifier = Integer.parseInt(line);
      final ItemList itemList = getItemList(session);
      final Item item = itemList.removeItem(identifier);
      if (item == null) {
        Exception closeException=null;
        try {
          reader.close();
        } catch (Exception exception) {
          closeException=exception;
        }
        throw new FilePersistenceException("must found #" + identifier
            + " to be deleted",closeException);
      }
      if (++count == BATCH_SIZE) {
        count = 0;
        session.close(EnumFilePersistenceCloseAction.SAVE);
        session.open();
        consistencyCheck();
        ++batchCount;
        logger.info("delete batch #" + batchCount);
      }
    }
    reader.close();
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    batchCount = 0;
    count = 0;
    reader = new BufferedReader(new FileReader(insertLogFilePath));
    // "runtime_perf/toSearch.txt"));
    while (reader.readLine() != null && (line = reader.readLine()) != null) {// NOPMD
      final int identifier = Integer.parseInt(line);
      final ItemList itemList = getItemList(session);
      final Item item = itemList.get(identifier);
      if (item == null) {
        throw new FilePersistenceException("must found #" + identifier
            + " because not deleted");
      }
      if (++count == BATCH_SIZE) {
        count = 0;
        session.close(EnumFilePersistenceCloseAction.SAVE);
        session.open();
        ++batchCount;
        logger.info("search batch #" + batchCount);
      }
    }
    reader.close();
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    batchCount = 0;
    count = 0;
    reader = new BufferedReader(new FileReader(insertLogFilePath));
    // "runtime_perf/toDelete.txt"));
    while ((line = reader.readLine()) != null) { // NOPMD
      reader.readLine();// skip
      final int identifier = Integer.parseInt(line);
      final ItemList itemList = getItemList(session);
      final Item item = itemList.getItem(identifier);
      if (item != null) {
        throw new FilePersistenceException("must not found #"
            + identifier + " because deleted");
      }
      if (++count == BATCH_SIZE) {
        count = 0;
        session.close(EnumFilePersistenceCloseAction.SAVE);
        session.open();
        ++batchCount;
        logger.info("search deleted batch #" + batchCount);
      }
    }
    reader.close();
    session.close(EnumFilePersistenceCloseAction.SAVE);
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceNotSerializableException,
      FilePersistenceTooBigForSerializationException {
    Container.skipBug222 = true;
    HelperReflect.getInstance().setAlwaysAcceptNullField(true);
    filePersistence.xmlImport("../joafip/export222", false);
    final IDataAccessSession dataAccessSession = filePersistence
        .createDataAccessSession();
    dataAccessSession.open();
    final Container container = (Container) dataAccessSession
        .getObject("container");
    assertTrue("bad state", container.checkState());
    dataAccessSession.close(EnumFilePersistenceCloseAction.SAVE);
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceDataCorruptedException, ProxyException,
      URISyntaxException, FilePersistenceTooBigForSerializationException {
    filePersistence = createFilePersistence();
    filePersistence
        .knownAsNotExisting("net.sf.joafip.export_import.Enum300");
    final IDataAccessSession dataAccessSession = filePersistence
        .createDataAccessSession();
    dataAccessSession.open();
    final PArrayList<String> arrayList = (PArrayList<String>) dataAccessSession
        .getObject("object1");
    ListIterator<String> listIterator = arrayList.listIterator();
    // check list content
    assertTrue("must have first element", listIterator.hasNext());
    assertEquals("bad first element", "z", listIterator.next());
    assertTrue("must have second element", listIterator.hasNext());
    assertEquals("bad second element", "a", listIterator.next());
    assertTrue("must have third element", listIterator.hasNext());
    assertEquals("bad third element", "b", listIterator.next());
    assertFalse("must not have more element", listIterator.hasNext());

    listIterator = (ListIterator<String>) dataAccessSession
        .getObject("object2");
    assertEquals("bad third element", "b", listIterator.next());
    assertFalse("must not have more element", listIterator.hasNext());

    // was net.sf.joafip.export_import.Enum300, no more exist
    Object object = dataAccessSession.getObject("object3");
    assertNull("must be replaced by null", object);

    // was net.sf.joafip.export_import.Class300, no more exist
    object = dataAccessSession.getObject("object4");
    assertNotNull("must be defined", object);
    assertEquals("bad class", Class300Replacement.class,
        filePersistence.classOfObject(object));
    final Class300Replacement class300Replacement = (Class300Replacement) object;
    assertEquals("bad state", 1, class300Replacement.getRel());

    dataAccessSession.close(EnumFilePersistenceCloseAction.SAVE);
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

    initialize(pathName, dataManager, useCache);
    logger.info("nbdr " + filePersistence.getNumberOfDataRecord());
    final InputStream inputStream = new FileInputStream(insertLogFilePath);
    final BufferedReader reader = new BufferedReader(new InputStreamReader(
        inputStream));
    final IDataAccessSession session = filePersistence
        .createDataAccessSession();
    session.open();
    // delete half of item
    ItemList itemList = getItemList(session);
    int count = 0;
    String line = reader.readLine();
    while (line != null) { // NOPMD
      count++;
      final int identifier = Integer.parseInt(line);
      Item removed = itemList.removeItem(identifier);
      if( removed==null){
        logger.error("not found "+identifier);
      }
      if (count % BATCH_SIZE == BATCH_SIZE - 1) {
        session.close(EnumFilePersistenceCloseAction.SAVE);
        session.open();
        itemList = getItemList(session);
      }
      line = reader.readLine();
      if (line != null) {
        line = reader.readLine();
      }
    }
    session.close(EnumFilePersistenceCloseAction.SAVE);
    reader.close();
    logger.info("nbdr " + filePersistence.getNumberOfDataRecord());
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceInvalidClassException,
      FilePersistenceDataCorruptedException,
      FilePersistenceNotSerializableException,
      FilePersistenceTooBigForSerializationException {

    final IDataAccessSession session = filePersistence
        .createDataAccessSession();

    session.open();
    SubstitutionContainer bobContainer = new SubstitutionContainer();
    final SubstitutedBobSerialize1 bob = new SubstitutedBobSerialize1(1);
    bobContainer.setObject(bob);
    session.setObject(KEY, bobContainer);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    bobContainer = (SubstitutionContainer) session.getObject(KEY);
    assertNotNull(BAD_BOB_CONTAINER_OBJECT1, bobContainer.getObject());
    final SubstitutedBobSerialize1 bobRead = (SubstitutedBobSerialize1) bobContainer
        .getObject();
    assertEquals(BAD_BOB_IDENTIFIER, 1, bob.getIdentifier());
    assertSame(READ_OBJECT_MUST_BE_THE_WROTE_OBJECT, bob, bobRead);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    filePersistence.close();
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceInvalidClassException,
      FilePersistenceDataCorruptedException,
      FilePersistenceNotSerializableException, ProxyException,
      FilePersistenceTooBigForSerializationException {
    filePersistence.xmlImport("../joafip/export300", false);
    final IDataAccessSession dataAccessSession = filePersistence
        .createDataAccessSession();
    dataAccessSession.open();
    final PArrayList<String> arrayList = (PArrayList<String>) dataAccessSession
        .getObject("object1");
    ListIterator<String> listIterator = arrayList.listIterator();
    // check list content
    assertTrue("must have first element", listIterator.hasNext());
    assertEquals("bad first element", "z", listIterator.next());
    assertTrue("must have second element", listIterator.hasNext());
    assertEquals("bad second element", "a", listIterator.next());
    assertTrue("must have third element", listIterator.hasNext());
    assertEquals("bad third element", "b", listIterator.next());
    assertFalse("must not have more element", listIterator.hasNext());

    listIterator = (ListIterator<String>) dataAccessSession
        .getObject("object2");
    assertEquals("bad third element", "b", listIterator.next());
    assertFalse("must not have more element", listIterator.hasNext());

    // was net.sf.joafip.export_import.Enum300, no more exist
    Object object = dataAccessSession.getObject("object3");
    assertNull("must be replaced by null", object);

    // was net.sf.joafip.export_import.Class300, no more exist
    object = dataAccessSession.getObject("object4");
    assertNotNull("must be defined", object);
    assertEquals("bad class", Class300Replacement.class,
        filePersistence.classOfObject(object));
    final Class300Replacement class300Replacement = (Class300Replacement) object;
    assertEquals("bad state", 1, class300Replacement.getRel());

    dataAccessSession.close(EnumFilePersistenceCloseAction.SAVE);
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      FilePersistenceClassNotFoundException,
      FilePersistenceInvalidClassException,
      FilePersistenceDataCorruptedException,
      FilePersistenceNotSerializableException,
      FilePersistenceTooBigForSerializationException {
    final IDataAccessSession session = filePersistence
        .createDataAccessSession();
    session.open();
    TreeSupport<String> tree = new TreeSupport<String>(null, true, false);
    session.setObject(TREE, tree);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    tree = (TreeSupport<String>) session.getObject(TREE);
    tree.add(ID_KEY_NAME);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    tree = (TreeSupport<String>) session.getObject(TREE);
    tree.add(TYPE_KEY_NAME);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    tree = (TreeSupport<String>) session.getObject(TREE);
    Iterator<String> iterator = tree.iterator();
    session.setObject(ITERATOR, iterator);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    iterator = (Iterator<String>) session.getObject(ITERATOR);
    assertTrue("must has first element", iterator.hasNext());
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    iterator = (Iterator<String>) session.getObject(ITERATOR);
    String next = iterator.next();
    assertEquals("bad first key", ID_KEY_NAME, next);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    iterator = (Iterator<String>) session.getObject(ITERATOR);
    assertTrue("must has second element", iterator.hasNext());
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    iterator = (Iterator<String>) session.getObject(ITERATOR);
    next = iterator.next();
    assertEquals("bad second key", TYPE_KEY_NAME, next);
    session.close(EnumFilePersistenceCloseAction.SAVE);

    session.open();
    iterator = (Iterator<String>) session.getObject(ITERATOR);
    assertFalse("must not has more element", iterator.hasNext());
    session.close(EnumFilePersistenceCloseAction.SAVE);
  }
View Full Code Here

Examples of net.sf.joafip.service.IDataAccessSession

      default:
        throw new FilePersistenceException("unknow state " + fileState,
            exception);
      }
    }
    final IDataAccessSession session = filePersistence
        .createDataAccessSession();
    session.open();
    ItemTemplateList itemTemplateList;
    itemTemplateList = getItemTemplateList(session);
    if (itemTemplateList == null) {
      itemTemplateList = new ItemTemplateList();
      session.setObject(ITEM_TEMPLATE_LIST, itemTemplateList);
    }
    ItemList itemList;
    itemList = getItemList(session);
    if (itemList == null) {
      itemList = new ItemList();
      session.setObject(ITEM_LIST, itemList);
    }
    session.closeAndWait(EnumFilePersistenceCloseAction.SAVE);
  }
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.