Package org.apache.xindice.core.data

Examples of org.apache.xindice.core.data.Key


    public void testFailReadRecordEmptyKey() throws Exception {
        assertTrue(filer.writeRecord(TEST_KEY, TEST_VALUE));
        assertEquals(1, filer.getRecordCount());

        // Empty key
        Record result = filer.readRecord(new Key(""));
        assertNull(result);
    }
View Full Code Here


    public void testFailReadRecordUnknownKey() throws Exception {
        assertTrue(filer.writeRecord(TEST_KEY, TEST_VALUE));
        assertEquals(1, filer.getRecordCount());

        // Non-existant key
        Record result = filer.readRecord(new Key("non-existant-key"));
        assertNull(result);
    }
View Full Code Here

    public void testDeleteRecordEmptyKey() throws Exception {
        assertTrue(filer.writeRecord(TEST_KEY, TEST_VALUE));
        assertEquals(1, filer.getRecordCount());

        // These should all just fail silently.
        assertFalse(filer.deleteRecord(new Key("")));
        assertEquals(1, filer.getRecordCount());
    }
View Full Code Here

    public void testDeleteRecordWrongKey() throws Exception {
        assertTrue(filer.writeRecord(TEST_KEY, TEST_VALUE));
        assertEquals(1, filer.getRecordCount());

        // These should all just fail silently.
        assertFalse(filer.deleteRecord(new Key("non-existant-key")));
        assertEquals(1, filer.getRecordCount());
    }
View Full Code Here

    public void testGetRecordCount() throws Exception {
        assertEquals(0, filer.getRecordCount());

        assertTrue(filer.writeRecord(TEST_KEY, TEST_VALUE));
        assertTrue(filer.writeRecord(new Key("test1"), TEST_VALUE));
        assertTrue(filer.writeRecord(new Key("test2"), TEST_VALUE));
        assertEquals(3, filer.getRecordCount());

        assertTrue(filer.writeRecord(new Key("test3"), TEST_VALUE));
        assertEquals(4, filer.getRecordCount());

        assertTrue(filer.deleteRecord(new Key("test3")));
        assertEquals(3, filer.getRecordCount());

        assertTrue(filer.deleteRecord(TEST_KEY));
        assertTrue(filer.deleteRecord(new Key("test1")));
        assertTrue(filer.deleteRecord(new Key("test2")));

        assertEquals(0, filer.getRecordCount());
    }
View Full Code Here

        assertEquals(0, filer.getRecordCount());
    }

    public void testGetRecordSet() throws Exception {
        assertTrue(filer.writeRecord(TEST_KEY, TEST_VALUE));
        assertTrue(filer.writeRecord(new Key("test2"), TEST_VALUE_2));
        assertTrue(filer.writeRecord(new Key("test3"), TEST_VALUE_3));

        RecordSet result = filer.getRecordSet();
        assertNotNull(result);

        List results = new Vector();
        while (result.hasMoreRecords()) {
            results.add(result.getNextRecord().getValue());
        }
        assertEquals(3, results.size());
        assertTrue(results.contains(TEST_VALUE));
        assertTrue(results.contains(TEST_VALUE_2));
        assertTrue(results.contains(TEST_VALUE_3));

        assertTrue(filer.deleteRecord(TEST_KEY));
        assertTrue(filer.deleteRecord(new Key("test2")));
        assertTrue(filer.deleteRecord(new Key("test3")));

        result = filer.getRecordSet();
        assertTrue(!result.hasMoreRecords());
    }
View Full Code Here

    }

    public void testInsertManyDocuments() throws Exception {
        int iterations = 1000;
        for (int i = 0; i < iterations; i++) {
            assertTrue(filer.writeRecord(new Key("key" + i), TEST_VALUE));
        }

        assertTrue(filer.getRecordCount() == iterations);

        for (int i = 0; i < iterations; i++) {
            assertTrue(filer.deleteRecord(new Key("key" + i)));
        }

        assertTrue(filer.getRecordCount() == 0);
        RecordSet result = filer.getRecordSet();
        assertTrue(!result.hasMoreRecords());
View Full Code Here

                            go.wait();
                        } catch (InterruptedException e) { /* ignored */ }
                    }

                    for (int ii = 0; ii < ITERATIONS; ii++) {
                        Key key = new Key("T" + threadID + "I" + ii);
                        Value value = new Value("<test thread=\"" + threadID + "\" iteration=\"" + ii + "\"/>");
                        try {
                            filer.writeRecord(key, value);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                    // System.out.println(this.getName() + " done.");
                }
            };
            threads[i].setName("FilerTest" + i);
            threads[i].start();
        }

        // Start all the threads at once
        Thread.sleep(250);
        synchronized (go) {
            go.notifyAll();
        }
        for (int i = 0; i < THREADS; i++) {
            threads[i].join();
        }

        // Check results
        assertEquals(THREADS * ITERATIONS, filer.getRecordCount());
        for (int i = 0; i < THREADS; i++) {
            for (int ii = 0; ii < ITERATIONS; ii++) {
                Key key = new Key("T" + i + "I" + ii);
                Value value = new Value("<test thread=\"" + i + "\" iteration=\"" + ii + "\"/>");
                Record record = filer.readRecord(key);
                assertNotNull("Record with key '" + key + "' was not found",
                              record);
                assertEquals("Expected record with key '" + key + "', found record with key '" + record.getKey() + "'",
View Full Code Here

       Thread[] threads = new Thread[THREADS];
       for (int i = 0; i < THREADS; i++) {
           threads[i] = new Thread() {
               public void run() {
                   for (int ii = 0; ii < ITERATIONS; ii++) {
                       Key key = new Key("key");
                       Value value = new Value("<test document/>");
                       try {
                           filer.writeRecord(key, value);
                       } catch (Exception e) {
                           e.printStackTrace();
                       }
                   }
               }
           };
           threads[i].setName("FilerTest" + i);
       }

       // Start all the threads at once
       for (int i = 0; i < THREADS; i++) {
           threads[i].start();
       }
       Thread.sleep(100);

       for (int i = 0; i < THREADS; i++) {
           threads[i].join();
       }

       filer.flush();

       // Check results
       assertEquals(1, filer.getRecordCount());
       Key key = new Key("key");
       Value value = new Value("<test document/>");
       Record record = filer.readRecord(key);
       assertNotNull("Record with key '" + key + "' was not found", record);
       assertEquals("Expected record with key '" + key + "', found record with key '" + record.getKey() + "'",
                    key, record.getKey());
View Full Code Here

        StringBuffer sb = new StringBuffer(LARGE_KEY_SIZE);
        sb.append("KEY");
        for (int k = 0; k < LARGE_KEY_SIZE - 3; k++) {
            sb.append('0');
        }
        final Key key = new Key(sb.toString());
        final Value value = new Value("<test/>");

        assertTrue(filer.writeRecord(key, value));

        assertEquals(filer.getRecordCount(), 1);
View Full Code Here

TOP

Related Classes of org.apache.xindice.core.data.Key

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.