Package org.apache.jackrabbit.ocm.manager

Examples of org.apache.jackrabbit.ocm.manager.ObjectContentManager


    public void testNullValueAtomicFields()
    {
        try
        {

          ObjectContentManager ocm = getObjectContentManager();
    
            // --------------------------------------------------------------------------------
            // Create and store an object graph in the repository
            // --------------------------------------------------------------------------------
            Atomic a = new Atomic();
            a.setPath("/test");
            a.setIntegerObject(new Integer(100));           
            a.setDate(new Date());
            byte[] content = "Test Byte".getBytes();
            a.setByteArray(content);
            a.setCalendar(Calendar.getInstance());
            a.setDoubleObject(new Double(2.12));
            a.setDoublePrimitive(1.23);
           
            ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream("Test Stream".getBytes());
            a.setInputStream(byteArrayInputStream);
           
            ocm.insert(a);
            ocm.save();
            
            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------
            a = null;
            a = (Atomic) ocm.getObject( "/test");
            assertNotNull("a is null", a);
            assertNull("Boolean object is not null", a.getBooleanObject());
           
            assertFalse("Incorrect boolean primitive", a.isBooleanPrimitive());
            assertNotNull("Integer Object is null", a.getIntegerObject());
View Full Code Here


  }

 
  public void testAuto() {
   
    ObjectContentManager ocm = this.getObjectContentManager();

    //---------------------------------------------------------------------------------------------------------
    // Insert cmsobjects
    //---------------------------------------------------------------------------------------------------------
      Folder  folder = new FolderImpl();
      folder.setPath("/folder2");
      folder.setName("folder2");       
   
      Document document = new DocumentImpl();
      document.setPath("/folder2/document4");
      document.setName("document4");
      document.setContentType("plain/text");
      DocumentStream documentStream = new DocumentStream();
      documentStream.setEncoding("utf-8");
      documentStream.setContent("Test Content 4".getBytes());
      document.setDocumentStream(documentStream);      

      Folder subFolder = new FolderImpl();
      subFolder.setName("subfolder");
      subFolder.setPath("/folder2/subfolder");
                 
      folder.addChild(document);
      folder.addChild(subFolder);
      ocm.insert(folder);                  
    ocm.save();
   
    //--------------------------------------------------------------------------------------------------------- 
    // Retrieve folder2
    //--------------------------------------------------------------------------------------------------------- 
    Folder folder2 = (Folder) ocm.getObject( "/folder2");
    assertNotNull("folder 2 is null", folder2);
    assertEquals("Invalid number of cms object  found in folder2 children", folder2.getChildren().size() ,0); // autoInsert = false
   
    //--------------------------------------------------------------------------------------------------------- 
    // Insert nested objects
    //---------------------------------------------------------------------------------------------------------
    ocm.insert(subFolder);
    ocm.insert(document);
    ocm.save();
   
    //--------------------------------------------------------------------------------------------------------- 
    // Retrieve folder2
    //--------------------------------------------------------------------------------------------------------- 
     folder2 = (Folder) ocm.getObject( "/folder2");
    assertNotNull("folder 2 is null", folder2);
    assertEquals("Invalid number of cms object  found in folder2 children", folder2.getChildren().size() ,0); // autoInsert = false

    //--------------------------------------------------------------------------------------------------------- 
    // Retrieve children attribute
    //---------------------------------------------------------------------------------------------------------     
    ocm.retrieveMappedAttribute(folder2, "children");
    assertNotNull("folder 2 is null", folder2);
    assertEquals("Invalid number of cms object  found in folder2 children", folder2.getChildren().size() ,2);
    assertTrue("Invalid item in the collection", this.contains(folder2.getChildren(), "/folder2/document4", DocumentImpl.class));
    assertTrue("Invalid item in the collection", this.contains(folder2.getChildren(), "/folder2/subfolder", FolderImpl.class));   
   
    //--------------------------------------------------------------------------------------------------------- 
    // Update
    //--------------------------------------------------------------------------------------------------------- 
    folder2.setChildren(null);
    ocm.update(folder2); // autoupdate = false for the children attribute. So no update on the children collection
    ocm.save();

    //--------------------------------------------------------------------------------------------------------- 
    // Retrieve children attribute
    //---------------------------------------------------------------------------------------------------------     
    ocm.retrieveMappedAttribute(folder2, "children");
    assertNotNull("folder 2 is null", folder2);
    assertEquals("Invalid number of cms object  found in folder2 children", folder2.getChildren().size() ,2);
    assertTrue("Invalid item in the collection", this.contains(folder2.getChildren(), "/folder2/document4", DocumentImpl.class));
    assertTrue("Invalid item in the collection", this.contains(folder2.getChildren(), "/folder2/subfolder", FolderImpl.class));   
   
View Full Code Here

                new TestSuite(DigesterBasicVersionningTest.class));
 

  public void testSimpleVersion()
  {
         ObjectContentManager ocm = getObjectContentManager();
             try
             {
              
               Page page = new Page();
               page.setPath("/page");
               page.setTitle("Page Title");              
               page.addParagraph(new Paragraph("para1"));
               page.addParagraph(new Paragraph("para2"));
               ocm.insert(page);
               ocm.save();
              
                
               page.addParagraph(new Paragraph("para3"));
               ocm.checkout("/page");
               ocm.update(page);
               ocm.save();
               ocm.checkin("/page");
              
               page.addParagraph(new Paragraph("para4"));
               ocm.checkout("/page");
               ocm.update(page);
               ocm.save();
               ocm.checkin("/page");              

               VersionIterator versionIterator = ocm.getAllVersions("/page");
               assertNotNull("VersionIterator is null", versionIterator);
               assertTrue("Invalid number of versions found", versionIterator.getSize() == 3);
              
               while (versionIterator.hasNext())
               {
                 Version version = (Version) versionIterator.next();
                 log.info("version found : "+ version.getName() + " - " + version.getPath() + " - " +  version.getCreated().getTime());
                
               }
              
               Version baseVersion = ocm.getBaseVersion("/page");
               System.out.println("Base version : " + baseVersion.getName());

               Version rootVersion = ocm.getRootVersion("/page");
               System.out.println("Root version : " + rootVersion.getName());
               //this.exportDocument("/home/christophe/export.xml", "/jcr:system/jcr:versionStorage", true, false);
                            
                 //Get the latest version
               page = (Page) ocm.getObject( "/page");
               assertNotNull("Last version is nulll", page);
               assertTrue("Invalid number of paragraph found in the last  version", page.getParagraphs().size() == 4);

              
               //Get the object matching to the first version
                 Page  page1 = (Page) ocm.getObject( "/page", "1.0");
               assertNotNull("version 1.0 object is null", page1);
               assertTrue("Invalid number of paragraph found in the root version", page1.getParagraphs().size() == 3);

             }
             catch(Exception e)
View Full Code Here

   
    public void testArrayList()
    {
        try
        {
          ObjectContentManager ocm = getObjectContentManager();
         

            // --------------------------------------------------------------------------------
            // Create and store an object graph in the repository
          // with a null value for the arraylist
            // --------------------------------------------------------------------------------

            Main main = new Main();
            main.setPath("/test");
            main.setText("Main text");
           
            ocm.insert(main);
            ocm.save();
           
            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            main = (Main) ocm.getObject( "/test");
            ArrayList arrayList = main.getList();
            assertNull("main.getList is not null", arrayList );
           
            // --------------------------------------------------------------------------------
            // Update the object
            // --------------------------------------------------------------------------------
           
            ArrayListElement arrayListElement = new ArrayListElement();
            Element e1 = new Element();
            e1.setId("e1");
            e1.setText("Element 1");
            arrayListElement.add(e1);
           
            Element e2 = new Element();
            e2.setId("e2");
            e2.setText("Element 2");
            arrayListElement.add(e2);
           
            main.setList(arrayListElement);
            ocm.update(main);
            ocm.save();

            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            main = (Main) ocm.getObject( "/test");
            arrayList = main.getList();
            assertNotNull("main.getList is null", arrayList );
            Element[] elements = (Element[]) arrayList.toArray(new Element[arrayList.size()]);
            assertTrue("Incorrect para element", elements[0].getText().equals("Element 1"));
           
            // --------------------------------------------------------------------------------
            // Update the object
            // --------------------------------------------------------------------------------
            arrayListElement = new ArrayListElement();
            e1 = new Element();
            e1.setId("e1");
            e1.setText("Element 1");
            arrayListElement.add(e1);
           
            e2 = new Element();
            e2.setId("e3");
            e2.setText("Element 3");
            arrayListElement.add(e2);
           
            Element e3 = new Element();
            e3.setId("e4");
            e3.setText("Element 4");
            arrayListElement.add(e3);
           
            main.setList(arrayListElement);           
           
            ocm.update(main);
            ocm.save();

            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            main = (Main) ocm.getObject( "/test");
            arrayList = main.getList();
            assertNotNull("main.getList() is null", arrayList );
            elements = (Element[]) arrayList.toArray(new Element[arrayList.size()]);
            assertTrue("Incorrect element", elements[2].getText().equals("Element 4"));
           
View Full Code Here

  }

 
  public void testVersionLabels()
  {
         ObjectContentManager ocm = getObjectContentManager();
             try
             {
              
               Page page = new Page();
               page.setPath("/page");
               page.setTitle("Page Title");              
               page.addParagraph(new Paragraph("para1"));
               page.addParagraph(new Paragraph("para2"));
               ocm.insert(page);
               ocm.save();
              
                
               page.addParagraph(new Paragraph("para3"));
               ocm.checkout("/page");
               ocm.update(page);
               ocm.save();
               ocm.checkin("/page", new String[] {"A", "B"});
              
               page.addParagraph(new Paragraph("para4"));
               ocm.checkout("/page");
               ocm.update(page);
               ocm.save();
               ocm.checkin("/page", new String[] {"C", "D"});           

               String[] allLabels = ocm.getAllVersionLabels("/page");
               assertTrue("Incorrect number of labels", allLabels.length == 4);

               String[] versionLabels = ocm.getVersionLabels("/page", "1.1");
               assertTrue("Incorrect number of labels", versionLabels.length == 2);
               assertTrue("Incorrect label", versionLabels[0].equals("C") || versionLabels[0].equals("D"));
               assertTrue("Incorrect label", versionLabels[1].equals("C") || versionLabels[0].equals("D"));
             
View Full Code Here

   
    public void testBasicLock()
    {
        try
        {
          ObjectContentManager ocm = getObjectContentManager();


            // --------------------------------------------------------------------------------
            // Create and store an object graph in the repository
            // --------------------------------------------------------------------------------
            A a = new A();
            a.setPath("/test");
            a.setA1("a1");
            a.setA2("a2");
            B b = new B();
            b.setB1("b1");
            b.setB2("b2");
            a.setB(b);
           
            C c1 = new C();
            c1.setId("first");
            c1.setName("First Element");
            C c2 = new C();
            c2.setId("second");
            c2.setName("Second Element");
           
            C c3 = new C();
            c3.setId("third");
            c3.setName("Third Element");
           
           
            Collection collection = new ArrayList();
            collection.add(c1);
            collection.add(c2);
            collection.add(c3);
           
            a.setCollection(collection);
           
            ocm.insert(a);
            ocm.save();
           

            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            a = (A) ocm.getObject( "/test");
            assertNotNull("a is null", a);
           
            // --------------------------------------------------------------------------------
            // Check if the object is locked
            // --------------------------------------------------------------------------------
            assertFalse("the object is locked", ocm.isLocked("/test"));
           
            // --------------------------------------------------------------------------------
            // Lock the object
            // --------------------------------------------------------------------------------          
           
            Lock lock = ocm.lock("/test", true, false);
            assertTrue("the Lock owner is not correct", lock.getLockOwner().equals("superuser"));
           
            // --------------------------------------------------------------------------------
            // Check if the object is locked
            // --------------------------------------------------------------------------------
            assertTrue("the object is not locked", ocm.isLocked("/test"));
           
            // --------------------------------------------------------------------------------
            // Unlock the object
            // --------------------------------------------------------------------------------          
            ocm.unlock("/test", lock.getLockToken());

            // --------------------------------------------------------------------------------
            // Check if the object is locked
            // --------------------------------------------------------------------------------
            assertFalse("the object is locked", ocm.isLocked("/test"));

            // --------------------------------------------------------------------------------
            // Lock & update
            // --------------------------------------------------------------------------------
            lock = ocm.lock("/test", true, false);
            a = (A) ocm.getObject("/test");
            a.setA1("new a1 Value");
            ocm.update(a);
            ocm.save();
            ocm.unlock("/test", lock.getLockToken());
           
           
            // --------------------------------------------------------------------------------
            // Remove the object
            // --------------------------------------------------------------------------------          
            ocm.remove(a);
            ocm.save();
           
        }
        catch (Exception e)
        {
            e.printStackTrace();
View Full Code Here

     */
    public void testUuid()
    {
        try
        {
          ObjectContentManager ocm = getObjectContentManager();


            // --------------------------------------------------------------------------------
            // Create and store an object A in the repository
            // --------------------------------------------------------------------------------
            A a = new A();
            a.setPath("/test");
            a.setStringData("testdata");
            ocm.insert(a);
            ocm.save();          

            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            a = (A) ocm.getObject( "/test");
            assertNotNull("a is null", a);
            String uuidA = a.getUuid();
            assertNotNull("uuid is null", uuidA);
            System.out.println("UUID : " + uuidA);
           
            // --------------------------------------------------------------------------------
            // Update the object
            // --------------------------------------------------------------------------------
            a.setStringData("testdata2");
            ocm.update(a);
            ocm.save();

            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            a = (A) ocm.getObject("/test");
            assertNotNull("a is null", a);
            assertTrue("The uuid has been modified", uuidA.equals(a.getUuid()));
           
            // --------------------------------------------------------------------------------
            // Get the object with the uuid
            // --------------------------------------------------------------------------------          
            a = (A) ocm.getObjectByUuid(uuidA);
            assertNotNull("a is null", a);
            assertTrue("Invalid object found with the uuid ", "testdata2".equals(a.getStringData()));
           
            // --------------------------------------------------------------------------------
            // Get the object with an invalid uuid
            // --------------------------------------------------------------------------------          
            try
            {
                a = (A) ocm.getObjectByUuid("1234");
                fail("Exception not throw");
            }
            catch(Exception e)
            {
              //Throws an exception due to an invalid uuid
View Full Code Here

    try
    {
     
      this.importData(date);
      ObjectContentManager ocm = this.getObjectContentManager();
     
      // Test Boolean value
      QueryManager queryManager = this.getQueryManager();
      Filter filter = queryManager.createFilter(Atomic.class);
      filter.addEqualTo("booleanObject", new Boolean(true));
      Query query = queryManager.createQuery(filter);
     
      long start = System.currentTimeMillis();
      Collection result = ocm.getObjects(query);
      System.out.println("getObjects  : " + (System.currentTimeMillis() - start));
     
      assertTrue("Invalid number of objects - should be = 50", result.size() == 50);
     
      filter = queryManager.createFilter(Atomic.class);
      filter.addEqualTo("booleanPrimitive", new Boolean(false));
      query = queryManager.createQuery(filter);

      start = System.currentTimeMillis();
      result = ocm.getObjects(query);
      System.out.println("getObjects 2 : " + (System.currentTimeMillis() - start));
      assertTrue("Invalid number of objects - should be = 0", result.size() == 0);
     
     
      // Test int value
      filter = queryManager.createFilter(Atomic.class);
      filter.addBetween("integerObject", new Integer(0), new Integer(500));
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 5", result.size() == 5);
     
      filter = queryManager.createFilter(Atomic.class);
      filter.addLessOrEqualThan("intPrimitive", new Integer(236));
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 36", result.size() == 36);

     
      //Test Date & Calendar
      filter = queryManager.createFilter(Atomic.class);
      Calendar calendar = Calendar.getInstance();
      calendar.set(2012, 12, 01);
      filter.addLessThan("calendar", calendar);
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 100 ", result.size() == 100);

      filter = queryManager.createFilter(Atomic.class);
      calendar = Calendar.getInstance();
      calendar.set(1975, 12, 01);
      filter.addLessThan("calendar", calendar);
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 0 ", result.size() == 0);
     
      filter = queryManager.createFilter(Atomic.class);     
      filter.addEqualTo("date", date);
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 100 ", result.size() == 100);

      filter = queryManager.createFilter(Atomic.class);     
      filter.addBetween("date", date, new Date());
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 100 ", result.size() == 100);

      filter = queryManager.createFilter(Atomic.class);     
      filter.addGreaterThan("date", date);
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 0 ", result.size() == 0);

      // Test contains method
      filter = queryManager.createFilter(Atomic.class);     
      filter.addContains(".", "JCR");
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 50 ", result.size() == 50);
     
      filter = queryManager.createFilter(Atomic.class);     
      filter.addContains("string", "JCR");
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 50 ", result.size() == 50);
     
      filter = queryManager.createFilter(Atomic.class);     
      filter.addContains("string", "ocm");
      query = queryManager.createQuery(filter);
     
      result = ocm.getObjects(query);     
      assertTrue("Invalid number of objects - should be = 0 ", result.size() == 0);


     
    }
View Full Code Here

  public void testRequiredProperty()
  {

    try
    {
      ObjectContentManager ocm = this.getObjectContentManager();
      //---------------------------------------------------------------------------------------------------------
      // Insert without the mandatory field
      //---------------------------------------------------------------------------------------------------------     
     
            PropertyTest propertyTest = new PropertyTest();
            propertyTest.setPath("/test");
            propertyTest.setRequiredProp("requiredPropValue");
            propertyTest.setRequiredWithConstraintsProp("abc");
           
            try
            {
                 ocm.insert(propertyTest);
                 fail("Incorrect insert operation - the mandatory fields have no value");
            }
            catch(Exception e)
            {
               // Normal behaviour  
              ocm.refresh(false);
            }
           
      //---------------------------------------------------------------------------------------------------------
      // Insert with the mandatory fields
      //---------------------------------------------------------------------------------------------------------     
            propertyTest.setMandatoryProp("mandatoryValue");
            propertyTest.setMandatoryWithConstaintsProp("xx");
            ocm.insert(propertyTest);
            ocm.save();
           
      //---------------------------------------------------------------------------------------------------------
      // Retrieve
      //---------------------------------------------------------------------------------------------------------     
            propertyTest = (PropertyTest) ocm.getObject("/test");
            assertTrue("Invalid required property", propertyTest.getRequiredProp().equals("requiredPropValue"));
            assertTrue("Invalid required property with constraints", propertyTest.getRequiredWithConstraintsProp().equals("abc"));           
            assertTrue("Invalid autocreated property", propertyTest.getAutoCreatedProp().equals("aaa"));
            assertTrue("Invalid autocreated property", propertyTest.getAutoCreatedWithConstraintsProp().equals("ccc"));
            assertTrue("Invalid protected property", propertyTest.getProtectedWithDefaultValueProp().equals("protectedValue"));
           
            //---------------------------------------------------------------------------------------------------------
      // update the property requiredWithConstraintsProp with bad value
      //---------------------------------------------------------------------------------------------------------     
            propertyTest = (PropertyTest) ocm.getObject("/test");
            propertyTest.setRequiredWithConstraintsProp("invalid value");
            try
            {
              ocm.update(propertyTest);
              ocm.save();
              fail("Invalid value was accepted for requiredWithConstraintsProp");
            }
            catch(Exception e)
            {                 
               // Do nothing - normal behaviour, the value                
            }
           
            //---------------------------------------------------------------------------------------------------------
      // update the property AutoCreatedWithConstraintsProp with bad value
      //---------------------------------------------------------------------------------------------------------     
            propertyTest = (PropertyTest) ocm.getObject("/test");
            propertyTest.setAutoCreatedWithConstraintsProp("invalid value");
            try
            {
              ocm.update(propertyTest);
              ocm.save();
              fail("Invalid value was accepted for autoCreatedWithConstraintsProp ");
            }
            catch(Exception e)
            {              
               // Do nothing - normal behaviour, the value is not valid
                
            }
           
            //---------------------------------------------------------------------------------------------------------
      // update the property mandatoryWithConstaintsProp with bad value
      //---------------------------------------------------------------------------------------------------------     
            propertyTest = (PropertyTest) ocm.getObject("/test");
            propertyTest.setMandatoryWithConstaintsProp("yy");
            try
            {
              ocm.update(propertyTest);
              ocm.save();
              fail("Invalid value was accepted for mandatoryWithConstaintsProp");
            }
            catch(Exception e)
            {                 
                e.printStackTrace();
View Full Code Here

     */
    public void testFieldReference()
    {
        try
        {
          ObjectContentManager ocm = getObjectContentManager();

            // --------------------------------------------------------------------------------
            // Create and store an object A in the repository
            // --------------------------------------------------------------------------------
            A a = new A();
            a.setPath("/test");
            a.setStringData("testdata");
            ocm.insert(a);
            ocm.save();          

            // --------------------------------------------------------------------------------
            // Get the object
            // --------------------------------------------------------------------------------          
            a = (A) ocm.getObject( "/test");
            assertNotNull("a is null", a);
            String uuidA = a.getUuid();
            assertNotNull("uuid is null", uuidA);
            System.out.println("UUID : " + uuidA);
                       
            // --------------------------------------------------------------------------------
            // Create and store an object B in the repository which has a reference to A
            // --------------------------------------------------------------------------------
            B b = new B();
            b.setReference2A(uuidA);
            b.setPath("/testB");
            ocm.insert(b);
            ocm.save();
           
            // --------------------------------------------------------------------------------
            // Retrieve the object B with an invalid reference
            // --------------------------------------------------------------------------------           
            b = (B) ocm.getObject("/testB");
            assertNotNull("b is null", b);
            assertTrue("Invalid uuid property", b.getReference2A().equals(uuidA));
           
            // --------------------------------------------------------------------------------
            // Update the object B with an invalid reference
            // --------------------------------------------------------------------------------
            b.setReference2A("1245");
            try
            {
              ocm.update(b);             
              fail("Exception not throw");
            }
            catch(Exception e)
            {
              //Throws an exception due to an invalid uuid
View Full Code Here

TOP

Related Classes of org.apache.jackrabbit.ocm.manager.ObjectContentManager

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.